前端到底要不要学后台
前端到底要不要学后台,这个问题估计困扰了很多个要入行的小哥,而且各大招聘信息上很多都写着需要了解一到两门后台语言优先。这一点让很多小伙伴很方啊。
那么要不要学了,我的观点的是需要了解,不需要深入学。
为什么这样讲了?首先,从逻辑上来讲。如果你一个做前端的去公司还要做后台的工作,那么不直接招一个更加专业的后台人员了?讲道理,现在市场上的后台技术人员是比前端要多的,就你的那点前端技术刚好可以混个工作,凭啥你可以去抢后台的工作了。所以,各位小伙伴们,不要想当然了,公司招你去是不会要你去做后端的事情的。如果是这个道理,那么写上那些要求干嘛了?这不是在有事没事制造招人障碍,让人知难而退?
其实不然,任何一个有过3年以上的工作经验的前端最起码接触过后台的,不管是java,php,python或者说前端都可以是涉及的node.js,你可以去问问他们,基本都有过了解,但这个了解不是完全会去写,而且了解一个过程。
有过工作经验的小伙伴应该都知道,除了程序员跟讨厌的产品经理之间的矛盾外,最大的矛盾就是前后台的矛盾了。我之前有过好几个做后台的学员,我问他你为什么要学前端,他告诉我,迫于无奈,前端写的代码实在是太恶心了,太不规范了,每次拿到前端模板要改一半的代码,弄的我现在天天加班。我跟他说,要我的话就直接怼过去了,他说怼不得啊,基本都是妹纸,骂也骂不得,没办法,赶紧来学个前端,不然以后会猝死的。我相信有做后台的小伙伴看到这个故事肯定感同身受吧。所以,为了前后台开发效率更加高,更和谐,W3C和各大公司做了一系列的努力,什么前后端分离,基于MV*的前端架构等等。这也就是为什么,现在前端的要做的事情越来越越多了,学的东西也要越来越多了。
究其原因,实际上就是前端对后台的一个工作形式不了解,对HTTP协议,数据传输,服务器性能等等都不了解。要我说,这些前端也要去学,并且前端对于HTTP协议还有服务器性能还要了解更加深入,不要把眼光老是关注与页面以及浏览器的效率。
比如,你如果了解每一张图片的加载其实就是一个请求,而减少请求其实就是减少对服务器的负载,那么就会使用精灵图来减少请求。如果你了解阻塞I/O,那么你在面对高并发事件时会使用AJAX,而大部分的小伙伴刚刚开始的时候不是在一味觉得AJAX很强,但根本不知道用在哪里,只知道这个东西很强,很牛×,我要学。简直毫无意义。
读到这里,现在应该知道了吧,我们到底要不要学后台了呢?
但是对于所有学前端的小伙伴,我建议的是一定要学一个node.js。这个其实不是一个框架,应该叫基于JS的后台语言,只不过他的解释权是V8引擎而已,本质还是属于后台。如果你在前端学到一定的水平,那么JS肯定不会差的,那么这个语言你学起来不会很困难。只需要花时间去了解HTTP,数据库,服务器等方面的知识就可以了。至于高并发,非阻塞I/O,事件驱动啥的,等你学透了自然而然会懂的。等你用node到一定的阶段,会认识的node的一个不足和优点,到时候就会去扩展第二第三语言了,接下来学起来就没有那么困难了。你要知道一点,后台所有语言的本质是差不多的,所有,届时学起来困难也不会像刚开始接触那么困难。
接下来的文章我想分享一些前端知识点,不会再写经验之谈了,希望大家学习顺利。