老焦专栏 | 为什么我们要成为全栈工程师?

640?wx_fmt=jpeg

转载本文需注明出处:微信公众号EAWorld,违者必究。


♬ 点上方绿标可收听文章音频


最近我身边的几个技术专家都在学习前端技术(VUE)的开发,为什么他们要学习前端技术呢?因为随着软件技术的发展,全栈工程师已然成为未来发展趋势,对大部分技术人而言,需要既懂后端技术,又能进行前端开发,成为全栈工程师。


什么是前后端分离的研发模式?


与“全栈工程师”相对的,是“前后端分离”的研发模式。前后端分离模式有两种含义:


  1. 前后端分离的部署模式,即前端服务器使用nginx等WEB服务器,部署css、js、图片等等一系列静态资源,负责控制页面引用、跳转、路由,前端页面异步调用后端的接口,后端/应用服务器作为一个数据提供者,加快整体响应速度。

  2. 前后端分离的软件研发模式,由于前后端使用的技术越来越不一致,前端又包括PC和移动前端,应用对人机交互的要求比较高,很多公司尤其是互联网公司,经常分为专门的前端工程师和后端工程师,后端工程师负责业务逻辑的实现、数据的准备,前端工程师交互设计、数据裁减、界面实现。


前后端分离的部署方式,提高了系统的响应能力,是未来主要的企业应用架构模式,我们也需要采用。这里的前后端分离是指第二种,即前后端分离的研发模式。


前后端分离研发模式的利与弊


事物总是一分为二的,有一利必有一害:前后端分离的研发模式,前端的重点放在页面表现、速度流畅、兼容性、用户体验,后端的重点放在三高(高并发,高可用,高性能)、安全、存储、业务方面,术业有专攻(目前很多互联网公司采用这种模式,公司 DevOps 产品研发也采用这种方式)。但是这种做法也有明显的缺点,就是沟通、集成成本高,前后端接口经常变化、前端/后端互相不理解、联调复杂,对于团队协作的很高。


既然有利有弊,那解决问题的方式就是分析主要矛盾、次要矛盾。某些技术团队及互联网公司之所以采用前后端分离的模式,是因为:


  1. 业务方向比较稳定,业务方向也不会有大的调整,可以不断优化,逐步形成好的设计,保持接口的稳定,避免反复调整;

  2. 能够形成稳定的闭环软件研发过程,例如从需求的提出到测试上线,虽然需求变化很快,但都是团队内部/公司内部的事情,沟通相对方便;

  3. 技术团队比较稳定,人员一起磨合时间比较长,沟通相对顺畅。


分析问题后可以看出,如果技术团队的主要矛盾是减少沟通成本,快速推出业务,而不是精益求精的技术运营,可采用全栈方式。我不反对有条件的项目尝试前后端分离的研发模式,但是要看看自身是不是适合,设计能力比较强、业务比较稳定的团队可以尝试。


克服畏难心理,学习新技术,成为全栈工程师


面对不断变化的市场形势,有时就需要我们成为全栈工程师。目前我看到的情况是,更多的工程师存在畏难的心理。其实所谓全栈,也就是前端、后端、数据库技术,前端技术要学习目前的前端开发工具(NPM、WebPack、Babel等插件)以及 VUE 框架即可,后端是 Java 技术,需要掌握 Spring Boot 的配置、POM/Maven 等开发工具,数据库要写好 SQL。有了这些基础,就可以成为一个全栈工程师,不需要求全责备。


都是全栈工程师,也需要专业的前端工程师保驾护航


有了全栈工程师,还需要专业的前端工程师保驾护航,专业的前端工程师有两个方向:


  1. 在项目中承担交互设计和美工的作用,根据项目设计前端的规范,解决各项目中的前端问题;

  2. 成为前端架构师,跟踪前端技术发展,制定前端规范,研发/维护前端框架,搭建统一的前端开发环境,解决各项目的关键问题。


640?wx_fmt=gif

向未来的全栈工程师致敬!


往期专栏文章


分布式架构中数据一致性常见的几个问题

老焦专栏 | 如何做一个有说服力的方案?

老焦专栏 | 用 RACI 模式梳理业务流程,提高业务发布的效率


640?wx_fmt=png关于作者焦烈焱,普元信息CTO,致力于技术创新和金融创新解决方案研究。专注于企业技术架构领域,对分布式环境的企业计算、 企业信息架构的规划与实践有着丰厚经验,带领普元技术团队相继在云计算、大数据及移动开发领域取得多项突破,并主持中国工商银行、中国建设银行等多家大型企业技术平台的规划与研发。


640?wx_fmt=jpeg关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享。长按二维码关注!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值