首先无论是前端还是后端,只要做得足够深,都能够做得非常出彩。但如果从学前端还是学后端更容易找工作的角度来说,我的建议是前端。
难易度
前端和后端的发展前景都非常好,对于零基础人员来说,前端相对简单一些。在一个公司内,前端和后端的工资没有绝对的高低,最主要还是看个人的能力,能力越强拿到的工资就越多。这一行还是更加注重个人技术实力。
入门难度
第一,对于非科班同学,前端的入门难度比后端低,对计算机基础(数据结构&算法)的要求没有那么高。能够通过系统的学习,在较短的时间内掌握基本技能。
当时你不能一开始就学习 TS 或框架(那可能就懵逼了),而是先打好基础,掌握 html、css、js 等基础知识,然后再学习一些主流的框架,比如 react 或者 vue。说前端比后端入门难度低,并不是说前端的知识比后端少,相反,前端的领域知识可能比后端还多,技术革新也更快,但这并不妨碍作为一个新手,通过系统学习,能够在较短的时间掌握干活的基本技能。具备这些技能可能不足以支撑你进入大厂,但去一些小公司,或者创业公司,还是有可能的。
而且前端的一个特点是所见即所得,你能比较快速看到你写的代码的效果,相比后端能够更及时得到学习成果的反馈,在学习的过程中,你会更有信心,看到自己每天都在成长。
面试难度
第二,从面试的角度来说,对于非科班出身的同学,前端的面试难度要比后端相对低一些。
首先还是要强调一点,如果你是面试大厂,数据结构和算法基本是必考的,如果只是通过培训班学习了前端领域相关的知识,那大概率是通不过面试,甚至通不过简历筛选(外包可能可以)。如果期望争取下大厂的机会,还需要自学数据结构、算法、计算机网络、操作系统等计算机专业课程,这个是需要一定时间来积累的。并且最好是有一定的项目实践经验。
回到面试上来,后端面试中,对数据结构、算法等内容的考察,一般会比前端难一些,而有些公司的前端,特别是一些创业公司(比如我呆过的20人的创业公司),他们的前端面试可能主要围绕前端的领悟知识展开,对数据结构、算法等知识的考察比较少,或者干脆不考察。如果你通过培训达到了能干活能做事的状态,可能就满足了一些公司的用人诉求。
工作机会
第三,从工作机会来讲,前端的工作机会比后端可能稍微多一些。这部分可以参考各招聘网站或者app的职位情况。
如果是说就业的话,前端的情况可能会稍微好一些,因为它出现的时间比后端要晚,人才稍缺,但这只是暂时的,不久的将来也将达到供需平衡。而且没有基础的话,建议你学前端,一是因为前端的学习曲线比较平稳,二是因为前端目前就业情况还好,有些小公司招不到人,被迫不得不招新手。
因为前端现在能做的事情比较多,从网站(web&h5)到小程序到客户端(跨端)到服务端(全栈),前端都可以做,所以岗位需求量也比较大。当然不同岗位的要求不太一样,如果是培训班出来的同学,一般做网站或者小程序开发的会多一些。这里也建议在上培训班之前,可以先看看网上的一些岗位的要求,看看通过培训班能否达到相应的要求。
另外一些培训班是包工作安排的,就是会和一些企业合作,输出培训人才。不过比较现实的是,前端培训班一般和外包公司合作多一些,和企业合作比较少。也就是说,你培训完后,可能是作为外包同学进入一家公司(有可能是大厂)。外包不是正式员工,所以待遇一般比正式员工差一些,但也比很多其他职业的工资要高。
我们公司也招外包,但只招前端的外包,不招后端的外包。从这点来看,前端的工作机会相比后端可能是多一点。
最后给一点建议,因为不是科班出身,相比科班出身的同学,竞争力还是弱一些,所以还是建议如果有精力,系统性地去学习计算机相关的课程。如果你打算长期从事研发工程师的工作,那打好基础就是你持续上升的重要支撑。
前端和后端哪个好学
前端开发是创建Web页面或APP等前端界面呈现给用户的过程,通过HTML、CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。
后端开发指的是运行在后台并且控制前端的内容,它负责程序设计架构以及数据库管理和处理相关的业务逻辑。它主要考虑的是功能的实现以及数据的操作等。
web前端有广阔的发展空间,app、小程序、移动端、pc端等都是需要前端技术的开发支持才能够完成,技术门槛相对较低、需求量较大,薪资待遇良好。
只要是互联网端的客户界面,就需要前端来制作完成,前端开发的编程量不大,但是需要部分编程,入门简单,但是要学的深入需要一个过程。
相比于前端开发而言,后端开发人员在业务逻辑方面要求更高,所以如果之前没有相关基础的话,选择前端开发学习难度相对低一些。
前端和后端哪个前景好
web前端工程师主要就是做外观开发,主要是通过特效展现给用户非常炫酷的形象,让用户有更好的视觉冲击,后端工程师主要是做功能,做交互和数据库,两者结合让用户不仅体验到了视觉和炫酷的风格,而且还要能够起到实用的功能。
前端入门容易,但是比较容易陷入api型程序员。各类框架和库都会用,但是都不够深入。
后端入门相对难,但是时间长了,比较容易构建技术堡垒,拉开差距。
两者都是相辅相成的。做好一个软件两者必不可少。就看你偏向哪个方面。对那个感兴趣,不管前端还是后端两者工资待遇和前景都是很不错。
薪资
6000-10000
1、计算机基础扎实,熟悉常见的数据结构、算法和设计模式; 2、理解并掌握Javascript语言核心技术DOM、BOM、Ajax、JSON等,对MVVM框架应用(如React/Vue等)有一定的经验; 3、有后端/移动端(安卓/iOS)开发经验优先;
10000-15000
1、精通HTML、CSS、JS,熟悉页面架构和布局,熟悉HTML5/CSS3等常用技术; 2、熟悉常用UI框架(如bootstrap/pure/kendo等); 3、精通JavaScript、AJAX、DOM、jQuery等技术; 4、熟悉NodeJS,熟练使用Grunt、Gulp、Webpack等构建工具; 5、具备MVVM框架开发经验,如React、VueJS、AngularJS等; 6、良好的沟通和团队协作能力、热爱技术、责任心强、能推动技术框架的落地
15000-30000
1、熟练掌握 JavaScript,CSS,HTML,DOM、绘图、动画、协议、安全、网络、性能优化等前端技术,对主流前端框架( React \ Vue \ Angular 等)至少一种有深入应用并深入理解其设计原理; 2、熟悉 ReactNative/Weex 框架,有相关开发经验者优先; 3、有安卓、iOS 开发经验者优先; 4、对用户体验、交互操作流程,及用户需求有一定了解; 5、热爱前端技术,有较强的学习能力,有强烈的求知欲、好奇心和进取心 ,能及时关注和学习业界最新的前端技术。
光明的未来。但这同时意味着,每名从业者需要更加努力,优胜劣汰的情况将会持续和加剧。