前后端分离思考

随着前后端分离的开发模式兴起,越来越多的技术团队开始尝试这种开发模式。那么前后端分离的优缺点分别是什么呢。

前后端分离目的与意义

传统的开发模式中,前端代码和后端代码放在一起,路由由后端来控制,后端占据了开发的主导地位。但是这样的开发模式容易引发的问题前后端耦合度过高,调试麻烦。而前后端分离之后,可以简化开发的流程,将前端与后端成员分开来。原本的开发流程需要前后端一起协作完成,出现问题也可能出现互相甩锅的过程。但是前后端分离之后只需要订好接口,前端与后端的开发者就可以分别进行开发了。同时前后端代码耦合在一起会使后端变得非常笨重与僵硬,而在web2.0时代,最大的思想革命就是把网页当中独立的应用程序,后端只需要提供接口,后端作为REST API。无论是android,ios,或者是浏览器,都可以作为Application直接调用接口。而前后端分离就成为了实现这一理念的必然趋势。前后端分离之后,服务器端仅仅作为接口的提供者,而数据封装都可以放在node层,减轻了服务器端的压力。同时这样的架构模式可以让前后端的开发职责变得更加明确,后端提供简单数据接口,前端想要任何数据都可以在node层分别请求进行封装。

为什么选用node作为中间层

前面也介绍了前后端分离之后,中间层是由前端开发者来进行维护和开发的。而nodejs作为js语言的一种,天生对前端程序员具有友好型。

nodejs优点

  • 简单易学,对前端开发者友好
  • 采用事件驱动、异步编程
  • Node.js非阻塞模式的IO处理给Node.js带来在相对低系统资源耗用下的高性能与出众的负载能力,非常适合用作依赖其它IO资源的中间层服务
  • 轻量高效

采用nodejs作为中间层后,项目的开发模式变为
MacDown Screenshot

图引用自来源

前后端分离带来的问题

前后端分离的一大问题就是seo。前后端分离导致页面都是由ajax请求渲染形成,而搜索引擎对ajax的不支持。我们大都采用服务器端渲染首页来解决这一问题。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章