《web全栈工程师》中总结的20条军规和必读书单

原创 五行缺火 随笔 前端基础 4635阅读 2016-07-30 16:43:36 举报

作为一个前端新人,应该不断学习加强各种基础技术,而且也要多看别人的建议,别人成功的经历或许不能让你复制,但是你总能从中有所收获,身体和灵魂总要有一个在路上。

今天抱起了实习时候充充翻过的一本书《web全栈工程师》,作者是腾讯的高级UI工程师雨果,序章就已经讲述了他从一个菜鸟成长为大神的历程。突然想起这本书是因为接受了公司关于职业规划的培训之后,有点迷茫,所以看看什么的web全栈工程师是一个什么职位,需要具备怎么样的技能与素质,阅读目的非常简单,从中总结出如何成长为web工程师的路径。

阅读完成并作了一点书摘与思考,阅读这本书的目标已经达到了, 清晰了解web全栈工程师需要的知识体系,笔者的文笔朴实易懂,只是其中对于技术名词方面的讲解由于我本身的技术受限,所以读起来比较吃力,技术方面的章节基本略过,后面针对书中提出的技术名字一一恶补,并回顾阅读。

精彩书摘与思考:

1.先精后广,一专多长
解读:赞同这一条建议,我自己也正在实践当中,作为一名前端新人,更应该懂得专注一门技术,深挖进去,有人能把html、css、js分别玩得很厉害,其实前端三大技能如果学好了,后面的框架技术真的会很容易就明白其中的原理。先精是为了保证你能在这个行业中立足,一个有亮点的人会比一个什么都略懂的人更有优势。

2.围绕商业目标学习、使用技术
解读:这是一个比较现实的观点,搞技术的人很喜欢应用各种牛逼的技术,以此满足自己的虚荣心,这是程序员的通病,技术的产生是为了更好地服务人类,制造商业价值,应该根据商业目标,产品定位来选择适合的技术。老师在书中有一句话很好的概括了这个观点:老板不是因为你会写代码而聘请你,而是因为你能创造价值,为他增加收入,或者减少成本。这一条值得深思,反正我看了之后开始思考我应该如何提高产品质量,如何减少成本支出,包括时间、金钱的成本。

3.关注用户体验
解读:每一个糟糕体验的背后,都蕴含着商机,工程师应该是从技术上提升用户的使用体验,例如减少用户等待的时间,修复各种bug等等,可能我们的日常工作中会存在产品经理,产品经理不懂技术,其实会忽略很多存在很多操作上的逻辑,所以我们要时刻关注自己做出的产品给人的体验是如何的,能不能持续地进行优化

《web全栈工程师》中总结的20条军规和必读书单

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.学习软件设计方法
解读:设计模式是对特定解决方案或者模板的一种描述,设计模式不局限于某种特定语言或者框架,可以用各种语言和方式实现。

《web全栈工程师》中总结的20条军规和必读书单

16.提高你的工作效率
解读:当程序员就一定要熬夜嘛,会不会是你的工作方式不对导致的呢?提高工作效率有许多的方法,请看下图

《web全栈工程师》中总结的20条军规和必读书单

17.学习设计
解读:学习一些原型设计软件和UI设计软件

18.学一点管理
解读:管理有很多种,时间管理,精力管理,项目管理,目标管理。我们再工作中可以自己对自身的项目进行管理,制定完成的时间,掌控进度。

19.沟通很重要
解读:程序员群体都是比较内向的一群人,所以有时候感觉和程序员说话很吃力,不过沟通作为人类的一项重要软技能,无论是在日常生活和工作中,作用都是很重要的,因为这是一个社交的社会,你得通过沟通表达你的想法。

20.总结的前端优化和前端知识体系

前端性能优化

《web全栈工程师》中总结的20条军规和必读书单

知识体系

《web全栈工程师》中总结的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设计全流程解析》
《写给大家看得设计书》
《写给大家看得设计书:实例与创意》
《卓有成效的管理者》
《麦肯锡教我的写作武器》
《金字塔原理》
《安静:内向性格的竞争力》

评论 ( 10 )
最新评论
W3CfunsFans 2017-07-20 17:23:27 10F

总结了上面所述的全找,前端水很深,step by step you will do it well:
1)语义化html
2)ECMAScript
3)搜索引擎爬虫
4)蜘蛛 spider
5)使用本地缓存更快地访问网站,使用cdn网络,加快用户访问速度
6)使用G-ZIP压缩,浏览速度更快,搜索引擎抓取信息量更大
7)了解HTTP协议
8)了解缓存
9)超文本是什么意思
10)打造你的webAPP,学习phoneGap,无须多言,学习做一个属于你自己的APP,了解编程思想是什么。
11)学会使用包管理工具npm和bower
12)学会使用构建工具gulp和grunt解读:使用构建工具是架构代码的第一步
13)stackoverflow

onecoder 2016-08-03 22:36:11 9F

very good point,thank you for sharing.

五行缺火 7F 2016-08-01 18:32:36 8F

现在的团队比较牛逼,所以成长也快

weilog 2016-08-01 16:57:08 7F

大神的节奏

carroll_cai 2016-08-01 10:06:35 6F

作者精通那一方面,感觉也是略懂

Tank_Lo 2016-08-01 09:05:18 5F

还行。挺不错的,收获挺多的。

老姚 3F 2016-07-30 22:58:29 4F

这就涉及到语言的内涵和外延了。不同的人是对同一句的理解会差出很多。比如我花了75块买了件衣服,别人问我多少钱买的。假如我说不到400元。细想也是没错的,可听者会觉得我的衣服以300多点买的。从作者的那章中,我就能体会到这种感觉。较真起来作者确实没说错。。。

五行缺火 2F 2016-07-30 22:16:53 3F

老姚,昨天公司请宝洁的人来为我们这些新人做培训,谈到职业生涯,所以回看此书,结合我之前被骂得那篇文章,其实我现在就是野生程序员,我们能做出东西来吗?能,可是不完美,而且坑特别多。作者在腾讯这些大公司呆了那么多年,很多东西都相对规范,而且对原理应该研究得比较深入,他所说得野生程序员应该是指不仅懂解决问题,还懂背后的原理,就像培训班出来的和认真学过4年计算机专业的同学,在基础知识上的不同会导致两种思考问题的风格,我个人是这样理解的。

老姚 2016-07-30 17:47:13 2F

此书我也看了,还准备专门写篇文章,评论一下此书呢。最有争议的一点就是,野生程序员了。其实我想说一专多长,和野生程序员是成为全栈工程师的两种方式。正是印证了理科生思维和文科生思维的区别。二者的学习路径是不一样的,用挖坑理论来说,一个是先往深里挖,再往宽挖,然后挖出整个坑。而另外一种是先宽挖,然后一遍遍深挖。都能挖出坑来。至于书里说的野生程序员,只是中级的一种状态。不能否定这种存在的方式。一专多长和野生程序员,比较的维度也不一样。90 60 60 和 75 75 75,不能只用90去比人家的75。

五行缺火 2016-07-30 16:43:52 1F

沙发