程式設計師必讀的十三本經典書籍

2022-01-14 21:41:32 字數 3756 閱讀 7880

01

《**大全》 史蒂夫·邁克康奈爾

“優秀的程式設計實踐的百科全書,《**大全》注重個人技術,其中所有東西加起來, 就是我們本能所說的“編寫整潔的**”。這本書有50頁在談論**佈局。” —— joel spolsky

steve mcconnell的原作《**大全》(第1版)是公認的關於程式設計的最佳實踐指南之一, 在過去的十多年間,本書一直在幫助開發人員編寫更好的軟體。

無論您的經驗水平如何,也不管您在怎樣的開發環境中工作,也無論專案是大是小, 本書都將激發您的思維並幫助您構建高品質的**。

02

《計算機程式的構造和解釋》

《**大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。 其他像《人件集》、《計算機程式設計心理學》和《人月神話》這些書會深入軟體開發的心理層面。 其他書籍則處理演算法。這些書都有自己所屬的位置。

然而《計算機程式的構造和解釋》與這些不同。 這是一本會啟發你的書,它會燃起你編寫出色程式的熱情; 它還將教會你認識並欣賞美; 它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。

其他書或許會讓你成為一位更出色的程式設計師,但此書將一定會讓你成為一名程式設計師。

03

《c程式設計語言》

《c程式設計語言》(第2版新版)原著即為c語言的設計者之一dennis m.ritchie和著名的電腦科學家brian w.kernighan合著的 一本介紹c語言的權威經典著作。 我們現在見到的大量論述c語言程式設計的教材和專著均以此書為藍本。 

原著第1版中介紹的c語言成為後來廣泛使用的c語言版本——標準c的基礎。

人們熟知的“hello,world”程式就是由本書首次引入的,現在,這一程式已經成為所有程式設計語言入門的第一課。

04

程式設計師思維修煉(修訂版)

生命中沒有什麼是一成不變的,人們需要改變自己的習慣和方法。不論你是程式設計師、軟體公司管理者、技術奇人還是思想家,或者你只是想讓自己的大腦更聰明一點兒,所有嘗試改變自己的人,請把本書當作改變的開始……

05

系統化思維導論

關注人文,掌握思維法則,揭開科學與技術的神祕面紗

“它給我的震撼是第一次我能從全域性的角度去看待各個學科,科學也不再是冷冰冰的割裂了的教條,不再是難以理解的一堆符號。”

06

優秀的叛逆者:引領組織變革的力量

lois kelly和carmen medina用她們的實戰經驗,向我們展示瞭如何在工作中贏得信賴、提出想法、處理人際關係、管理衝突和保持理智。”

——亞當·格蘭特,沃頓商學院教授,《紐約時報》暢銷書give and take的作者

07

《site reliability engineering》

《sre:google運維解密》可以讓讀者學習到google工程師在提高系統部署規模、改進可靠性和資源利用效率方面的指導思想與具體實踐——這些都是可以立即直接應用的寶貴經驗。任何一個想要建立、擴充套件大規模整合系統的人都應該閱讀,該書針對如何構建一個可長期維護的系統提供了非常寶貴的實踐經驗。

08

《refactoring》

那時候當我讀這本《重構:改善既有**的設計》時,由於它在關於**異味的單獨章節所花的篇幅,使得這本書非常值這個價。該書非常成功,因為它使重構和**異味的觀念成為主流。

steve yegge曾對這本書不吝讚譽之詞:

2003年10月,我第一次閱讀這本書,有一種不寒而粟的感覺。如果你意識到,當你想離職時,你已經工作5年。轉天我就隨意問周圍:“嗯,你已經讀過重構方面的書,對吧?我只是隨便問問,因為我很久以前讀過,當然不是現在。”在我所調查的20個人中,只有一個人讀過。感謝上帝,所有的人都很尷尬,不只是我。

09

《peopleware》

在大學時我讀到這本《人件》,該書似乎很令人信服,甚至所有的研究結果都支援該書的觀點:不設定截止日期就比設定截止日期要好;辦公室比隔間要好,等等。所有開發人員跟我討論的時候,基本都贊同這些觀點。

10

《程式設計珠璣》

儘管我不得不羞愧地承認,書中一半的東西我都沒有理解,但我真的推薦《程式設計珠璣》,書中有些令人驚奇的東西。 – matt warren

11

《修改**的藝術》by michael feathers

我認為沒有任何一本書能向這本書一樣影響了我的程式設計觀點。它明確地告訴你如何處理其他人的**,含蓄地教會你避免哪些(以及為什麼要避免)。

同意。很多開發人員討論用乾淨的石板來編寫軟體。但我想幾乎所有開發人員的某些時候是在吃其他開發人員的狗食。– bernard dy

12

《編碼:隱匿在計算機軟硬體背後的語言》

我推薦charlespetzold的《編碼》。在這個充滿工具和ide的年代,很多複雜度已經從程式設計師那“抽取”走了,這本書一本開眼之作。 –hemil

13

《程式設計師健康指南》

最後一本,

作為程式設計師的你肯定秒懂哈~