我是10多年程序开发老手,给正准备入行的新手一些个人心得建议,到底选择前端,还端还是全栈呢?
什么是前端?前端是跟用户交道的地方,直白的说,就是用户看得见的一切,你手机app上,电脑网页上能看得到的一切东西都属于前端。
什么是后端?后端就是用户看不见的东西。这些东西藏在服务器上,是面向机器的。
什么是全栈?全栈也叫全站。什么是全站呢?就是一个项目,比如网站来说,整个站点的前前后后,大小大小,全部都由一个人完成。那么这个人就是全能的,简言之就是全站都会,即全栈攻城狮。
先说全栈,现在完全一个网站,领域分工已经比较细了,有美工、前端、后端、测试、运维等。早期的前几代程序员,一般在年以前,可能都是由一个人来完成的。随着后来科技的发展,技术越来发达,分工越来越细,已经不太可能有人全部都会了,基本都是专注一个领域进行发展。所以,全栈已成过去式。能够称为全栈的程序员,基本可以确定他是年以前就出道的老程序员了。
既然全栈已经过时,我们就仔细谈下前端和后端的区别:
1.面向的客户群体不同。前端面向真实的客户群体,更加注重界面友好体验,是否美观,操作简易等。后端更多面向服务器,而服务器是机器,所以它注重性能及稳定性。
2.技术不同。二者所需要接触的技术完全不同。但编程思想是一样的。
3.学习的时间成本。前端容易入行,成本较低。后端学习周期长,成本高。
4.各司其职,职责不同。前端难度较低,后端难点度较高,前端主要负责呈现,后端负责真正的业务逻辑实现。
5.成长空间。二者均有相应的学习曲线。但前端技术相对单一,学会一样如vue,走遍天下都不怕,所以成长很快。但后端要学习比较多的领域,成长慢。
6.企业价值。对企业来说,核心价值在服务端即后端。但很好的界面呈现也是不可或缺的。二者均为企业不可少的。但在一些特殊领域,可能企业无需很高要求的前端,所以价值上,后端会较为保值。
到此,通过上述的区别,结合您自身的情况,大体你可能已经能够做出一个选择了。
自身的情况,建议你要特别参考自己的学历、英文水平、自己的兴趣所在、逻辑能力等,综合自身情况做出选择。