11.30 每個計算機程序員至少應該讀一次的前五本書籍

程序員書庫(ID:CodingBook) 猿妹編譯

綜合自:https://www.quora.com/What-are-the-top-five-books-every-computer-programmer-should-study-at-least-once


國外知名網站 Quora上曾有一個問題調查: 每個計算機程序員至少應該讀一次的前五本書籍是哪些?這個問題吸引了很多人回答。


每個計算機程序員至少應該讀一次的前五本書籍


其中呼聲最高的回答,得到了93.3K的閱讀,270個贊同者,以下5本書是根據答案裡面排名最靠前的五本書:



1、《編程語言實現模式》


每個計算機程序員至少應該讀一次的前五本書籍


本書是一本很棒的講述編譯原理的書,作者舉例講解已有語言應用的工作機制,拆解、歸納出31種易於理解且常用的設計模式(每種都包括通用數據結構、算法、策略)。雖然示例是用Java編寫的,但相信讀者可以觸類旁通,利用這些設計模式構建針對其他編程語言(既包括特定領域語言,也包括通用編程語言)的應用。


讀者評論:

@匿名:標題的觀點是關於本書的某個評價,覺得再貼切不過。這本書是野路子,不同於任何一本compiler的書,直接了當的描述implementation patterns(前端)。看看這本書的篇幅你就會知道,看了這本書,你並不會得到編譯原理相關的太多知識的。你其實仍然需要一本諸如龍書這樣的書來真正的學習編譯原理相關的知識。不過依照本書中的這些patterns你是可以依葫蘆畫瓢寫出一個所謂vm的。然後你可以思考一下,你究竟是要寫compiler,還是需要用到fundamentals of compiling。



2、《計算機程序的構造和解釋(原書第2版)》


每個計算機程序員至少應該讀一次的前五本書籍


《計算機程序的構造和解釋(原書第2版)》1984年出版,第2版中大部分重要程序設計系統都重新修改並做過測試,包括各種解釋器和編譯器。作者根據其後十餘年的教學實踐,還對其他許多細節做了相應的修改。


讀者評論:

@蒼穹之淚:作者寄語:“看懂難,應用更難!咀嚼咀嚼!” 只看正文:“原來如此”,做下習題:“CTMB”。本書風格,就是為展示廚刀的“簡單”用法,於是把西瓜雕成了一朵花,然後放頭牛出來讓你“解一下”。當然啦,作者說了,你修煉成功後,將晉級為膜法師(Computer Wizard),乃至榮升為有小蜜替你工作(can-do-job)的大佬(Big Wheel)。



3、《算法導論(原書第3版)》


每個計算機程序員至少應該讀一次的前五本書籍


本書選材經典、內容豐富、結構合理、邏輯清晰,對本科生的數據結構課程和研究生的算法課程都是非常實用的教材,在IT專業人員的職業生涯中,本書也是一本案頭必備的參考書或工程實踐手冊。


讀者評論:

@tartaros:看了很久了,有很多幫助。非常經典的教材,雖然很多東西暫時用不上,但開闊了思路。



4、《計算理論導引》


每個計算機程序員至少應該讀一次的前五本書籍


本書由計算理論領域的知名權威 Michael Sipser 所撰寫。他以獨特的視角,系統地介紹了計算理論的三個主要內容:自動機與語言、可計算性理論和計算複雜性理論。


讀者評論:

@陳炬:讓人瞭解計算機的本質,它的能力與它的侷限性。計算理論課的教材,上課上的很累,但很有收穫。我覺得沒讀過這本書的不好意思說自己是Computer Science專業畢業的。



5、《人工智能》


每個計算機程序員至少應該讀一次的前五本書籍


本書最新版全面而系統地介紹了人工智能的理論和實踐,闡述了人工智能領域的核心內容,並深入介紹了各個主要的研究方向。全書仍分為八大部分:第一部分“人工智能”,第二部分“問題求解”,第三部分“知識與推理”,第四部分“規劃”,第五部分“不確定知識與推理”,第六部分“學習”,第七部分“通信、感知與行動”,第八部分“結論”。


讀者評論:

@匿名:國內的人民郵電出過一本中譯版,說老實話翻譯的很差,非常影響閱讀,如果真的有心讀這本書的話,還是要看英文原版,這本書是一本指導性的AI書籍,哪個方向都涉及的不深,不過當需要查閱資料,尤其是概念性的資料的時候,這本書卻是一個很不錯的選擇


分享到:


相關文章: