最近業(yè)余時間都在看書录别⌒嗌看到幾本不錯的書邻吞,與之前看過的同類主題的一起推薦給需要的讀者朋友。
這些書都有一個特點葫男,教我們組織好軟件項目抱冷,寫好代碼。與具體的技術(shù)和語言無關(guān)梢褐。正因為如此旺遮,他的價值才是永恒的。
1. 計算機(jī)程序的構(gòu)造和解釋
本書關(guān)注點是怎么樣構(gòu)造程序盈咳,構(gòu)造抽象模型耿眉。從電路到解釋器,全鏈路教學(xué)鱼响。她的描述語言是lisp方言之scheme鸣剪。不是那么容易讀懂,但是一旦讀懂了就會有美學(xué)上的享受。
- 5星??????????
2. 重構(gòu):改善既有代碼的設(shè)計
本書只關(guān)注代碼的微觀層面筐骇,每一行代碼如何寫好债鸡,如何講不好的代碼重構(gòu)成好的代碼。程序員的工作中铛纬,每天都要重構(gòu)厌均,不是別人的就是自己的。這本書教的實在是太實用了告唆。本書第二版使用javascript語言描述棺弊,畢竟javascript是披著c語言外衣的lisp。希望讀者向作者一樣悔详,保持耐心镊屎,也具有工匠精神。你的付出會有超額回報的茄螃。
- 5星??????????
3. 設(shè)計模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)
這也是一本名著缝驳,23三個設(shè)計模式,GoF归苍。本書主要關(guān)注OO設(shè)計時對象的交互關(guān)系用狱。學(xué)會這本書,
- 1拼弃,可以教你寫出好的代碼
- 2夏伊,你再去閱讀著名的開源代碼或者標(biāo)準(zhǔn)庫的時候就非常熟悉他們的結(jié)構(gòu)了。
- 3吻氧,與同事溝通的時候可以使用模式名稱(更高層抽象)溝通設(shè)計溺忧。
模式無處不在,我來自農(nóng)村盯孙,老家的房屋結(jié)構(gòu)幾乎都一樣鲁森。因為鄉(xiāng)親沒啥創(chuàng)造力,都遵循一個單一的模式振惰。你寫代碼時歌溉,沒有經(jīng)驗和創(chuàng)造力,就可能寫出單一模式的代碼骑晶,這本書讓你快速進(jìn)入模式境界痛垛。
結(jié)合第二本,不要拘泥于模式桶蛔,你講無往而不利
- 5星??????????
4. 數(shù)據(jù)密集型應(yīng)用系統(tǒng)設(shè)計
本書專注于軟件架構(gòu)匙头,現(xiàn)在大部分應(yīng)用系統(tǒng)都是數(shù)據(jù)密集型
的,這本書關(guān)注這些數(shù)據(jù)的流動和數(shù)據(jù)的存儲模式仔雷,只有這個架構(gòu)確定了以后蹂析,才能開始編碼方面的任務(wù)抖剿。本書屬于更加高視野的層次看應(yīng)用系統(tǒng)。前面的部分很有洞察识窿。個人觀點有點爛尾斩郎。
- 4星????????
5. 代碼大全
本書是軟件工程層面的。關(guān)注的東西更加廣闊喻频,所以本書中文版本有960頁缩宜。有非常可信的軟件工程數(shù)據(jù)支撐甥温。作為開發(fā)人員锻煌,感覺沒有前三本的作用那么直接,那么明顯姻蚓。不過依然非常值得一看宋梧。
- 4星????????
總結(jié)
以上五本書,列出的順序根據(jù)他的覆蓋范圍定狰挡,也是我的偏愛推薦順序捂龄。作為一個負(fù)責(zé)任的推薦人,這些書我都完整看過的加叁。當(dāng)然看書學(xué)習(xí)是要靠悟性的倦沧,跟我的偏好不一樣也是正常的。
be happy