館藏書目查詢 > 書目資料
借閱次數 :

無瑕的程式碼. 整潔的軟體設計與架構篇 /

  • 點閱:326
  • 評分:1
  • 評論:0
  • 引用:0
  • 轉寄:0



  • 書籤:
轉寄 列印
第1級人氣樹(7)
人氣指樹
  • 館藏
  • 簡介
  • 作者簡介
  • 收藏(0)
  • 評論(0)
  • 評分(1)

《名家名著》00  《無瑕的程式碼──整潔的軟體設計與架構篇》工程師︰我已經拜讀了《Clean Code》,還有必要讀《Clean Architecture》嗎?架構師︰喔,你會做磚頭,那你會蓋房子嗎?~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~將近10年的等待,全球知名作家Uncle Bob終於推出新作品《Clean Architecture》,由書名很容易就能猜到,這本書和《Clean Code》一定有關。沒錯,這兩本書是有些相同,但又有很大的不同。相同之處在於,這兩本書都是在教導軟體工程師如何正確開發出好的軟體,甚至兩本書提到的原則名稱有些還是相同的。不同之處在於,即便是相同的原則,但在不同層次上使用時,要注意的地方截然不同。總結來說,好的軟體系統始於整潔的程式碼(clean code),但光是這樣還不夠。也就是說,如果磚塊做得不好,那麼建築物的架構也就不重要了。但就另一方面來說,你也能用精心製作的磚塊來製造大量的垃圾,這本書就是要避免你製造垃圾。因此,除了閱讀《Clean Code》之外,你還需要閱讀《Clean Architecture》!再次地,Robert C. Martin以大師強而有力的口吻,極具說服力的文字來撰寫這本書,透過這本書教您如何建構好軟體的架構,釐清什麼是架構,以及認清獨立部署和獨立開發的重要性。如果您想開發的是企業級的軟體,那就千萬不可錯過這本書。本書將徹底顛覆您的許多觀點,例如微服務是個架構嗎?C語言沒有多型嗎(多型是物件導向發明的嗎)?C語言和C++的封裝相比,誰比較完美?軟體是數學還是科學?什麼是測試的本質?你應該使用框架嗎?關聯式資料庫為何會流行,是否已日暮途窮了呢?你可以先試著回答這些問題,然後在閱讀本書之後,再次審思這些問題,相信大多數的人,要答對一半都很困難。如果您自許成為一位專業的軟體工程師,強烈建議您,一定要好好詳讀這本書。~~~~~~~~~~~~~~關於架構~~~~~~~~~~~~~~架構代表了塑造系統的「重要」設計決策,有多「重要」則是由因應變化的成本來衡量的。Grady Booch ──《Object-Oriented Analysis and Design with Applications》作者如果你認為好架構的代價是昂貴的,那不妨試試糟糕的架構。Brian Foote and Joseph Yoder ──《Pattern Languages of Program Design 4》作者架構是你希望在專案早期就能得到的決定,但你並不一定能比其他任何時候更容易得到它們。Ralph Johnson ──《Design Patterns: Elements of Reusable Object-Oriented Software》作者架構是一個假設,需要透過實作和度量來證明。Tom Gilb ──《Competitive Engineering: A Handbook For Systems Engineering, Requirements Engineering, and Software Engineering Using Planguag》作者走得快的唯一方法就是走得好。Robert C. Martin── 軟體大師,《Clean Code》、《無瑕的程式碼》系列書作者,會做磚頭有什麼了不起,會蓋房子才厲害。《博碩文化》、《名家名著》 總編輯 ── 陳錦輝

