前后端分离已经成为一种主流模式。有一些小团队可能受限于个人能力或经营压力,还有一些困惑。
典型观点
前人对前后端分离好处有一些典型观点。
1)将静态内容请求分离出来,减轻了动态服务器的压力。
2)项目解耦,前台、后台各自从事各自工作。
a、后台专心从事后台框架和业务的开发;
b、前台代码更加规范化,模块化。
技术价值
前后端分离在技术层面的好处前人总结已经很多,大致分为两点:
1、提升运行效率。前后端分离带来的是静态页面、动态数据严格分离,从而可以分别优化部署,提升大量用户访问时的体验。例如增加一个客户端的支持,增加后台接口服务器数量或优化后台性能即可。同时,由于大家分类之后,各干各的,不再互相干涉,也就有了更多时间和精力改善架构,提升各自环节的稳定性和性能。
2、提升开发效率。前后端分离保证前端人员只负责开发前端代码,后台人员只负责开发后台代码。双方不再互相耦合,也就不需要互相频繁等待,提升代码开发效率。同时,由于术业有专攻,基于分工带来效率的管理原则,也可以提升团队效率。
业务价值
那么前后端分离对业务价值如何?
1、为优化管理提供基础。无论是运行效率优化还是开发效率提升,前后端分离带来的是岗位的明确和权责明确。组织分工是管理优化的基础。由于前后端人员的业务导向是不同的,前段侧重体验和性能,后端追求性能和稳定,二者绩效更容易划分和明确。
2、提升客户响应效率。客户的大量需求往往都是体验层面的。前后端分离之前,每次前端修改都需要后端工程师配合调整。由于后端稳定性要求,耗时往往较长。客户难以及时获得反馈。前后端分类之后,前端工程师可以自行搞定体验需求,客户响应效率大大提高。
3、多端支持成本降低。以前每多支持一个终端,都需要前后端一起上,还会带来一堆连锁问题。现在,由于一开始就前后端分离,后端提供完善接口。前端需要增加终端支持时,自行开展工作即可,只需要后端提供一些补充性支持。
这些改变都大大提升了业务效率和灵活性。
小团队怎么办
要注意到,前后端分离带来的是分工,这有利于专业性提升,对于小团队也可能带来人员成本提升。
同时,前后端分离,长期目标还是通过完善系统架构,提升系统能力。如果仅仅是一个小系统,不需要并发,不需要缓存……那么前后端一体化似乎更灵活。
项目如果只有一个人,前后端都是自己做,说明项目对架构要求不高。那就别考虑前后端分离了,以自己擅长为最佳,快速搞定项目优先。
即便是只有2~3个人的小团队,也建议前后端分离。
1、前后端分离源自大公司,从团队技术发展和个人成长角度看,尝试更优秀的架构肯定是好事。
2、技术相对成熟。前后端分离已经被大牛们玩了很多年,技术相对成熟,框架相对完善。对于小团队而言,此时引入前后端分离,技术性价比最高,已经进入最佳时机。
3、管理优化需要。小团队人虽然少,也往往支撑多个项目,也需要更加灵活地人力安排。前后端分离有助于提升团队整体开发效率。
当然,一切技术步道的成功,都需要至少一个不错的架构师。小团队尝试前后端分离等技术失败或效果不好,往往不是因为东西不好,而是能力不做。
有志于成为架构师的同学,即使在小团队中也应当努力尝试。即使一时尝试不爽,也没关系。在保证业务有效进度可控的前提下,努力尝试,终会成功。
参考
https://blog.csdn.net/weixin_37704921/article/details/84982443
https://www.jianshu.com/p/c86cee16b418
本文暂时没有评论,来添加一个吧(●'◡'●)