<b>1.编程的技能,也就是组织代码,提高代码质量的部分。</b>
这一部分的提高,有点潜移默化,不像具体的技术比如具体的那些程序语言,框架,数据库等那么明显,懂了和不懂,差别很大。但是这一部分却是在平时工作中无时无刻不在用到的,有的时候,感觉和有经验的同事差别不是那么大,但是一做事情,就感觉差别很大,那这部分的差别,就是这方面的技能差别吧。
- 《Java设计模式》
设计模式的书很多,对组织程序结构还是很有帮助的。 - 《Thinking in UML》
能够用图形把软件的结果分析出来,大脑不够用的时候,画画图,能够节省大脑的工作记忆空间,而且能够知道怎么去分析程序结果,并且和别人交流。让软件的设计有规章而寻,而不是凭感觉。 - 《代码大全》
详尽地教如何写出规范的代码,让写代码有原则可以遵守,知道什么是代码的好品味。 - 《Clean Code》
提高代码质量,据说比《代码大全》还好,似乎内容有重叠。 - 《敏捷软件开发:原则、模式与实践》
讲到了软件工程,测试,设计模式,和《Clean Code》是同一个作者,这个作者也说《Clean Code》是这本书的前传,所以准备看完《Clean Code》再读这个, - 《重构:改善既有代码的设计》
也是教写出好的代码的书。 - 《计算机程序的构造和解释》
看过一章半,有空继续仔细研究,因为这本书的评价很高,一定有可取的地方。 - 《面向对象分析与设计(第3版)》
软件设计的书,怎么把需求转换成为代码。 - 《程序员修炼之道》
经常被提起
目前来看,会先看《Clean Code》,因为据说比《代码大全》还好,《代码大全》已经是包罗万象的,算是基本功了。
<b>2.工程能力</b>
怎么能够更好地完成任务,更好地管理自己的工作,怎么保证自己东西的质量。
《构建之法》
国产书,看了前面两章,用工程的方法去工作,才能够当之无愧地称得上工程师。《Maven实战》
构建程序的工具,虽然似乎都用gradle,但是原理应该差不多,正好公司用到这个。《人件》
http://www.vaikan.com/programmers-dont-read-books-but-you-should/ 这篇文章有推荐,是一篇软件项目管理方面的书。《人月神话》
经常被提到的经典书籍X
如果读完之后,还有些扩展阅读的部分,再加上。
<b>3.具体的技术</b>
会和不会,差别很大,但是要学会,时间也不会需要太多。这些基本上是工作必须用得上的。
- 《JavaScript高级程序设计》
学习JavaScript排名靠前的书,大众认可的书,一般不会有问题,入门应该足够。 - 《AngularJS权威教程》
工作中需要用到,学完JavaScript再学这个应该不难 - 《CSS》
随便找一本,或者看网上教程吧,写前端的基本功,不难。 - 《MySQL必知必会》
数据库的基础不牢,很多原理基本功不知道,需要补充短板,根据实际需要,决定是否需要再去找Oracle相关的书看,不过原理应该差不多。 - 《精通 Hibernate:Java 对象持久化技术详解》
公司用到这个,知道它的原理,才能够解决更多问题。 - 《SPRING实战 第4版》
公司用到这个,已经读了五分之一,全面了解Spring还是必要的,还涉及到了一些和Spring相关的其他技术,能够增加视野, - 《JAVA并发编程实践》
据说翻译很差,如果看不下来,就去找这方面的其他资料吧。这部分也是工作中需要用到的知识。 - 《ZooKeeper:分布式过程协同技术详解》
内容似乎包罗万象,知道基本原理,并且把目前工作中用到的部分搞清楚即可。
<b>实现过程</b>
一共17本书,这个列表应该是会不断变化的,一周一本,五个月能够搞定。
一周的阅读时间如下:工作日每天晚上一个小时,5h,周末和周日,每天4h,一周13h。
13h看完一本书,平均一本书500页,平均每小时看38页即可,按照快速阅读的方法,这样的效率也未尝不可。
<b>快速阅读的方法</b>
一本很厚的技术书,覆盖自然是面面俱到,但是在实际工作中却发现,经常用到的只是其中的一小部分,其余的部分内容,虽然学习了,但是用的频率没有那么高,价值也就没有那么大。
这似乎就是二八原则,两成的书籍里面的内容,足以应对八成的场景。
但是如果完全抛弃那些不常用的内容,又会使得知识面变窄,而出现黑天鹅事件,需要用到那些不常用的内容时,有会显得无能为力。
为了兼顾常用和不常用的内容,我想出了一个快速阅读的原则,阅读技术书籍时,遇到可能会用,但是不常用的技术时,可以先理解其原理和思想,但是先不去看其具体的实现;
这样的好处是以后碰到这样的问题时,脑海中已经有了一个概念,也知道可以有哪些解决方法选择,再去具体学习这些选择的技术实现,之前已经知道了原理,再去学具体怎么做也就不难了,而且这个时候去学习这个具体的做法,就是性价比很高的学习方式了,真正的把钱用在刀刃上。