幫助中心 | 我的帳號 | 關於我們

演進式架構(原書第2版)

  • 作者:(美)尼爾·福特//麗貝卡·帕森斯//(英)帕特里克·誇//(美)普拉莫德·薩達拉奇|責編:王春華//馮潤峰|譯者:梁越//夏思雨
  • 出版社:機械工業
  • ISBN:9787111762119
  • 出版日期:2024/09/01
  • 裝幀:平裝
  • 頁數:203
人民幣:RMB 79 元      售價:
放入購物車
加入收藏夾

內容大鋼
    隨著新工具、框架、技術和範式不斷湧現,軟體開發生態系統也在不斷變化。僅在過去五年中,軟體開發核心工程實踐的不斷進步就促使業界認識到架構本身必須如何發展才能滿足不斷變化的用戶需求。本書通過現實世界的案例研究闡明了軟體開發和架構設計日益增長的演進需求,提供了關於適應度函數、自動化架構治理等方面的新技術、知識和技巧,詳盡闡述了演進式架構的工程實踐和使之更容易的結構方法。

作者介紹
(美)尼爾·福特//麗貝卡·帕森斯//(英)帕特里克·誇//(美)普拉莫德·薩達拉奇|責編:王春華//馮潤峰|譯者:梁越//夏思雨

目錄
原書第1版序

前言
第一部分  機制
  第1章  演進軟體架構
    1.1  軟體演進的挑戰
    1.2  演進式架構
      1.2.1  引導式變更
      1.2.2  增量變更
      1.2.3  多種架構維度
    1.3  長期規劃如何應對層出不窮的變化
    1.4  架構構建完成後,如何防止其隨時間推移而退化
    1.5  為何演進
    1.6  小結
  第2章  適應度函數
    2.1  什麼是適應度函數
    2.2  適應度函數分類
      2.2.1  按範圍分類:原子與整體
      2.2.2  按節奏分類:觸髮式、持續式和時間式
      2.2.3  案例研究:觸髮式還是持續式
      2.2.4  按結果分類:靜態與動態
      2.2.5  按調用方式分類:自動與手動
      2.2.6  按響應方式分類:預設式與應急式
      2.2.7  按覆蓋範圍分類:領域特定適應度函數
    2.3  誰來寫適應度函數
    2.4  哪裡有適應度函數測試框架
    2.5  結果與實現
    2.6  小結
  第3章  實現增量變更
    3.1  增量變更
      3.1.1  部署流水線
      3.1.2  案例研究:為PenultimateWidgets的發票服務增加適應度函數
      3.1.3  案例研究:使用自動化構建驗證API的一致性
    3.2  小結
  第4章  自動化架構治理
    4.1  架構治理之適應度函數
    4.2  基於代碼的適應度函數
      4.2.1  傳入/傳出耦合
      4.2.2  抽象性、不穩定性和與主序列的距離
      4.2.3  導入的方向性
      4.2.4  圈複雜度和「引導式」治理
    4.3  即插即用的工具
      4.3.1  開源庫的合法性
      4.3.2  可訪問性和支持的其他架構屬性
      4.3.3  ArchUnit
      4.3.4  代碼治理的lint工具
      4.3.5  案例研究:可用性適應度函數
      4.3.6  案例研究:配合金絲雀發布的負載測試
      4.3.7  案例研究:移植什麼
      4.3.8  已經在使用的適應度函數

    4.4  集成架構
      4.4.1  微服務架構中的通信治理
      4.4.2  案例研究:如何實現適應度函數
    4.5  DevOps
    4.6  企業架構
      4.6.1  案例研究:每天部署60次的架構重構
      4.6.2  保真度適應度函數
    4.7  適應度函數作為清單,而非棍棒
    4.8  記錄適應度函數
    4.9  小結
