最近一阶段,一直都在工作上,没有太多的时间去开发Lunyu。
但是这次,我想分享一些关于软件架构方面的问题,对,就是百听不厌的前后端分离。
前后端分离的目的是什么?
分离,其实就是分散注意力,让适合的人做适合的事。前端只关注前端开发效率,页面效果,性能;后端只关注自己的健壮性,性能,
分离之后的前后端,首先受益的一点就是自动化测试的简便,端分开了,很多揉杂的问题也就避免了,即便出了bug,也能被控制在一端,不会像病毒一样,让开发者在前后端难以自顾。
其次,前后端分离对于软件迭代也大有益处。前后端分离,能带来的不只是降低耦合度,对,我说的就是那些个七七八八的服务器端模版框架。不使用这些之后,如果前端需要重构,只要保证数据的流通性一致就可以,而不会造成重构灾难。
说到分离,怎么分?其实,最核心的就是定义前后端沟通的纽带--接口规范,这不只是开发时的依据,更是将来在自动化测试时的标准。只有相互遵守,才会相互便利。目前比较常用的就是遵守restful的接口了。
前后端分离带来的难题,主要就是需要更多的开发人员的维护,但也正是这样,才能让合适的人做更合适的事,提高团队效率。
无论何种开发语言面,目前大部分的框架,都是带着服务器端模版框架的,对于前后端分离来说,基本上是毫无用处的。作为一个合格的后端网络库,能够承载大规模网络访问就很不错了,其他的就基本是画蛇添足了。
经过这一段时间的体验,我会去尝试在lunyu上是实践前后端分离,将来也会和大家分享开发历程。
网友评论