让每一个人品质就业不再难
天眼ERP 全国咨询电话 13362162602

动态中心

DYNAMIC CENTERING

搞编程选什么方向好?前端还是后端?阿里程序员和你聊聊就业心得

发布时间: 2022-03-25 15:44:21

程序员

甲骨文天眼

经常大学毕业生问我,马上就要去就业了,应该选择什么前端还是后端啊,或者是一些学生小伙伴们在校期间想学习技术,也是拿不准方向。今天就这这里和大家仔细的聊聊前端和后端的优劣。

那我们现在就先来分析一下前后端在所用的技术栈上的区别。前端所用的技术栈,其实一路以来,发展历经了几大阶段。第一大阶段其实就是所谓的“基础静态页面阶段”,用的就是Html JavaScrip等三大原生技术。而第二个阶段就是所谓的叫“前端技术库的出现”,这也就是前端的第一个春天,其中最有名的当属jQuery和Ajax,这就是阶段二。封装库的出现或者是说前端库的出现主要是解决了浏览器的原生AIP不好用和兼容性的问题,而Query等库其实也就是对原生API做了第二个封装,使其更加便于开发和掌握,然后前端发展到如今这个时代,也就是所谓的“前端革命”来到了“组件化开发”的时代,这主要是因为node的出现让前端领域发生了巨大的改变,前端开发者可以借助node来开发各种工具了,这就好像那些原始人突然会使用制造工具了一样,前端脱离了那种刀耕火种的年代,因为很多自动化工具,比如像什么webpack还有什么各种各样的包管理器,还有像什么预编译工具,这些东西的出现在一定程度上催生了一大批的前端框架诞生,最典型的现在前端领域三足鼎立的“组件开发三件套”Angular React和Ven(三大框架),这都是因为node的出现,才有了一些组件化开发框架的到来。这种组件化开发的模式将白了其实就是利用GPS的智能可编程性来管理Html和Css甚至包括JS本身,当然最近几年来随着移动端的兴起像Html5,也就是H5也变得非常的火热。总之我们会发现前端开发其实越来越工具化,工程化,越来越有章可循,这些就是前端开发的特点。但是像Vue这种组件化开发方式还是需要你掌握js,css,html等这一些原生技术,只不过游戏规则方式了变化,你的遵循人家的那个组件框架制定出来的这个游戏规则来进行约束性的前端开发,因为这样的话,你的代码的管理性,可复用性,工程性就越来越好,越来越合理,前端技术栈也就是这样的。然后是后端技术栈,以java后端开发为例,主要就是java语言,spring应用框架,sql关系型数据库,nosql非关系型数据库,中间链技术,分布式和现在比较流行的微服务等等。后面我会专门的出一篇文字来说这个。

现在我就来说说前端和后端哪一个比较难呢?这个也要结合前后端的特点来讲,我是觉得前端主要是知识很多,很杂,很琐碎,再就是前端的门槛也比较低一些,容易自学,因为它毕竟只是单个客户端的事情。它并不想后端一样需要一个很复杂的编程环境,就拿后端假如你想做分布式和微服务,你需要提前安装各种各样的编译环境和软件,要装各种各样的组件,搭建各种各样的环境。但是前端则不需要,上手的门槛还是要低一些,然后就是前端还有一个特点就是出效果快一些,激励周期会短一些(成就感来的更快),毕竟所见即所得,然后前端发展很快,但是轨道基本上还是一致的,那些三大阶段都脱离不了js,css,html这些基本的技术,所以说我是觉得上手的门槛要低一些。然后后端的开发主要是注重功能性和稳定性,尤其是稳定性要求比较高,所以基于这一点就可以把技术研究的很深,然后后端开发,现在的分钟和门类也很多,业务,算法,架构等等,而后端开发,比较烦的一点就是后端开发比较难学,学着学着容易有瓶颈,主要是因为可能还是业务量不够,因为其实很多小公司在业务量不够的情况下,很多java后台开发,你做着做着就容易会变成一条“咸鱼”,容易被人家构建技术壁垒,跟那些大公司的后端开发拉开差距,主要还是因为业务量不够,所以说后端也有它困扰的地方。      

那后端和前端到底应该选那个呢?

这个我觉得应该从几个实际的角度来考虑。第一个就是薪资方面,我特地去boss直聘搜了一下前后端开发工程师的工资实际上还是差不多的,而岗位数量实际上也差不多,需求量也差不多,在我们这边我甚至还觉得前端的需要比后端还要多。

然后再就是前后端各种以后发展的前景怎么样呢?我是觉得前端和后端以后的发展也差不多,因为前端现在也是那种走工程化,走这种可复用性然后那个越来越自动化的这个路子吧,后端你也是这个样子,所以说前后端的发展某一阶段也在慢慢的趋同,所以发展前景我是觉得都差不多的。

到底怎么选呢?

我是觉得要从两个重要的方面,第一个就是你自己的兴趣,我是觉得兴趣是第一样,这种还是要看你内心的偏向的,像我这样,我是觉得我对前端没有什么美感,没什么审美。第二就是要看你的现状,也就是看你当下所学的技术,如果你对前端比较了解一点的话,那你就可以去走前端这个方向,如果你是学java或者是你学spring或者你学这些后端技术栈比较了解的话,那你就做后端好了。有人就说,可是我现在对什么也没兴趣,那你去学java,因为还可以多看看我的文章。所以说大家还是更具自己的实际情况去选择吧。

服务热线

13362162602

微信服务号