java程序员需要会前端吗_一个后端程序员,需要掌握前端技术吗()

一个后端程序员,需要掌握前端技术吗?
JSP时代
8年前,刚刚进入编程这个行业,当时的Web开发使用古老的SSH框架+JSP。那个时候,几乎所有的Java程序员都要懂得如何写JavaScript、如何解决页面布局问题。
所以在当时,从事Web开发不会明明白白地的分成前端程序员、后端程序员,几乎每一个人都既要懂后端,又要懂前端。
JSP虽然功能很强大,性能也不错,但是会导致前端页面代码过于凌乱。想想看,一个页面又包含JSTL标签,又包含java代码,又包含原生js代码,这还能不乱吗?
模板引擎时代
后来,有两个优秀的模板引擎诞生了,一个叫做Velocity,一个叫做FreeMarker。小灰在京东工作的时候,主要是用的就是Velocity引擎。
这两种引擎把静态页面有效地剥离出来,使得前端程序员可以完全专注于静态页面的开发,后端程序员把页面动态化。
这个时候,虽然有了后端与前端的分工,但是后端程序员仍然需要掌握基本的前端技术,才能去有效地实现动态页面。更何况,一些业务的后台管理页面,完全是后端程序员独立编写的。
前后端分离时代
现如今,前端新技术琳琅满目,React、Vue、Angular...... 这还只是前端技术的冰山一角。
这个时代最大的特点是什么呢?前后端彻底的分离。后端小伙伴只需要提供一系列Restful接口,前端小伙伴负责调用这些接口,并实现页面的展示和交互。
有后端小伙伴说了:现在既然前后端分离了,前端技术和我没关系了吧?并不是。
当你和前端进行联调,或是线上遇到问题的时候,懂一些前端可以帮助你们更快定位到问题,减少沟通成本。
当你成为管理层的时候,懂得前端技术才能更好地管理各个细分领域的技术人。
当你成为架构师的时候,更需要提升自身技术广度,而不仅仅是深度。
我们如何选择?
可是,人的精力是有限的,前端流行的技术和框架有那么老多,小伙伴们该怎么选择性的学习呢?
有一个选择方法,就是优先抓住“不变”的东西。
什么是不变的东西呢?
【java程序员需要会前端吗_一个后端程序员,需要掌握前端技术吗()】对于后端领域来说,算法、数据库原理、面向对象思想,这些东西即使再过10年20年都不见得过时。
对于前端领域来说,JavaScript、CSS、HTML、浏览器原理,这些技术也都有着长久的生命力。

    推荐阅读