<b>1.編程的技能,也就是組織代碼,提高代碼質(zhì)量的部分。</b>
這一部分的提高,有點(diǎn)潛移默化,不像具體的技術(shù)比如具體的那些程序語言,框架,數(shù)據(jù)庫等那么明顯,懂了和不懂,差別很大。但是這一部分卻是在平時工作中無時無刻不在用到的,有的時候,感覺和有經(jīng)驗的同事差別不是那么大,但是一做事情,就感覺差別很大,那這部分的差別,就是這方面的技能差別吧。
- 《Java設(shè)計模式》
設(shè)計模式的書很多,對組織程序結(jié)構(gòu)還是很有幫助的。 - 《Thinking in UML》
能夠用圖形把軟件的結(jié)果分析出來,大腦不夠用的時候,畫畫圖,能夠節(jié)省大腦的工作記憶空間,而且能夠知道怎么去分析程序結(jié)果,并且和別人交流。讓軟件的設(shè)計有規(guī)章而尋,而不是憑感覺。 - 《代碼大全》
詳盡地教如何寫出規(guī)范的代碼,讓寫代碼有原則可以遵守,知道什么是代碼的好品味。 - 《Clean Code》
提高代碼質(zhì)量,據(jù)說比《代碼大全》還好,似乎內(nèi)容有重疊。 - 《敏捷軟件開發(fā):原則、模式與實踐》
講到了軟件工程,測試,設(shè)計模式,和《Clean Code》是同一個作者,這個作者也說《Clean Code》是這本書的前傳,所以準(zhǔn)備看完《Clean Code》再讀這個, - 《重構(gòu):改善既有代碼的設(shè)計》
也是教寫出好的代碼的書。 - 《計算機(jī)程序的構(gòu)造和解釋》
看過一章半,有空繼續(xù)仔細(xì)研究,因為這本書的評價很高,一定有可取的地方。 - 《面向?qū)ο蠓治雠c設(shè)計(第3版)》
軟件設(shè)計的書,怎么把需求轉(zhuǎn)換成為代碼。 - 《程序員修煉之道》
經(jīng)常被提起
目前來看,會先看《Clean Code》,因為據(jù)說比《代碼大全》還好,《代碼大全》已經(jīng)是包羅萬象的,算是基本功了。
<b>2.工程能力</b>
怎么能夠更好地完成任務(wù),更好地管理自己的工作,怎么保證自己東西的質(zhì)量。
《構(gòu)建之法》
國產(chǎn)書,看了前面兩章,用工程的方法去工作,才能夠當(dāng)之無愧地稱得上工程師。《Maven實戰(zhàn)》
構(gòu)建程序的工具,雖然似乎都用gradle,但是原理應(yīng)該差不多,正好公司用到這個。《人件》
http://www.vaikan.com/programmers-dont-read-books-but-you-should/ 這篇文章有推薦,是一篇軟件項目管理方面的書。《人月神話》
經(jīng)常被提到的經(jīng)典書籍X
如果讀完之后,還有些擴(kuò)展閱讀的部分,再加上。
<b>3.具體的技術(shù)</b>
會和不會,差別很大,但是要學(xué)會,時間也不會需要太多。這些基本上是工作必須用得上的。
- 《JavaScript高級程序設(shè)計》
學(xué)習(xí)JavaScript排名靠前的書,大眾認(rèn)可的書,一般不會有問題,入門應(yīng)該足夠。 - 《AngularJS權(quán)威教程》
工作中需要用到,學(xué)完JavaScript再學(xué)這個應(yīng)該不難 - 《CSS》
隨便找一本,或者看網(wǎng)上教程吧,寫前端的基本功,不難。 - 《MySQL必知必會》
數(shù)據(jù)庫的基礎(chǔ)不牢,很多原理基本功不知道,需要補(bǔ)充短板,根據(jù)實際需要,決定是否需要再去找Oracle相關(guān)的書看,不過原理應(yīng)該差不多。 - 《精通 Hibernate:Java 對象持久化技術(shù)詳解》
公司用到這個,知道它的原理,才能夠解決更多問題。 - 《SPRING實戰(zhàn) 第4版》
公司用到這個,已經(jīng)讀了五分之一,全面了解Spring還是必要的,還涉及到了一些和Spring相關(guān)的其他技術(shù),能夠增加視野, - 《JAVA并發(fā)編程實踐》
據(jù)說翻譯很差,如果看不下來,就去找這方面的其他資料吧。這部分也是工作中需要用到的知識。 - 《ZooKeeper:分布式過程協(xié)同技術(shù)詳解》
內(nèi)容似乎包羅萬象,知道基本原理,并且把目前工作中用到的部分搞清楚即可。
<b>實現(xiàn)過程</b>
一共17本書,這個列表應(yīng)該是會不斷變化的,一周一本,五個月能夠搞定。
一周的閱讀時間如下:工作日每天晚上一個小時,5h,周末和周日,每天4h,一周13h。
13h看完一本書,平均一本書500頁,平均每小時看38頁即可,按照快速閱讀的方法,這樣的效率也未嘗不可。
<b>快速閱讀的方法</b>
一本很厚的技術(shù)書,覆蓋自然是面面俱到,但是在實際工作中卻發(fā)現(xiàn),經(jīng)常用到的只是其中的一小部分,其余的部分內(nèi)容,雖然學(xué)習(xí)了,但是用的頻率沒有那么高,價值也就沒有那么大。
這似乎就是二八原則,兩成的書籍里面的內(nèi)容,足以應(yīng)對八成的場景。
但是如果完全拋棄那些不常用的內(nèi)容,又會使得知識面變窄,而出現(xiàn)黑天鵝事件,需要用到那些不常用的內(nèi)容時,有會顯得無能為力。
為了兼顧常用和不常用的內(nèi)容,我想出了一個快速閱讀的原則,閱讀技術(shù)書籍時,遇到可能會用,但是不常用的技術(shù)時,可以先理解其原理和思想,但是先不去看其具體的實現(xiàn);
這樣的好處是以后碰到這樣的問題時,腦海中已經(jīng)有了一個概念,也知道可以有哪些解決方法選擇,再去具體學(xué)習(xí)這些選擇的技術(shù)實現(xiàn),之前已經(jīng)知道了原理,再去學(xué)具體怎么做也就不難了,而且這個時候去學(xué)習(xí)這個具體的做法,就是性價比很高的學(xué)習(xí)方式了,真正的把錢用在刀刃上。