infoq_InfoQ编辑推荐读物清单
infoq
最近,我們在InfoQ編輯團隊中進行了一次對話,討論了我們最推薦給InfoQ讀者的書籍,這些書籍基于我們認為對程序員,架構師和管理人員影響最大的書籍。 這是我們最終同意的十六本書的最終清單,以及其他一些技巧,以及最初建議它們的編輯的評論。
亞歷克斯·布萊維特(Alex Blewitt)
《極限編程入門》(Kent Beck)是XP的不錯的入門,即使您不贊成“敏捷萬能”的方法,也可以很好地閱讀。 可能不是參考文獻。
我的參考指南是《算法入門》 (Cormen / Leiserson / Rivest / Stein),這本書非常密集,但非常有價值。
約翰·史密斯(John Smith) 陷入困境的IT項目可能是您以前從未遇到過的項目,但實際上解釋了在管理項目時可能出錯的許多事情。 作為您當前正在研究的項目的記分卡,它也很有趣...
不過,我認為可能值得觀察的是,這取決于您對哪種書類型(或應該被推薦)的經驗水平。 肯特(Kent)的XP書適合新手和不熟悉敏捷的人使用,但科克本(Cockburn)的書可能更適合經驗豐富的人。 同樣,我不會對完整的新手進行算法介紹,但是,如果您想知道如何實現B樹或理解算法的復雜性度量,則必不可少。
黛博拉·哈特曼
在敏捷軟件開發的高度協作環境中,Jean Tabaka撰寫的《 協作說明:軟件項目負責人的便利技能》一書提供了解決棘手的管理問題(如沖突,人際溝通和時間限制)的答案。 如果您討厭會議和/或認為會議應該有所改善,那么您必須閱讀本書-無論您是否參與敏捷項目!
查爾斯·漢布爾
Harold Abelson,Gerald Jay Sussman和Julie Sussman編寫的計算機程序的結構和解釋 :幾年前,當我與朋友聊天時,我被推薦為“ SIC-P”,因為我的編碼能力似乎已經達到平臺。 這不是一本特別容易的書,如果您正在尋找快速解決問題的方法,那么這不是您想要的書。 但是,這是有益的,密集的閱讀,它可能對我的編碼的影響要大于我所閱讀的其他內容。
Erich Gamma,Richard Helm,Ralph Johnson和John Vlissides撰寫的《 Design Patterns》是SIC-P的一本不錯的后續書籍,盡管我承認我第一次閱讀時并不喜歡它。 無可否認,盡管它在一處獲得了豐富的面向對象設計專業知識,但我最初感到其中很多是有趣的理論,我永遠不會真正使用。 隨著時間的流逝,盡管我越來越喜歡這些想法,但是當我堅持進行一些設計工作時,我仍然會經常引用它。 強烈推薦。
馬克·萊文森
敏捷軟件開發: Alistair Cockburn撰寫的合作游戲(第二版) 。 可能是我讀過的關于敏捷軟件開發的最有趣的書。 它與任何一種方法都不相關,而是Alistair分析游戲性,個人溝通,團隊合作:所有軟件開發的核心要素。 該書還包括有關軟件外部敏捷性的部分,對各種方法的概述以及更多內容。
喬恩·卡岑巴赫(Jon Katzenbach)和道格拉斯·史密斯(Douglas Smith)所著的《團隊的智慧》 -敏捷前的一本書,卡岑巴赫和史密斯研究了許多行業中的真正團隊,對這些團隊成功的成因提出了一些真實的分析和嚴格要求。 到本書結尾,您將發現“沒有什么可以保證高績效團隊的建立。您可以做的最好的事情就是創造條件,以幫助他們形成。” 這本書是我的系列《 Scrum為什么起作用》的核心。
斯里尼·彭奇卡拉
《企業應用程序體系結構的模式》,作者 :Martin Fowler:我喜歡這本書,因為它是有關架構師或開發人員在進行典型軟件開發項目時遇到的幾乎所有設計問題的唯一信息資源。 它可能是最好的模式書(連同“四個設計模式”一書 ),涵蓋了領域邏輯,表示層,管理會話狀態以及對象關系結構和行為模式等主題。 像任何好的資源一樣,無論您仍在使用EJB3之前的J2EE技術??,JEE還是輕量級的框架(如Hibernate和Spring)或.NET應用程序,本書中討論的模式都是相關且有效的。 每個開發人員都必須閱讀和擁有的書籍。
埃里克·埃文斯(Eric Evans)的領域驅動設計 :自從2004年發行以來,這本書一直對軟件開發社區有很好的參考。它強調了使業務領域與軟件設計和開發保持一致的重要性。 所討論的一些概念,例如無處不在的語言,模型驅動的設計,有界的上下文和反腐敗層,可以在任何中型到大型商業域中使用,以管理域模型的復雜性。 閱讀本書之后,我開始在適用的項目中應用DDD原理,并且我成功地消除了貧乏的領域模型并以一種更加面向對象的方式處理業務邏輯。 本書中討論的概念與技術和框架無關,因此可以將它們應用于基于Java,.NET或其他技術的任何軟件開發項目中。 同樣,這本書是我去年發表的“領域驅動的設計和開發實踐” 文章的主要靈感。 對于參與創建或管理業務域的任何軟件開發人員來說,這本書都是必讀的。
企業集成模式:設計,構建和部署消息解決方案作者:Gregor Hohpe和Bobby Woolf:自2004年首次閱讀本書以來,這一直是我最喜歡的書之一。 作者很好地組織和描述了幾種異步設計模式,這些模式在每天的企業應用程序中非常有用,尤其是那些涉及多系統集成的應用程序。 核心討論是關于各種集成樣式,包括“消息傳遞”,這是異步通信模式的核心。 本書中的示例包括流行的貸款經紀人流程應用程序,該應用程序已在幾個最新的ESB框架中實現。 本書是對最近大多數SOA集成和ESB框架(例如ServiceMix , Mule和Spring Integration )的啟發,它們支持本書中討論的集成模式。
Peopleware-湯姆·德馬可(Tom DeMarco)和提摩西·李斯特(Timothy Lister)的生產性項目和團隊 :去年,在一位朋友推薦之后,我讀了這本書。 我不得不說這是我讀過的最有影響力的書之一。 在這本書中,作者借助行業示例,調查和統計數據表明,軟件開發中的主要問題是人為的(因此稱為Peopleware),而不是技術(如硬件或軟件)。 他們的理論是,開發人員,設計師和其他腦力勞動者達到一種稱為“流程”的狀態,他們可以在解決復雜問題上取得長足的進步。 但是任何中斷(無論是電子郵件,電話還是漫游)都將中斷該流程,并且需要一段時間(根據統計數據平均需要15分鐘)才能再次返回該流程。 根據作者的說法,經理的工作不是使團隊成員工作,而是使他們能夠工作。 自從本書首次出版以來已經有20多年的時間了,即使在所有新的軟件開發技術和框架以及敏捷項目管理方法論出現之后,本書中討論的概念仍然具??有相關性和有效性。 這是每位經理和負責領導團隊成員的團隊領導者必讀的書。 我強烈建議每位軟件管理員閱讀這本書-不止一次。
沃納·舒斯特(Werner Schuster)
務實的思維和學習:安迪·亨特(Andy Hunt) 重構您的垃圾軟件將務實的程序員的觀點帶到了最終平臺:我們頭的灰質。 它包含許多使用Dreyfus學習模型來幫助改善學習,工作等的方法。
機器內部:喬恩·斯托克斯(Jon Stokes)的微處理器和計算機體系結構插圖集,收集了Ars Technica關于CPU和其他技術的多年文章。 喬恩·斯托克斯(Jon Stokes,“漢尼拔”)破解了CPU的黑匣子,并指出了一些有趣的地方-他在現代CPU(例如最近的x86和Power CPU)中做到了。 知道指令融合如何幫助提高重排序緩沖區效率對于冷卻器的討論非常有用-但是了解內存層次結構和緩存行為如何影響現代CPU的性能可能只會幫助您優化自己。
也可以看看HOPL會議的會議記錄 。 許多論文可以在線獲得,也可以印刷形式獲得。 似乎C式,命令式,花括號語言的單調世界可能被各種范式所加深。 隨著這些事情的發展:未來的語言或想法已經存在了數十年。 HOPL論文是許多語言的詳細歷史,這些語言要么曾引起人們的關注,要么可能會來臨,例如Smalltalk,Erlang,Lua,LISP或許多其他語言。
艾倫·凱(Alan Kay)關于“小話的早期歷史”的論文提供了很多信息。 我每年都開始重新閱讀它-不知何故我總是找到新的東西。 在上一讀中,我意識到基于Actors模型的原始Smalltalk到底有多少。
HOPL的論文顯然主要是關于歷史的-但是我發現許多開發人員甚至都沒有發生過的事件和以前開發的技術的基本知識(哦,1995年)。向“有經驗的”開發人員展示40年的技術有點令人不安并看到他們難以置信地喘著粗氣(這樣做的好處是看起來像普羅米修斯,上面舉著新奇的禮物,盡管很快就很無聊)。
瑞安·斯洛博揚(Ryan Slobojan)
有效的Java由約書亞·布洛克:有效的Java被廣泛推崇為Java開發的圣經之一。 它不僅使讀者理解語言,如許多其他書籍一樣,而且了解如何最有效地利用Java語言和API創建快速,可靠,可擴展和可維護的軟件。 許多原則也適用于其他編程語言,因為良好的軟件設計的許多原則都是通用的。 我發現,在閱讀本書之后,我以另一種眼光看待了我編寫的代碼-變得更易于閱讀,總的代碼行更少,并且稍后再閱讀時更易于修復錯誤。 。 對于以Java語言進行開發的任何人,我認為這本書都是必讀的書-它不僅告訴您其中的內容,而且還告訴您何時以及如何最有效地使用它。
斯蒂芬·蒂爾科夫(Stefan Tilkov)
我最近讀過的最好的書之一是邁克爾·尼加德的《發行》! –充滿了以謀生為生的人的實用建議。 這本書充滿了戰爭故事,顯示了大型系統發生故障的地方,邁克爾利用他豐富的經驗提取了一些常見的反模式,這些問題在幼稚的設計中屢屢發生。 然后,他展示了如何使用適當的模式來解決它們。 我發現這本書非常有趣,僅涉及現實生活中的軼事,并且在您每次構建真正需要工作的系統時都提供了實用的建議。
翻譯自: https://www.infoq.com/articles/recommended_reading_list/?topicPageSponsorship=c1246725-b0a7-43a6-9ef9-68102c8d48e1
infoq
總結
以上是生活随笔為你收集整理的infoq_InfoQ编辑推荐读物清单的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [DIY]制作Cisco IP电话耳机连
- 下一篇: 安科瑞消防应急照明和疏散指示系统在城市隧