一不小心新收了一个吉他师父,好吧,新请了一个师父。简单的说我要将一个零基础的人打造成合格的前端人才。
这是我教学计划的系列文章第一篇,主要讲一下什么是前端,这个行业的现状和未来,以及正确的学习姿势。
从2006年接触前端一来,转眼已经12年,其实前端的定义非常的简单清晰,就是用html、css、javascript等技术堆页面 。
好吧,这里有一个前端的通病,为了简化一个问题和技术,又要学习三个其它的技术。这里我为了解释前端反而引入了四个东西,html,css,javascript,页面。
举个例子类比:
小明今年20了,他妈逼她结婚,然后他爸说我擦咧,我儿子结婚得有房子,然后就找来同村的施工队的老王,老王带着他的两个小弟,王前端和王后台两个弟弟给老王 盖房子。老王说了就按照咱们村的盖法盖,两室一厅就行,然后跟她媳妇说给弄个建筑图纸,小明他爸看看最终房子盖好了啥样,小明他爸一看图纸,牛逼,就按照这么搞,然后老王说了,前端你去买瓷砖跟地板,还有油漆,后台你去打地基,还有看看房子怎么走线,看看最后给弄个空调闭路电视什么的。说干就干,干完了最后小明他爸挺满意,给钱完事儿。
这里小明他妈逼她结婚这个是需求,可能是公司也可能是市场还有可能是销售他们提出来的。一般会提供市场需求文档(MRD)
老王就是项目总监(下面还有产品经理这里合并成一个人),组织干这件事,提供产品需求文档(PRD)确认后,开始做原型,就是他跟他媳妇说的那句话,干个两室一厅。
老王媳妇是设计师,把老王的一句两室一厅,或者说粗糙的方位图变成最终要展示出来的实际效果图。
老王的二弟就是前端,是离用户最近的部分。因为老王验收房子他看不到房子用了几根钢筋,他能看到的是墙是否刷的足够白,墙面有没有裂缝。哪怕这个裂缝是由于钢筋不够造成的,他也不懂,不会说你看王后台,你钢筋使用的偷工减料啊,造成支撑力不足。一般正常人都会说,这个墙面不行啊,怎么都裂开了。王前端,你干活太粗糙了。
所以王前端就是传说中的背锅侠,不管什么问题都体现在用户能看得到的地方,也就是前端,比如用户界面了,比如浏览器里面展示的网页不对了。所有能看见的部分,都是前端的工作。
这个时候王前端生气的说,我刷漆的时候是好的,是因为王后台弄的钢筋数不够,柱子不耐操,所有把墙体给扯开了,这时候老王基本会说,我不管反正墙体不能有裂缝,你看着弄吧。
后台干什么的呢,就是做一些支持性工作,比如为前端提供数据,为访问提供支持。
前端是成就感最大的职业,也是最容易被评论的地方,就好比一个小姐,别人看不到你穿了地摊五块钱的内衣,但是一定能看出来你今天有没有洗脸化妆。
说完了,前后端的工作和一个前端的痛点,说下HTML、css、js 是什么。
HTML就是一个房子的结构比如承重墙,比如两室一厅而不是三室两厅,css就是你刷的漆,漆要刷在墙上,没看见过油漆飘在空中的吧,javascript是什么呢?就是插座,你插上电视出人,这个就是插座的功能。
专业说法,HTML负责结构,css负责表现,js负责行为。
为什么有HTML,css,js呢?
你说 你好啊?人家就回复你 嗯,您好。
你说 你啊好?人家想你丫的神经病啊。
所以计算机跟人没什么区别,都得按照一定的规则跟它聊天,用它能懂的语言,而这些就是程序语言,比如HTML,css,js。
1-1.jpg
这张图,好理解吧。
以上理解的前端能让你拿8K了,也只能让你拿8K了,上面的东西跟10年前没什么两样,只不过从以前的PC端变成了移动端,十年后也许会是从现在的手机转换到更加智能的设备而已。
真正优秀的前端应该具备的能力是
能够高质量交付好的用户体验,上面意思?
什么叫用户体验?
你出门就用高德或者滴滴,因为用户用起来舒服,所以他们的估值很高,如果不是为了回家,你一辈子都不会用某路网站,因为你想说一个词CNND.如果不是刚需,它一分钱不值。
1-3.jpg
同样使用HTML+CSS+JAVASCRIPT,你可以写出值几十亿的前端交互,也可以让人家问候你祖宗。所以这个才是一个前端核心的修炼和技能。
先说前景,再说如何实现上面的水平。
未来的前端如果你认为只限于APP和网页,那你终将只是一个码畜,连码农都够不上。前端将是未来最具潜力和最前沿刺激的职业。
1-4.jpg
未来的前端包含三大主流方向,但是不止于此。
智能化:未来的AI将能够代替大部分前端人员切图、加特效,又快又好,而且不会有兼容性问题,但是决定如何使用这个特效,和页面是否这些特效能够完成
1-5.jpg
从后端到终端用户需求的满足,是AI无法判断的,这个需要有经验的前端去完成。
第二部分数据可视化,未来的前端讲不止步于网页 ,web vr 和更多的设备出现数据的呈现方式,就像10年前
说起前端没人会想到会包含运行在手里里面的app内页一样。钢铁侠中的可视化数据方式将会出现。
第三点,未来前端的交互方式将会更加多姿多彩,小到点头眨眼,达到一个体感动作,前端交互将会完成彻底的转变,未来坐在电脑前打字,用鼠标点击,将是看起来很愚蠢落伍的方式。
未来的编程可能是这样的:
贾维斯(钢铁侠里面的AI),下周我们要搞一个促销活动,你根据当天的人数给我构建一个场景,我看看怎么样让他们使用我们的产品舒服,对了把上次促销活动的数据 三维模型展示下,我想重新开发一个交互流程,一种是双手捏合,一个是凌空缩放,一个是眨眼,你帮我把三个特效全部实现出来,我实际感受下,然后你在根据以往用户的数据做个预判,看看的实际感受跟你的预判是否一致。
对了,测试人员提交的bug你看看哪些是你处理不了需要我去跟后台人员沟通的,你有没有跟后台的贾维斯沟通过,如果解决不了我单独找后台人员开个会……
这,并不科幻,未来已来,只是尚未流行……
这梦幻般的前景也创造了奇迹般的工资和巨大的就业市场……
1-6.png
1-7.png
所有数据来自2018年1月15日16:48:08,https://www.lagou.com拉勾网。
可以看到,前端行业是同类传统行业的3倍工资,足以看到这个行业的火爆。
然而我听到的却是行业饱和了,转行了,感觉没希望了。那么问题出在哪里呢?
其实前端入门很简单这句话没错,但是90%人的都会在3年后遇上瓶颈期,简单的说,会有相当陡峭的学习曲线,
再过两年刻意的学习,就会产生10万小时定律效应成为一个领域的专家,但是注意是刻意学习,不是熬时间,你吃了20几年饭并没有让你成为顶级厨师。大部分人(90%)没有突破10万小时,开始享受平缓的技术曲线和良好的收益,选择了转行,转管理,这也是一大遗憾。
那么如何成为一个优秀的程序员呢?正确的方法+勤奋coding+适合的引导。
那么如何成为一个至少合格的程序员呢?
我们依然看看招聘需求:
1-8.png
这个是拉勾自己家的招聘,待遇不错,但是有一个东西工作中没用过呢,但是同样问题来了,
接触过你是否静下心来学会了呢?如果你连一个简单的盒子模型都说不清楚,一个简单的垂直水平居中布局都搞不定,你连基础的ES6都不会,我凭什么信你能把用ES6写的vue玩的很666?
原谅我不愉快的结尾,你的努力程度跟比谈不上跟别人比天赋,不是别人要求太高了,是你真的很差!
最后一句,共勉,机会给那些有准备的人的,不是留给那些把炫酷技术挂嘴边的人的,愿每一个努力扎实技术的程序员,都能找到属于自己的那片天空。加油。
作者:会点儿前端的大彬哥
链接:https://www.jianshu.com/p/9610d708d55b