《名家名著》00  《無瑕的程式碼──整潔的軟體設計與架構篇》工程師︰我已經拜讀了《Clean Code》,還有必要讀《Clean Architecture》嗎?架構師︰喔,你會做磚頭,那你會蓋房子嗎?~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~將近10年的等待,全球知名作家Uncle Bob終於推出新作品《Clean Architecture》,由書名很容易就能猜到,這本書和《Clean Code》一定有關。沒錯,這兩本書是有些相同,但又有很大的不同。相同之處在於,這兩本書都是在教導軟體工程師如何正確開發出好的軟體,甚至兩本書提到的原則名稱有些還是相同的。不同之處在於,即便是相同的原則,但在不同層次上使用時,要注意的地方截然不同。總結來說,好的軟體系統始於整潔的程式碼(clean code),但光是這樣還不夠。也就是說,如果磚塊做得不好,那麼建築物的架構也就不重要了。但就另一方面來說,你也能用精心製作的磚塊來製造大量的垃圾,這本書就是要避免你製造垃圾。因此,除了閱讀《Clean Code》之外,你還需要閱讀《Clean Architecture》!再次地,Robert C. Martin以大師強而有力的口吻,極具說服力的文字來撰寫這本書,透過這本書教您如何建構好軟體的架構,釐清什麼是架構,以及認清獨立部署和獨立開發的重要性。如果您想開發的是企業級的軟體,那就千萬不可錯過這本書。本書將徹底顛覆您的許多觀點,例如微服務是個架構嗎?C語言沒有多型嗎(多型是物件導向發明的嗎)?C語言和C++的封裝相比,誰比較完美?軟體是數學還是科學?什麼是測試的本質?你應該使用框架嗎?關聯式資料庫為何會流行,是否已日暮途窮了呢?你可以先試著回答這些問題,然後在閱讀本書之後,再次審思這些問題,相信大多數的人,要答對一半都很困難。如果您自許成為一位專業的軟體工程師,強烈建議您,一定要好好詳讀這本書。~~~~~~~~~~~~~~關於架構~~~~~~~~~~~~~~架構代表了塑造系統的「重要」設計決策,有多「重要」則是由因應變化的成本來衡量的。Grady Booch ──《Object-Oriented Analysis and Design with Applications》作者如果你認為好架構的代價是昂貴的,那不妨試試糟糕的架構。Brian Foote and Joseph Yoder ──《Pattern Languages of Program Design 4》作者架構是你希望在專案早期就能得到的決定,但你並不一定能比其他任何時候更容易得到它們。Ralph Johnson ──《Design Patterns: Elements of Reusable Object-Oriented Software》作者架構是一個假設,需要透過實作和度量來證明。Tom Gilb ──《Competitive Engineering: A Handbook For Systems Engineering, Requirements Engineering, and Software Engineering Using Planguag》作者走得快的唯一方法就是走得好。Robert C. Martin── 軟體大師,《Clean Code》、《無瑕的程式碼》系列書作者,會做磚頭有什麼了不起,會蓋房子才厲害。《博碩文化》、《名家名著》 總編輯 ── 陳錦輝 Robert C. Martin:人稱Uncle Bob,程式設計經驗超過40年,Agile Software(敏捷軟體開發)的提倡者之一。創立Object Mentor,這是一間專注於C++、Java物件導向、模式、UML、敏捷方法學和極限程式設計的顧問諮詢公司。在這些領域,作者撰寫了相當多的名著,並獲得有IT奧斯卡獎之稱──Jolt震撼年度大獎。其中,最暢銷的是《Clean Code》(中文版為無瑕的程式碼),為Amazon該類別的暢銷榜首,也被國內公認為程式設計師必讀的一本書。 Part I 簡介Chapter 1 什麼是設計與結構Chapter 2 兩種價值觀的故事
Part II 從基礎開始:程式設計範式Chapter 3 範式概述Chapter 4 結構化程式設計Chapter 5 物件導向程式設計Chapter 6 函數式程式設計
Part III 設計原則Chapter 7 SRP:單一職責原則Chapter 8 OCP:開放-封閉原則Chapter 9 LSP:Liskov 替換原則Chapter 10 ISP:介面隔離原則Chapter 11 DIP:依賴反向原則
Part IV 元件原則Chapter 12 元件Chapter 13 元件內聚性Chapter 14 元件耦合性
Part V 架構Chapter 15 什麼是架構Chapter 16 獨立性Chapter 17 邊界:畫線Chapter 18 邊界剖析Chapter 19 策略和層級Chapter 20 業務規則Chapter 21 會尖叫的架構Chapter 22 整潔的架構Chapter 23 Presenter 與Humble ObjectChapter 24 部分邊界Chapter 25 層與邊界Chapter 26 主元件Chapter 27 服務:偉大與微小Chapter 28 測試邊界Chapter 29 整潔的嵌入式架構
Part VI 細節Chapter 30 資料庫是細節Chapter 31 Web是細節Chapter 32 框架是細節Chapter 33 案例研究:影片販售Chapter 34 遺漏的章節
Part VII 附錄Appendix A 架構考古學

此功能為會員專屬功能請先登入
此功能為會員專屬功能請先登入
此功能為會員專屬功能請先登入
此功能為會員專屬功能請先登入