前后端分离

前后端分离并不是一个技术问题,而是一个工程考量的问题

问题出现

在远古的JSP时代,一个团队大部分都是后端工程师,前端工程师只是零零散散几个人,甚至有的团队前端是由后端人员兼任的。随着很多服务web化以后,需要前端展示的东西越来越复杂,像JSP这种套模板的技术没有办法高效的开发,其实最主要的原因是当时前端没有工程化、模块化、可复用化的思维来开发。

解决方法

解耦,在软件领域的任何复杂问题面前,遵守高内聚、低耦合这种原则可以解决大部分问题。所有将前端开发分离出来,给前端开发工程师一个单独的岗位和责任领域。改变前端这种东拼西凑,面向复制粘贴编程的开发

如何实施

设计、开发、测试、部署。

  1. 设计

    接口设计,需要制定好接口请求方式、数据类型、数据格式等等。评审也很关键,避免开发中前后端为了某些接口扯来扯去。

  2. 开发

    前后端根据事先约定好的接口独立开发,前端可以从mack拿模拟数据,不用依赖于实时的后端接口,后端也只需要把接口写好,提供数据就可以。而且后端的接口可以提供给很多类型的前端使用,比如web网页、手机app、微信小程序等等。

  3. 测试

    前后端独立可测试,前端主要是页面、跳转、展示、输入、传参、响应数据等的展示的测试。后端主要保证接口的提供、数据格式、校验、异常情况、权限问题等。

  4. 部署

    前后端独立可部署,双方可以按照各自的版本规划来发版本。

缺点

彻底的前后端分离是需要成本的,不管是人力成本、开发成本、工具成本、部署成本都是不小的。并非所有项目都适合前后端分离,主要看性价比。

参考:包工头都能听明白的前后端分离!

posted @ 2020-11-01 14:23  WindSound  阅读(66)  评论(0)    收藏  举报