閱讀66 返回首頁    go 阿裏雲 go 技術社區[雲棲]


IT人的架構書單:如何賦予軟件以靈魂

與在這個世界上已經存在了幾千年曆史的建築業相比,IT業或者說軟件業幾十年的曆史顯得微不足道。但是IT行業或許已經成為目前對於世界影響最大的行業之一,我們的生活和工作中隨處都是軟件,可以說我們已經無法離開軟件生活。清晨,伴隨著智能手機的鬧鈴起床,通過天氣軟件獲取今天的天氣確定是否需要攜帶雨具,吃過早餐離開家,這時家中的智能掃地機就開始定時清潔衛生了,上班路上可能打開了社交軟件看朋友們發布的動態或者新聞事件,達到公司通過智能打卡機打卡上班,到達工位你打開了電子郵箱,開始了一天的工作...可以說軟件產品已經緊密地融入到了我們的生活和工作中。而且在未來,隨著商業智能和人工智能的發展,軟件的範圍將會無限延伸。


未來,軟件開發人員的作用也將變得更加重要,有句話叫做“不想當將軍的士兵不是好士兵”,那麼在IT界這句話就要換成“不想當CTO的軟件工程師不是好程序員”,而對於一個開發人員而言,在成為CTO之前還需要經曆無數的曆練,其中重要的一步就是從程序員成長為架構師。我們無法給架構下一個簡單的定義,因為任何定義都會束縛你對架構的無限想象。不可否認,架構師早已出現在人類幾千年前的各項生產活動中,比如建築、音樂。而在計算機軟件領域,架構的設計直接影響著係統的生產,比如開發過程和效率、代碼和組件複用性等,同時也影響著係統的可用性、可伸縮性、性能、容量可預測性等。在我看來,架構師其實就和建築業中的建築設計師一樣,他們負責規劃整個“產品”的“圖紙”,驗證各種設想的可能性,但是不會親自去“搬磚”建房子。想要成長為一名合格的軟件架構師,需要經過無數實戰的曆練,也需要在前行的路上不斷學習和總結。本文就為大家整理一些關於軟件架構的書籍,希望能夠在走向架構師的路上伴你前行。


《設計原本:計算機科學巨匠Frederick P.Brooks的反思》 —— Frederick P.Brooks Jr.

8fd784acd84a1ed283a32f270f41b9da5a407c9b如果說《人月神話》是近40年來所有軟件開發工程師和項目經理們必讀的一本書,那麼《設計原本:計算機科學巨匠Frederick P.Brooks的反思》將會是未來數十年內從事軟件行業的程序員、項目經理和架構師必讀的一本書。它是《人月神話》作者、著名計算機科學家、軟件工程教父、美國兩院院士、圖靈獎和IEEE計算機先驅獎得主Brooks畢生經驗的結晶。這本書從工程師和架構師的視角深入地探討了設計的和過程,旨在提高產品的實用性與有效性,以及設計的效率和優雅性。全書共分為6個部分:第一部分主要討論了什麼是設計、設計過程的思考、設計的類別、理性模型及其缺陷、以及對一些好的設計過程模型的探討;第二部分主要討論了協作設計與遠程協作;第三部分全麵總結了設計中的各種原則、經驗和教訓,包括設計中理性主義與經驗主義、用戶模型、資源預算、約束、設計中的美學與風格、設計中的範本、設計的分離、設計的演變途徑和理由,以及專業設計者為何會犯錯;第四部分探討了建築設計與計算機軟硬件設計在設計思想和方法上的一些共同點和不同之處;第五部分探討了卓越的設計和卓越的設計師之間的關係;第六部分通過各個領域的各種類型的案例進行了分析和研究,旨在深刻揭示隱藏在這些案例背後不變的設計過程和思想。


《架構之美》 —— Diomidis Spinellis, Georgios Gousios

c7c76173d9681f82e075932b2edb32f4f3ab8949健壯、優雅、靈活和易維護的軟件架構是怎樣煉成的?《架構之美》通過一係列優秀的文章回答了這個問題,這些文章來自於十幾位當今一流的軟件設計師和架構師。在每篇文章中,作者都向們展示了一個著名的軟件架構,並分析了什麼讓其具有創新性,讓其極其符合設計目標。《架構之美》圍繞5個主題領域來組織該書的內容:概述、企業應用、係統、終用戶應用和編程語言。《架構之美》讓優秀的設計師和架構師來描述他們選擇的軟件架構,剝開架構的各層,展示他們如何讓軟件做到實現功能、可靠、易用、高效率、可維護、可移植和優雅。那麼如何設計出美麗的架構呢?從代碼邏輯到物理網絡,從單機到分布式,無數的技術可供架構師選擇,如分層、組件化、服務化、標準化、緩存、分離、隊列、複製、冗餘、代理等,不過它們仍然隻是“術”的範疇,而何時何處如何恰到好處地使用它們才是“道”的範疇,比如頓悟變化的道理,在博弈中尋找平衡,以係統化的角度來分析問題,尋找相對與絕對的奧秘、開放的心態……



《企業應用架構模式》 ——  Ma riin Fowler

7649c2a07404bc088fe50ce5765ea98477497ced企業應用開發的實踐得益於多種新技術的出現,多層的麵向對象平台已經日漸平常。這些新工具和新技術有能力構建更強大的企業應用程序,但是在實現上還不太容易。由於開發人員未能充分理解有經驗的對象程序開發人員在架構方麵的經驗和教訓.因此企業應用中經常存在一些共同的錯誤。《企業應用架構模式》就是麵向企業應用開發者的,可幫助他們迎接這種艱難挑戰,這本書的作者Ma riin Fowler注意到,盡管技術本身存在變化——從Smalltalk到CORBA,再到Java和.NET,但基本的設計思想並沒有太多變化,可以加以適當調整,用來解決那些共同的問題。在一組專家級合作者的幫助下,作者將40多種經常出現的解決方案轉化成模式,最終寫成這本能夠應用於任何一種企業應用平台的、關於解決方案的、不可或缺的手冊。《企業應用架構模式》涉及兩部分內容。第一部分是關於如何開發企業應用的簡單介紹。在閱讀這部分時,讀者可以從頭到尾通讀。第二部分是《企業應用架構模式》的主體,是關於模式的詳細參考手冊,每個模式都給出使用方法和實現信息,並配有詳細的Java代碼或C#代碼的示例。此外,整本書中還用了大量UML圖來進一步闡明有關概念。


《恰如其分的軟件架構》 —— George Fairbanks

7c2abe9717640ff8081614b40e5857dc513d2b5f《恰如其分的軟件架構》描述了一種恰如其分的架構設計方法。作者建議根據項目麵臨的風險來調整架構設計的成本,並從多個視角闡述了軟件架構的建模過程和方法,包括用例模型、概念模型、域模型、設計模型和代碼模型等。本書不僅介紹方法,而且還對方法和概念進行了歸類和闡述,將軟件架構設計融入開發實踐中,與敏捷開發方法有機地結合在一起,適合普通程序員閱讀。Fairbanks把筆墨聚集在“恰如其分”的軟件架構上,這對於每一位想要使架構過程變得更容易的開發人員來說,都是極具吸引力的。《恰如其分的軟件架構》通過詳細的案例和建議,展示了如何用風險驅動來管理架構的建設和範圍,重點突出,易於理解。同時,作者提供了軟件架構學術方麵的很多細節,這對那些對理論和實踐都很感興趣的開發人員非常有益。



《架構即未來:現代企業可擴展的Web架構、流程和組織》 —— MartinL.Abbott,MichaelT.Fisher

