有哪些可以提高代碼質量的書籍推薦?

這篇文章的內容其實很早就寫了,並且,我也已經同步在了我的 Github 的一個倉庫中(倉庫內容還在繼續完善中),地址:https://github.com/CodingDocs/awesome-cs-books(閱讀原文即可直達) 。對應的 Gitee地址:https://gitee.com/SnailClimb/awesome-cs (Github無法訪問或者訪問速度比較慢的小夥伴可以看碼雲上的對應內容)。

考慮到還未發過類似的文章,所以,今天晚上就來一篇!下面推薦都是我看過並且我覺得值得推薦的書籍。

不過,這些書籍都比較偏理論,只能幫助你建立一個寫優秀代碼的意識標準。如果你想要編寫更高質量的代碼、更高質量的軟件,還是應該多去看優秀的源碼,多去學習優秀的代碼實踐(比如設計模式、設計原則)

代碼整潔之道

《重構》

必看書籍!無需多言。編程書籍領域的瑰寶。

世界頂級、國寶級別的 Martin Fowler 的書籍,可以說是軟件開發領域最經典的幾本書之一。目前已經出了第二版。

這是一本值得你看很多遍的書籍。

《Clean Code》

《Clean Code》是 Bob 大叔的一本經典著作,強烈建議小夥伴們一定要看看。

Bob 大叔將自己對整潔代碼的理解濃縮在了這本書中,真可謂是對後生的一大饋贈。

《代碼大全》

其實,《代碼大全(第 2 版)》這本書我本身是不太想推薦給大家了。但是,看在它的豆瓣評分這麼高的份上,還是拿出來說說吧!

這也是一本非常經典的書籍,第二版對第一版進行了重寫。

我簡單地瀏覽過全書的內容,感覺內容總體比較虛,對於大部分程序員的作用其實不大。如果你想要切實地提高自己的代碼質量,《Clean Code》和 《編寫可讀代碼的藝術》我覺得都要比《代碼大全》這本書更好。

不過,最重要的還是要多看優秀的源碼,多學習優秀的代碼實踐。

《編寫可讀代碼的藝術》

《編寫可讀代碼的藝術》這本書要表達的意思和《Clean Code》很像,你看它倆的目錄就可以看出來了。

在我看來,如果你看過 《Clean Code》 的話,就不需要再看這本書了。當然,如果你有時間和精力,也可以快速過一遍。

另外,我這裏還要推薦一個叫做 write-readable-code 的倉庫。這個倉庫的作者免費分享了一系列基於《編寫可讀代碼的藝術》這本書的視頻。這一系列視頻會基於 Java 語言來教你如何優化咱們的代碼。

在實踐中學習的效果肯定會更好!推薦小夥伴們都抓緊學起來啊!

《Effective java 》

Effective Java中文版(第3版)

Java 程序員必看!

又是一本 Java 領域國寶級別的書,非常經典。這本書主要介紹了在 Java 編程中很多極具實用價值的經驗規則,這些經驗規則涵蓋了大多數開發人員每天所面臨的問題的解決方案。這篇文章能夠非常實際地幫助你寫出更加清晰、健壯和高效的代碼。本書中的每條規則都以簡短、獨立的小文章形式出現,並通過例子代碼加以進一步說明。

程序員職業素養

《 The Clean Coder》

《 The Clean Coder》是 Bob 大叔的又一經典著作。

《Clean Code》和《 The Clean Coder》這兩本書在國內都翻譯爲 《代碼整潔之道》,我覺得這個翻譯還是不夠優雅的。

另外,兩者的內容差異也很大。《Clean Code》這本書從代碼層面來講解如何提高自己的代碼質量。而《The Clean Coder》這本書則是從如何成爲一名更優秀的開發者的角度來寫的,比如這書會教你如何在自己的領域更專業、如何說不、如何做時間管理、如何處理壓力等等。

架構整潔之道

《架構整潔之道》

你沒看錯,《架構整潔之道》這本書又是 Bob 大叔的經典之作。

這本書我強烈安利!認真讀完之後,我保證你對編程本質、編程語言的本質、軟件設計、架構設計可以有進一步的認識。

國內的很多書籍和專欄都借鑑了《架構整潔之道》 這本書。毫不誇張地說,《架構整潔之道》就是架構領域最經典的書籍之一。

正如作者說的那樣:

如果深入研究計算機編程的本質,我們就會發現這 50 年來,計算機編程基本沒有什麼大的變化。編程語言稍微進步了一點,工具的質量大大提升了,但是計算機程序的基本構造沒有什麼變化。

雖然我們有了新的編程語言、新的編程框架、新的編程範式,但是軟件架構的規則仍然和 1946 年阿蘭·圖靈寫下第一行機器代碼的時候一樣。

這本書就是爲了把這些永恆不變的軟件架構規則展現出來。

項目管理

《人月神話》

這本書主要描述了軟件開發的基本定律:一個需要 10 天才能幹完的活,不可能讓 10 個人在 1 天干完!

看書名的第一眼,感覺不像是技術類的書籍。但是,就是這樣一個看似和編程不沾邊的書名,卻成了編程領域長久相傳的經典。

這本書對於現代軟件尤其是複雜軟件的開發的規範化有深刻的意義。

《領域驅動設計:軟件核心複雜性應對之道》

這本領域驅動設計方面的經典之作一直被各種推薦,但是我還來及讀。

軟件質量其他書籍推薦

  • 《代碼的未來》 :這本書的作者是 Ruby 之父松本行弘,算是一本年代比較久遠的書籍(13 年出版),不過,還是非常值得一讀。這本書的內容主要介紹是編程/編程語言的本質。我個人還是比較喜歡松本行弘的文字風格,並且,你看他的文章也確實能夠有所收穫。
  • 《深入淺出設計模式》 : 比較有趣的風格,適合設計模式入門。
  • 《軟件架構設計:大型網站技術架構與業務架構融合之道》 : 內容非常全面。適合面試前突擊一些比較重要的理論知識,也適合拿來擴充/完善自己的技術廣度。
  • 《微服務架構設計模式》 :這本書是世界十大軟件架構師之一、微服務架構先驅 Chris Richardson 親筆撰寫,豆瓣評分 9.6。示例代碼使用 Java 語言和 Spring 框架。幫助你設計、實現、測試和部署基於微服務的應用程序。

最後再推薦兩個相關的文檔:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章