什么是先后端分离与先后端不分离

  我起初认为先后端分离是,在软件开发过程当中先后端分工就叫作先后端分离,实际上是前端全部用到的数据都是后端经过异步接口的方式提供的,前端只管页面的展现及效果。前端

 

  前端和后端不分离的时候,前端的页面也是由后端控制渲染的,二者的耦合度很是高。在业务逻辑复杂的系统里,咱们最怕维护先后端混杂在一块儿的代码,由于没有约束,M-V-C每一层均可能出现别的层的代码,日积月累,彻底没有维护性可言。这个时候出现了先后端分离这种模式,虽然先后端分离没办法彻底解决这种问题,可是能够大大缓解。json

 

  那该怎么作到先后端分离呢?后端

 

  前端:负责ViewController层。前后端分离

  后端:负责Model层,业务处理/数据等。异步

 

 

 

  试想一下,若是前端掌握了Controller,咱们能够作url design,咱们能够根据场景决定在服务端同步渲染,仍是根据view层数据输出json数据,咱们还能够根据表现层需求很容易的作Bigpipe,Comet,Socket等等,彻底是需求决定使用方式。url

 

  先后端分离的好处有哪些?spa

 

  首先,前端代码中再也不须要嵌入后端的代码,下降了先后端的耦合性,也使前端代码的可读性大大提升了。blog

  其次,先后端分离使得双方的任务更加的明确,而且开发时能够先后端并行开发,使得开发效率更高,也更灵活。接口

  最后,由于双方的分工明确,代码可读性提升,也下降了后期的维护成本ip

  

  小结:

  我以为先后端分离的好处不少,可是也不必定适合所有的状况,具体前端和后端是否分离仍是要视状况而定。

相关文章
相关标签/搜索