d1b4a4ff5018d4f16aeffccd56b335005a70d7f8任何一個持續成長的公司最終都需要解決係統、組織和流程的擴展性問題。本書匯聚了作者超過30年的豐富經驗, 全麵闡釋了經過驗證的信息技術擴展方法,對所需要掌握的產品和服務的平滑擴展做了詳盡的論述,並更新了擴展的策略、技術和案例。針對技術和非技術的決策者, MartinL.Abbott和MichaelT.Fisher詳盡地介紹了影響擴展性的各個方麵,包括架構、過程、組織和技術。通過閱讀本書,你可以學習到以*大化敏捷性和擴展性來優化組織機構的新策略,以及對雲計算(IaaS/PaaS)、NoSQL、DevOps和業務指標等的新見解。而且利用其中的工具和建議,你可以係統化地清除擴展性道路上的障礙,在技術和業務上取得前所未有的成功。《架構即未來》這本書凝聚作者多年來在不同的互聯網公司工作和谘詢過程中積累的豐富經驗,從人、過程、技術三個角度深刻而廣泛地討論了技術管理和技術架構的具體實踐經驗,強調了組織、人員、過程和技術的*佳配合,深入淺出地分析了在技術管理過程中經常遇到的各種具體問題,既講解理論,也佐以實例,讓讀者可以係統地獲得關於技術管理和技術架構方麵的知識和經驗。



《大型網站技術架構 核心原理與案例分析 》 —— 李智慧

889faafc04c783a952c57f8b31ed3042e8a6329c《大型網站技術架構 核心原理與案例分析 》 通過梳理大型網站技術發展曆程,剖析大型網站技術架構模式,深入講述大型互聯網架構設計的核心原理,並通過一組典型網站技術架構設計案例,為讀者呈現一幅包括技術選型、架構設計、性能優化、Web 安全、係統發布、運維監控等在內的大型網站開發全景視圖。這本書不僅適用於指導網站工程師、架構師進行網站技術架構設計,也可用於指導產品經理、項目經理、測試運維人員等了解網站技術架構的基礎概念;還可供包括企業係統開發人員在內的各類軟件開發從業人員借鑒,了解大型網站的解決方案和開發理念。

這本書作者是阿裏巴巴網站構建的親曆者,擁有核心技術部門的一線工作經驗,直接體驗了大型網站構建與發展過程中的種種生與死,蛻與變,見證了一個網站架構從幼稚走向成熟穩定的曆程。沒有晦澀難懂的術語,沒有詰屈聱牙的文句,沒有故弄玄虛的觀點……明明白白的語句,清清楚楚的文法,幹淨利落的建議——讓讀者直接體會網站架構的緊要處,不容馬虎的關鍵點。


《億級流量網站架構核心技術》 —— 張開濤

85b4ec71ee7ce39f0dab6c06b9e23b7fb7bfdb6b《億級流量網站架構核心技術》全稱《億級流量網站架構核心技術——跟開濤學搭建高可用高並發係統》,這本書總結並梳理了億級流量網站高可用和高並發原則,通過實例詳細介紹了如何落地這些原則。本書分為四部分:概述、高可用原則、高並發原則、案例實戰。從負載均衡、限流、降級、隔離、超時與重試、回滾機製、壓測與預案、緩存、池化、異步化、擴容、隊列等多方麵詳細介紹了億級流量網站的架構核心技術,讓讀者看後能快速運用到實踐項目中。不管是軟件開發人員,還是運維人員,通過閱讀《億級流量網站架構核心技術》都能係統地學習實現億級流量網站的架構核心技術,並收獲解決係統問題的思路和方法。如何構建高並發、大流量的係統,不是架構師閉門造車想出來的,是線上實際的用戶流量檢驗的。本書通過大量的實踐案例,告訴讀者如何架構高並發,大流量的網站係統,書中不光有理論探討,也有大量的實際案例。


《架構真經:互聯網技術架構的設計原則》 —— Martin L.Abbott

