做为一个前端新人,应该不断学习增强各类基础技术,并且也要多看别人的建议,别人成功的经历或许不能让你复制,可是你总能从中有所收获,身体和灵魂总要有一个在路上。javascript
今天抱起了实习时候充充翻过的一本书《web全栈工程师》,做者是腾讯的高级UI工程师雨果,序章就已经讲述了他从一个菜鸟成长为大神的历程。忽然想起这本书是由于接受了公司关于职业规划的培训以后,有点迷茫,因此看看什么的web全栈工程师是一个什么职位,须要具有怎么样的技能与素质,阅读目的很是简单,从中总结出如何成长为web工程师的路径。css
阅读完成并做了一点书摘与思考,阅读这本书的目标已经达到了, 清晰了解web全栈工程师须要的知识体系,笔者的文笔朴实易懂,只是其中对于技术名词方面的讲解因为我自己的技术受限,因此读起来比较吃力,技术方面的章节基本略过,后面针对书中提出的技术名字一一恶补,并回顾阅读。html
精彩书摘与思考:前端
1.先精后广,一专多长java
解读:赞同这一条建议,我本身也正在实践当中,做为一名前端新人,更应该懂得专一一门技术,深挖进去,有人能把html、css、js分别玩得很厉害,其实前端三大技能若是学好了,后面的框架技术真的会很容易就明白其中的原理。先精是为了保证你能在这个行业中立足,一个有亮点的人会比一个什么都略懂的人更有优点。linux
2.围绕商业目标学习、使用技术git
解读:这是一个比较现实的观点,搞技术的人很喜欢应用各类牛逼的技术,以此知足本身的虚荣心,这是程序员的通病,技术的产生是为了更好地服务人类,制造商业价值,应该根据商业目标,产品定位来选择适合的技术。老师在书中有一句话很好的归纳了这个观点:老板不是由于你会写代码而聘请你,而是由于你能创造价值,为他增长收入,或者减小成本。这一条值得深思,反正我看了以后开始思考我应该如何提升产品质量,如何减小成本支出,包括时间、金钱的成本。程序员
3.关注用户体验github
解读:每个糟糕体验的背后,都蕴含着商机,工程师应该是从技术上提高用户的使用体验,例如减小用户等待的时间,修复各类bug等等,可能咱们的平常工做中会存在产品经理,产品经理不懂技术,其实会忽略不少存在不少操做上的逻辑,因此咱们要时刻关注本身作出的产品给人的体验是如何的,能不能持续地进行优化web
4.拒绝当野生程序员
解读:其实我自从第一次看这本书,了解了这个词,就知道若是刚毕业的时候没有一个很好的引导,就一定会成为野生程序员。野生程序员就是仅凭一腔热血,对计算机知识只知其一;不知其二的程序员,也就是如今的我,大学时候由于喜欢逃课,因此不少基础知识是缺少的,如今工做了才知道原来原理如此重要,由于不懂,因此不少时候你作出来的东西其实只有60分,你的思惟存在误区。野生程序员仅仅是代码工做者, 不是一名工程师。归根结底野生程序员不是技术应用上不足,而是态度和基础知识上的不足。拒绝当野生程序员,第一步就是端正态度,起码写出简洁的代码吧。
5.整理你的做品集
解读:做品是你工做的表现,定时整理你的做品集能让让你有所回顾,反思本身过去作过什么,与偶没有进步,另外分享你的做品集也能让你收获更多的批评与建议,促进你成长,功利一点说,能让猎头看到你。工程师的做品集更多的是在github上面。
6.了解HTTP协议
解读:做为前端开发人员,不能只作静态的页面,你得熟悉先后端数据传输的方法,最经常使用的就是HTTP协议,前端须要须要把网站又快又好的展示在用户眼前,其中涉及静态资源应该怎么存放,怎么减小http的请求,设置缓存、cookie,图片的使用,gzip压缩等等
7.了解缓存
解读:缓存这个课题比较深奥,暂时我是没法弄清楚不少概念的,不在此叙述。
8.超文本是什么意思
解读:超文本其实就是比通常笔记本写的普通文字多了语义化的信息。
9.框架和库库
解读:严格来讲,框架应该比库更普遍。一个库是一些列对象、方法的代码,例如jq,只要接入这个库,你就能使用里面定义好的语法,没必要重写这部分代码的工做。框架是一个软件系统中可重用的部分,可能包括子程序、库、胶水语言、图片等一些资源,框架不像库,可能包含其余的语言,某些功能经过API方式让主程序调用。
注意:根据本身的需求学习不一样的框架和库。
10.打造你的webAPP,学习phoneGap
解读:无须多言,学习作一个属于你本身的APP,了解编程思想是什么。
11.学会使用版本使用工具,至少会svn和git吧
解读:除了会敲代码,你还须要懂得管理你的代码,大项目须要多人共同合做完成,此时你就要学会如何方便,安全地和他人共同操做代码,而经常使用的两个版本管理工具就是svn和git了。
12.学会使用包管理工具npm和bower
解读:包管理做用是管理引入的第三方库和框架,保证相互之间不发生冲突。
13.学会使用构建工具gulp和grunt****
解读:使用构建工具是架构代码的第一步
14.学习linux,了解系统的原理
解读:书中专门用一章的内容讲解了部署环境,搭建一个博客网站,其中涉及VPS、服务器安全等等问题,目的是告诉咱们,要想成为大前端,必须懂得系统原理。
15.学习软件设计方法
解读:设计模式是对特定解决方案或者模板的一种描述,设计模式不局限于某种特定语言或者框架,能够用各类语言和方式实现。
本身是从事了五年的前端工程师,很多人私下问我,2019年前端该怎么学,方法有没有?没错,本身整理了一份2019最全面前端学习资料,从最基础的HTML+CSS+JS到HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴,有想学习web前端的,或是转行,或是大学生,还有工做中想提高本身能力的,正在学习的小伙伴,须要能够私聊我哟,也有个人前端开发qun,【开始四八四】【七五七】【七六零】对于学习web前端有任何问题(学习方法,学习效率,如何就业)均可以问我,最后能够点一波关注哟!
16.提升你的工做效率
解读:当程序员就必定要熬夜嘛,会不会是你的工做方式不对致使的呢?提升工做效率有许多的方法,请看下图
17.学习设计
解读:学习一些原型设计软件和UI设计软件
18.学一点管理
解读:管理有不少种,时间管理,精力管理,项目管理,目标管理。咱们再工做中能够本身对自身的项目进行管理,制定完成的时间,掌控进度。
19.沟通很重要
解读:程序员群体都是比较内向的一群人,因此有时候感受和程序员说话很吃力,不过沟通做为人类的一项重要软技能,不管是在平常生活和工做中,做用都是很重要的,由于这是一个社交的社会,你得经过沟通表达你的想法。
20.总结的前端优化和前端知识体系
前端性能优化
推荐书单
《重来:更为简单有效的商业思惟》
《精益创业》
《打造facebook》
《您就是极客:软件开发人员生存指南》
《代码整洁之道》
《图解HTTP》
《高性能网站建设进阶指南》
《网站性能监测与优化》
《精通css:高级web标准解决方案》
《单页web应用:javascript从前端到后端》
《Getting Real》
《从0 到1:开启商业与将来的秘密》
《Building iPhone APPwith HTML,css,and javascript》
《Pro Git book》
《Git版本控制管理》
《代码大全》
《代码的将来》
《禅与摩托车维修艺术》
《鸟哥的linux私房菜:基础学习篇》
《只是为了好玩:linux之父林纳斯自传》
《设计模式:可复用面向对象软件的基础》
《javascript设计模式》
《软件随想录:程序员部落酋长joel谈软件》
《卓有成效的程序员》
《响应式web设计全流程解析》
《写给你们看得设计书》
《写给你们看得设计书:实例与创意》
《卓有成效的管理者》
《麦肯锡教个人写做武器》
《金字塔原理》
《安静:内向性格的竞争力》