① 作為程序員計算機基礎的書推薦幾本唄
生活不僅僅只有寫代碼,作為程序員,我們不僅要將數據結構、計昌敬讓算機網路、操作系統這三把斧玩好,更要擁有一個強健的體魄!
網路:
萬物互稿山聯時代,如果你還不懂網路知識,那將寸步難行。這里推薦三本經典書籍:
TCP/IP詳解
該書是網路專家、著名技術作家W.RichardStevens的傳世之作,內容詳盡且極具權威,被譽為TCP/IP領域的不朽名著,就我認識的老通信行業的專業開發人員,基本人手一本。本書共三卷,其中卷一偏重於基礎原理,卷二、卷三更多偏重於編程細節,作為基礎書籍推薦,卷一即可,對於學有餘力的童鞋,可學習二、三卷。
圖解HTTP
應用最廣泛的協議之一,前端工程師分析抓包分析數據,後端工程師實現RESTAPI、搭建自己的HTTP伺服器等過程中都繞不開HTTP這一知識點,《圖解HTTP》,用通俗易懂的語言講解了HTTP協議的方方面面,本書列舉諸多常見通信場景及實戰案例,最後延伸到Web安全、最新技術動向等方面,實在是一本不可多得的好書。
Wireshark網路分析就這么簡單
「授人以魚不如授人以漁」,全書以詼諧幽默的寫法為我們講解了枯燥的技術問題,由淺入深的用Wireshark分析了常見的網路協議,還通過身邊的真實案例分享了Wireshark使用技巧,對初學者是很好的啟蒙書籍。本書可搭配前面介紹的兩本基礎理論書籍一起學習,必能達到事半功倍的效果。
操作系統:
現代操作系統
程序員的耐局自我修養——鏈接、裝載和庫
如果你是高手,LinuxHacker或者geek,請繞行
但如果你是新手
如果你曾好奇過windows系統目錄下和軟體目錄下大堆大堆的dll文件是什麼?
如果你曾疑惑過我寫下的代碼經歷的怎樣的歷程最後怎樣到達了內存?
編譯器每天用,它到底做了什麼?
如果你已經學習或接觸了C,匯編,計算機結構,但還是沒辦法把三者的關系理順。
那麼,《程序員的自我修養——鏈接、裝載和庫》這本書絕對是對你的有幫助。
數據結構
基礎入門的話,這里推薦《大話數據結構》。本書以一名教師的教學為場景,用生動形象的語言講解數據結構和相關演算法的知識。全文大量引用了各種各樣的生活知識來類比數據結構中的專業知識。
程序員必備書籍
重要!
重要!
重要!
作為本文的壓軸戲,也是最重要的一本書《程序員健康指南》推薦給各位程序猿友們,專門為程序員量身製作的健康指南,針對頭痛、眼部疲勞、背部疼痛和手腕疼痛等常見的問題介紹了其成因和對策。身體是革命的本錢,各位在長期面對996的同時,一定要注意身體,加強鍛煉,提高免疫力!
② 程序員必讀的14本書籍
程序員必讀書籍有哪些呢?下面是我精心為您整理的程序員必讀的14本書籍,希望您喜歡!
程序員必讀的14本書籍
1、《代碼大全》 史蒂夫·邁克康奈爾
“優秀的編程實踐的網路全書,《代碼大全》注重個人技術,其中所有東西加起來, 就是我們本能所說的“編寫整潔的代碼”。這本書有50頁在談論代碼布局。” —— Joel Spolsky
Steve McConnell的原作《代碼大全》(第1版)是公認的關於編程的最佳實踐指南之一, 在過去的十多年間,本書一直在幫助開發人員編寫更好的軟體。
無論您的經驗水平如何,也不管您在怎樣的開發環境中工作,也無論項目是大是小, 本書都將激發您的思維並幫助您構建高品質的代碼。
2、《計算機程序的構造和解釋》
《代碼大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。 其他像《人件集》、《計算機編程心理學》和《人月神話》這些書會深入軟體開發的心理層面。 其他書籍則處理演算法。這些書都有自己所屬的位置。
然而《計算機程序的構造和解釋》與這些不同。 這是一本會啟發你的書,它會燃起你編寫出色程序的熱情; 它還將教會你認識並欣賞美; 它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。
其他書或許會讓你成為一位更出色的程序員,但此書將一定會讓你成為一名程序員。
3、《C程序設計語言》
《C程序設計語言》(第2版新版)原著即為C語言的設計者之一Dennis M.Ritchie和著名的計算機科學家Brian W.Kernighan合著的 一本介紹C語言的權威經典著作。 我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。
原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標准C的基礎。
人們熟知的“hello,world”程序就是由本書首次引入的,現在,這一程序已經成為所有程序設計語言入門的第一課。
4、程序員思維修煉(修訂版)
生命中沒有什麼是一成不變的,人們需要改變自己的習慣和方法。不論你是程序員、軟體公司管理者、技術奇人還是思想家,或者你只是想讓自己的大腦更聰明一點兒,所有嘗試改變自己的人,請把本書當作改變的開始……
5、系統化思維導論
關注人文,掌握思維法則,揭開科學與技術的神秘面紗
“它給我的震撼是第一次我能從全局的角度去看待各個學科,科學也不再是冷冰冰的割裂了的教條,不再是難以理解的一堆符號。”
6、優秀的叛逆者:引領組織變革的力量
Lois Kelly和Carmen Medina用她們的實戰經驗,向我們展示了如何在工作中贏得信賴、提出想法、處理人際關系、管理沖突和保持理智。”
——亞當•格蘭特,沃頓商學院教授,《紐約時報》暢銷書Give and Take的作者
7、《重構:改善既有代碼的設計》
《重構:改善既有代碼的設計》適合軟體開發人員、項目管理人員等閱讀, 也可作為高等院校計算機及相關專業師生的參考讀物。
8、《Site Reliability Engineering》
《SRE:Google運維解密》可以讓讀者學習到Google工程師在提高系統部署規模、改進可靠性和資源利用效率方面的指導思想與具體實踐——這些都是可以立即直接應用的寶貴經驗。任何一個想要創建、擴展大規模集成系統的人都應該閱讀,該書針對如何構建一個可長期維護的系統提供了非常寶貴的實踐經驗。
9、《Refactoring》
那時候當我讀這本《重構:改善既有代碼的設計》時,由於它在關於代碼異味的單獨章節所花的篇幅,使得這本書非常值這個價。該書非常成功,因為它使重構和代碼異味的觀念成為主流。
Steve Yegge曾對這本書不吝贊譽之詞:
2003年10月,我第一次閱讀這本書,有一種不寒而粟的感覺。如果你意識到,當你想離職時,你已經工作5年。轉天我就隨意問周圍:“嗯,你已經讀過重構方面的書,對吧?我只是隨便問問,因為我很久以前讀過,當然不是現在。”在我所調查的20個人中,只有一個人
10、《Peopleware》
在大學時我讀到這本《人件》,該書似乎很令人信服,甚至所有的研究結果都支持該書的觀點:不設置截止日期就比設置截止日期要好;辦公室比隔間要好,等等。所有開發人員跟我討論的時候,基本都贊同這些觀點。
11、《編程珠璣》
盡管我不得不羞愧地承認,書中一半的東西我都沒有理解,但我真的推薦《編程珠璣》,書中有些令人驚奇的東西。 – Matt Warren
12、《修改代碼的藝術》by Michael Feathers
我認為沒有任何一本書能向這本書一樣影響了我的編程觀點。它明確地告訴你如何處理其他人的代碼,含蓄地教會你避免哪些(以及為什麼要避免)。
同意。很多開發人員討論用干凈的石板來編寫軟體。但我想幾乎所有開發人員的某些時候是在吃其他開發人員的狗食。– Bernard Dy
13、《編碼:隱匿在計算機軟硬體背後的語言》
我推薦CharlesPetzold的《編碼》。在這個充滿工具和IDE的年代,很多復雜度已經從程序員那“抽取”走了,這本書一本開眼之作。 –hemil
14、《程序員健康指南》
③ 編程必看的6本書
編程必看的6本書,程序員必須具備的編程思維!
1.《程序員修煉之道》
豆瓣評分: 9.1
全球暢銷,關於程序員的經典必讀書籍之這本書涵蓋了從個人責任、職業發展,到講解各種架構技術,全面闡釋了軟體開發時不同方面的最佳實踐操作和重大陷阱。這本書不僅可以幫助改變編碼的習慣,還可以改變作為一個程序員的性格,值得你反復閱讀。
2.《人月神話》
豆瓣評分:9.0
程序員經典必讀書籍,被視為軟體行業的聖經。在本書中,作者為人們管理的復雜項目提供了最具洞察力的見解,既有很多發人深省的觀點,又有大量軟體工程的實踐。雖然距離書籍的出版已過去了幾十年,但是其中的觀念以及理論仍然具有極高的借鑒價值。
3.《JavaScript權威指南》
豆瓣評分: 9.5
人稱「犀牛書」,學習JavaScript經典之作。本書主要講解了有關JavaScript語言,以及對JavaScript程序中可能用到的慧搜純重要的客戶端API和伺服器端API提供深入的介紹。這本書篇幅較長,書中的理論深入淺出,內容非常詳盡,建議有一定編程基礎的人再去閱讀此書。
4.《Python編程: 從入門到實踐》
豆瓣評分:9.2
Python入門寶藏書籍。本書分為兩個部分: 基礎知識和項目實戰,先是對Python基礎知識循序漸進地學習,再通過一個個優質項目的實戰訓練,培養自己的編程思維,分析問題的技巧和角度。整本書內容十分友好,沒有什麼特別晦澀難懂的知識點,講解也非常到位可以迅速讓小白了解Python。
5.《重構》
豆瓣評分: 9.1
軟體開發「教父」Martin Fowler的經典著作。本書清晰揭示了重構的過程、原理和實踐准則,不失為一本詳實的工具寶典。相較於原版改進了眾多重構手法,接地氣並且更適應時代。閱讀這本書需要一定基礎的JavaScript知識,程序開前咐發人員可以在理解重構概念的基礎上,對自己的編程語言進行針對性的更改。
6.《集體智慧編程》
豆瓣評分:9.0
程序員入門佳作。本書以機器學習與計算統計為基礎,講述了如何挖掘和分析Web上的數據和資源,以及如何分析用戶體驗、市場營銷、個人品味等諸多信息,通過復雜的演算法來獲取、收集並分析用戶的數據以創造新的用戶價值和商業價值。本書內容豐富,實踐性強是一本非常實用的學習Python的寶漏悶典。
④ 電腦編程初學者看什麼書
1、《代碼大全》史蒂夫·邁克康奈爾
「優秀的編程實踐的網路全書,《代碼大全》注重個人技術,其中所有東西加起來,就是我們本能所說的「編寫整潔的代碼」。這本書有 50 頁在談論代碼布局。」 —— Joel Spolsky
對於新手來說,這本書中的觀念有點高階了。到你准備閱讀此書時,你應該已經知道並實踐過書中 99% 的觀滑行念。– esac
2、《程序員修煉之道》安德魯·亨特、大衛·托馬斯
對於那些已經學習過編程機制的程序員來說,這是一本卓越的書。或許他們還是在校生,但對要自己做什麼,還感覺不是很安全。就像草圖和架構之間的差別。
雖然你在學校課堂上學到的是畫圖,你也可以畫的很漂亮,但如果你覺得你不太知道從哪兒下手,如果某人要你獨自畫一個 P2P 的音樂交換網路圖,那這本書就適合你了。—— Joel
3、《計算機程序的構造和解釋》Harold Abelson、 Gerald Jay Sussman、Julie Sussman
《代碼大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。其他像《人件集》、《計算機編程心理學》和《人月神話》這些書會深入軟體開發的心理層面。
其他書籍則處理演算法。這些書都有自己所屬的位置。
然而《計算機程序的構造和解釋》與這些不同。這是一本會啟發你的書,它會燃起你編寫出色程序的熱情;它還將教會你認識並欣賞美。
它會讓你有種敬畏,讓你難以抑制地渴望學習更多的笑舉東西。其他書或許會讓你成為一位更出色的程序員,但此書將一定會讓你成為一名程序員。
4、《C程序設計語言》Brian W. Kernighan / Dennis M. Ritchie
這本書簡潔易讀,會教給你三件事:C 編程語言;如何像程序員一樣信升嘩思考;底層計算模型。
5、《演算法導論》 Thomas H.Cormen/Charles E.Leiserson/Ronald L.Rivest/Clifford Stein
在我看來,代碼只是一個工具,並非精髓。開發軟體的主要部分是創建新演算法或重新實現現有演算法。其他部分則像重新組裝樂高磚塊或創建「管理」層。
我依然夢想這樣的工作,我的大部分時間(>50%)是在寫演算法,其他「管理」細節則留給其他人…… —— Ran Biron
⑤ 自學編程需要哪些入門書籍
1、《實戰Java程序設計》
這是一本既注重實戰,同時也注重底層「內功」訓練的書,非常適合初學者閱讀!