dbc78e9c7075d827b78343b9a16cbc2a21be5be7《架構真經:互聯網技術架構的設計原則》 是經典著作《架構即未來》的姊妹篇,聚焦於技術架構本身,提供50條久經考驗的互聯網技術架構原則,幾乎可以支持任何高速增長公司的擴展。矽穀著名互聯網企業首席技術官和技術主管現身說法,生動形象地呈現“規則背後的故事”,便於讀者理解並運用這些規則解決實際工作中所麵臨的挑戰。該版全麵更新以反映新的技術趨勢和經驗,而且更容易閱讀、理解和應用。通過Etsy、納斯達克、Salesforce、Shutterfly、Chegg、Warby Parker、推特等著名互聯網企業首席技術官和技術主管現身說法,以易於理解的方式,生動且形象地呈現“規則背後的故事”。通過閱讀本書,在完成並評價技術設計方麵,架構師將學到有效的非技術洞見。開發人員會學到從數據庫到會話狀態的處理技巧。管理人員將在設定目標、做出決策以及與技術團隊互動方麵得到有益的幫助。無論什麼角色,都會得到關於風險與利益平衡的實用指導,通過設置優先級,把計劃付諸行動,從而以低成本獲得比較大的可擴展性。



《DevOps:軟件架構師行動指南 》 —— Len Bass,Ingo Weber

b1706169b46a2e5f8964a4c913edb29f7296835eDevOps為加速新軟件功能的發布和改善對生產環境係統的監控帶來了希望,但是對軟件架構師和軟件架構來說,DevOps的關鍵意義卻常常被忽視。《DevOps:軟件架構師行動指南 》全麵解決了這些問題,不僅剖析了軟件架構師為實現DevOps目標必須要做出的決策,並且說明了DevOps的其他參與者有可能以哪種方式來影響架構師的工作,還詳細介紹了高效部署DevOps所需要的組織、技術和運營環境,以及DevOps對每個開發階段的影響。作者解決了把多個功能關聯起來的橫切關注點問題,提供了對合規性、性能、可靠性、可重複性和安全方麵的切合實際的洞察。橫看成嶺側成峰,遠近高低各不同”。當我們愈是從不同角度和層麵解讀DevOps,就有機會愈加接近DevOps的本質,並正確地指導企業經營和技術實踐。本書少有的從軟件架構層麵係統性地闡述DevOps,令人耳目一新並大唿過癮。



《盡在雙11 阿裏巴巴技術演進與超越 》 —— 阿裏巴巴集團雙⒒技術團隊

a6eb65ce5204e223fe6149e4f929c2cf42095463“雙 11”,誕生於杭州,成長於阿裏,風行於互聯網,成就於新經濟,貢獻於全世界。從 2009 年商城起,雙 11 已曆經八年。每年的雙 11 既是當年的結束,又是走向未來的起點。技術的突破創新,商業模式的更替交互,推動著雙 11 邁步向前。《盡在雙11——阿裏巴巴技術演進與超越》是迄今由阿裏巴巴集團官方出品、全麵闡述雙 11 八年以來在技術和商業上演進和創新曆程的書籍。內容涵蓋在雙 11 背景下阿裏技術架構八年來的演進,如何確保穩定性這條雙 11 生命線的安全和可靠,技術和商業交織發展的曆程,無線和互動的持續創新與突破,以及對商家的賦能和生態的促進與繁榮。這本書主要麵向廣大互聯網技術和商業從業者,內容包括基礎設施、雲計算、大數據、AR/VR、人工智能、物聯網等技術領域的剖析,以及在電商、金融、客服、物流等商業層麵的洞察;同時也可以作為了解科技與商業最新發展的一個窗口,供科研人員和高校在校師生參考。《盡在雙11——阿裏巴巴技術演進與超越》也包含豐富的雙 11 發展曆程中的故事性片段,生動有趣,可讀性強,讀者可以在由衷感歎雙 11 背後艱辛的演進曆程之餘,更為透徹地體會到阿裏人在技術和商業創新上堅韌不拔、矢誌不渝的精神。


最後更新:2017-05-02 17:01:24

  上一篇:go IT人的技術哲學書單:誰說寫代碼、做產品就不需要參禪悟道?
  下一篇:go IT人的設計書單:如何點石成金