前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >老焦专栏 | 为什么我们要成为全栈工程师?

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

作者头像
yuanyi928
发布2019-06-17 15:33:59
8010
发布2019-06-17 15:33:59
举报
文章被收录于专栏:EAWorldEAWorld

转载本文需注明出处:微信公众号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. 成为前端架构师,跟踪前端技术发展,制定前端规范,研发/维护前端框架,搭建统一的前端开发环境,解决各项目的关键问题。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 EAWorld 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云小微
腾讯云小微,是一套腾讯云的智能服务系统,也是一个智能服务开放平台,接入小微的硬件可以快速具备听觉和视觉感知能力,帮助智能硬件厂商实现语音人机互动和音视频服务能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档