第二部分  結構
  第5章  演進式架構拓撲
    5.1  可演進的架構結構
      5.1.1  共生性
      5.1.2  共生性與限界上下文的交集
    5.2  架構量子和粒度
      5.2.1  獨立部署
      5.2.2  高功能內聚性
      5.2.3  高靜態耦合
      5.2.4  動態量子耦合
    5.3  契約
      案例研究:微服務作為演進式架構
    5.4  復用模式
      5.4.1  有效的復用=抽象+低變動性
      5.4.2  Sidecar和服務網格:正交操作的耦合
      5.4.3  數據網格:正交數據耦合
    5.5  小結
  第6章  演進式數據
    6.1  演進式資料庫設計
      6.1.1  演進模式
      6.1.2  共享資料庫集成
    6.2  不適當的數據糾纏
      6.2.1  兩段式提交事務
      6.2.2  數據的歷史和質量
      6.2.3  案例研究:演進PenultimateWidgets的路由
    6.3  從原生到適應度函數
      6.3.1  引用完整性
      6.3.2  數據冗余
      6.3.3  替換觸發器和存儲過程
      6.3.4  案例研究:從關係型到非關係型的演進
    6.4  小結
第三部分  影響
  第7章  構建可演進的架構
    7.1  演進式架構的原則
      7.1.1  最後責任時刻
      7.1.2  針對可演進性進行架構設計和開發
      7.1.3  波斯特爾定律
      7.1.4  針對可測試性進行架構設計
      7.1.5  康威定律
    7.2  機制

      7.2.1  步驟1:識別受演進影響的維度
      7.2.2  步驟2:為每個維度定義適應度函數
      7.2.3  步驟3:使用部署流水線自動化適應度函數
    7.3  綠地項目
    7.4  改造現有架構
      7.4.1  適當的耦合和內聚
      7.4.2  商業軟體的影響
    7.5  遷移架構
      7.5.1  遷移步驟
      7.5.2  演進模塊之間的交互
    7.6  構建演進式架構的指南
      7.6.1  消除不必要的變化
      7.6.2  做出可逆的決策
      7.6.3  傾向可演進而非可預測
      7.6.4  構建防腐層
      7.6.5  構建可犧牲的架構
      7.6.6  緩解外部變化
      7.6.7  更新庫而不是框架
      7.6.8  版本服務內部化
      7.6.9  案例研究:演進PenultimateWidgets的評分
    7.7  適應度函數驅動的架構
    7.8  小結
  第8章  演進式架構的陷阱和反模式
    8.1  技術架構
      8.1.1  反模式:最後10%陷阱和低代碼/無代碼
      8.1.2  案例研究:PenultimateWidgets里的復用
      8.1.3  反模式:供應商為王
      8.1.4  陷阱:充滿漏洞的抽象
      8.1.5  陷阱:簡歷驅動開發
    8.2  增量變更
      8.2.1  反模式:不恰當的治理
      8.2.2  案例研究:PenultimateWidgets中恰到好處的治理
      8.2.3  陷阱:發布速度過慢
    8.3  業務因素
      8.3.1  陷阱:產品定製
      8.3.2  反模式:記錄系統之上的報表系統
      8.3.3  陷阱:過於長遠的規劃
    8.4  小結
  第9章  實踐演進式架構
    9.1  組織因素
      9.1.1  不要抗拒康威定律
      9.1.2  文化
      9.1.3  試驗文化
      9.1.4  首席財務官和預算
    9.2  業務場景
      9.2.1  假設驅動開發和數據驅動開發
      9.2.2  適應度函數作為試驗媒介
    9.3  構建企業級適應度函數
      9.3.1  案例研究:零日安全漏洞
      9.3.2  在現有集成架構中拆分限界上下文

    9.4  從哪裡開始
      9.4.1  觸手可及的成果
      9.4.2  最高價值優先
      9.4.3  測試
      9.4.4  基礎設施
      9.4.5  案例研究:PenultimateWidgets的企業級架構
    9.5  未來狀態
      9.5.1  使用AI的適應度函數
      9.5.2  生成式測試
    9.6  構建演進式架構的場合
      9.6.1  什麼情況下公司應該構建演進式架構
      9.6.2  什麼情況下公司不需要構建演進式架構
    9.7  小結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032