API設計模式|簡化整合的訊息交換技術

    本書綜合了理論與實務,包含許多深度見解但不失大局觀。這些見解基於豐富的實務經驗,並以嚴謹的學術方式撰寫,同時結合從業人員的回饋。我深信本書會為社群帶來幫助。

    Collecting
    US$26.60

    內容簡介


    「本書綜合了理論與實務,包含許多深度見解但不失大局觀。這些見解基於豐富的實務經驗,並以嚴謹的學術方式撰寫,同時結合從業人員的回饋。我深信本書會為社群帶來幫助。」
    —PROF. DR. DR. H. C. FRANK LEYMANN, MANAGING DIRECTOR,
    INSTITUTE OF ARCHITECTURE OF APPLICATION SYSTEMS, UNIVERSITY OF STUTTGART

    適用於任何領域、技術或平台的API設計模式

    API為各組織及生態系帶來突破性創新及數位轉型。架構師、設計師及開發者們需要專業設計指南,以建立友善、可信賴且高效的API。本書解決複雜的API通訊及內容,介紹可用於任何技術或平台的API設計方針。

    集結五位作者撰寫的專業內容,從專案啟動、設定目標,到定義需求、細化設計、規劃演進以及建立實用文件,涵蓋整個API生命週期。本書將眾多實務者的集體智慧整合為44個API設計模式,使用背景、優缺點、概念解決方案及具體範例來解釋,並以兩個不同產業的專案,就領域模型、執行案例、決策敘事及套用模式作一致性解釋,使這些設計模式更易理解。

    ‧以設計模式識別及克服API設計挑戰
    ‧合理擴增API端點及服務
    ‧設計請求和回應訊息的形式
    ‧提升訊息設計品質
    ‧API演進計畫
    ‧API文件撰寫及溝通
    ‧結合設計模式以解決實際問題,並做出最佳取捨


    撰寫本書的團隊是架構師和開發人員的黃金組合,由經驗豐富的產業專家、模式社群領導者,以及學界研究員與講師所組成。作者們忠實地運用模式概念,將從包含設計力的問題情境中帶往概念性解決方案,包括具體的範例以及相關的模式建議。

    許多模式都透過模式會議的指導與寫作者研討會,漸進且反覆地改善與加強,從中凝聚眾人知識得到結論。

    本書提供多種API設計空間觀點,從規模與架構到訊息表現結構和品質屬性驅動設計,再到API演進。其模式語言可透過不同的途徑來瀏覽,包括專案階段和結構元素。全書分以五種類別共介紹44種模式,每個模式都有專屬的圖示幫助表達其本質,用作為助記符號及描繪API與其元素。

    本書在提供決策模型中採取了獨特且新穎的一步,蒐集關於應用程式的重複出現問題、選項及標準,提供逐步、容易遵循的設計指南,且不會過度簡化API設計固有的複雜性。

    本書結合理論與豐富的實務經驗為基礎,包含大量有價值的深刻建議而不失大局,並以學術性的嚴謹和從業人員社群的回饋方式記錄。不論是現在或是未來,與API設計與演進有關的研究、開發及教育的API設計人員,都將從模式中獲益。

    作者介紹


    Olaf Zimmermann 是軟體架構教授、國際開放標準組織TOG的傑出IT架構師,同時也是IEEE Software Insights專欄的共同編輯,他的專長是應用整合和微服務。Mirko Stocker 是軟體工程教授,專精於Web開發和雲端解決方案。
    Daniel Lübke 是獨立程式設計師和架構顧問,專業為商業流程自動化和數位化專案。Uwe Zdun 是軟體架構教授,專注於分散式系統工程、DevOps、設計模式、建模和實證軟體工程。Cesare Pautasso 是大學教授,領導架構、設計和網路資訊系統工程研究小組。

    本書作者們都是活躍的設計模式寫作工作坊社群成員,帶領著其他作者、在多個程式委員會服務及主持研討會。

    目錄


    叢書編輯 Vaughn Vernon推薦序
    Frank Leymann推薦序
    前言
    致謝
    關於作者

    Part 1 基礎及敘事
    第1章 應用程式介面(API)基礎
    從本地介面到遠端API
    API 設計中的決策驅動要素
    遠端API領域模型

    第2章 Lakeside Mutual案例研究
    業務背景及需求
    架構概觀
    API設計活動
    API規範目標

    第3章 API決策敘事
    序幕:以模式作為決策選項,力量作為決策準則
    基礎API決策與模式
    API角色及職責決策
    選擇訊息表現模式
    插曲:Lakeside Mutual案例的職責及結構模式
    治理API品質
    API品質改善決策
    API演進決策
    插曲:Lakeside Mutual案例的品質及演進模式

    Part 2 模式

    第4章 模式語言介紹
    定位及範圍
    模式:原因及方法
    模式導覽
    基礎:API 可見性與整合類型
    基本結構模式

    第5章 定義端點型態與操作
    API角色與職責介紹
    端點角色(又稱服務粒度)
    操作職責

    第6章 設計請求與回應訊息表現
    訊息表現設計介紹
    元素刻板
    特殊目的表現

    第7章 改善訊息設計品質
    API品質介紹
    訊息粒度
    客戶端驅動訊息內容(即:回應塑形)
    訊息交換最佳化(即:溝通效率)

    第8章 演進 API
    API演進介紹
    版本控制和相容性管理
    生命週期管理保證

    第9章 API規約文件與傳達
    API文件介紹
    文件模式

    Part 3 模式實戰(現在和過去)

    第10章 真實世界的模式故事
    瑞士抵押貸款業務的大規模業務流程整合
    建築營造業的報價和訂單處理

    第 11 章 結論
    簡短回顧
    API研究:模式重構,MDSL及更多
    API的未來
    其他資源
    最終備註

    附錄A 端點識別與模式選擇指南
    附錄B Lakeside Mutual案例實現
    附錄C 微服務領域特定語言(MDSL)

    Content

    1-1封面頁
    1-2書名頁
    1-3對本書的讚譽
    1-4Pearson 對多元、平等和包容的承諾
    1-5目錄
    1-6叢書編輯Vaughn Vernon 推薦序
    1-7Frank Leymann 推薦序
    1-8前言
    1-9致謝
    1-10關於作者
    1-11Part 1基礎及敘事
    1-12Ch01 應用程式介面(API)基礎
    1-13從本地介面到遠端API
    1-14遠端API 及分散式系統的簡史
    1-15遠端API:透過整合協議存取服務
    1-16API 的重要性
    1-17API 設計中的決策驅動要素
    1-18API 成功的原因?
    1-19API 設計的差異?
    1-20API 設計的挑戰?
    1-21架構的明顯需求
    1-22開發者體驗
    1-23遠端API 領域模型
    1-24通訊參與者
    1-25端點提供操作規約
    1-26訊息作為會話建構方塊
    1-27訊息結構與表現
    1-28API 規約
    1-29本書使用的領域模型
    1-30總結
    1-31Ch02 Lakeside Mutual 案例研究
    1-32業務背景及需求
    1-33使用者故事與期望品質
    1-34分析層級的領域模型
    1-35架構概觀
    1-36系統背景
    1-37應用程式架構
    1-38API 設計活動
    1-39API 規範目標
    1-40總結
    1-41Ch03 API 決策敘事
    1-42序幕:以模式作為決策選項,力量作為決策準則
    1-43基礎API 決策與模式
    1-44API 可見性
    1-45API 整合類型
    1-46API 文件
    1-47API 角色及職責決策
    1-48API 端點的架構角色
    1-49改善資訊持有者角色
    1-50定義操作職責
    1-51選擇訊息表現模式
    1-52表現元素的扁平vs 巢狀結構
    1-53元素刻板
    1-54插曲:Lakeside Mutual 案例的職責及結構模式
    1-55治理API 品質
    1-56API 客戶端的識別與驗證
    1-57API 消費計量及收費
    1-58防止客戶端過度使用API
    1-59明確的品質目標與罰則規範
    1-60錯誤通訊
    1-61明確上下文表示
    1-62API 品質改善決策
    1-63分頁
    1-64其他避免不必要資料傳輸的方式
    1-65處理訊息中的參照資料
    1-66API 演進決策
    1-67版本控制與相容性管理
    1-68引用與停用策略
    1-69插曲:Lakeside Mutual 案例的品質及演進模式
    1-70總結
    1-71Part 2模式
    1-72Ch04 模式語言介紹
    1-73定位及範圍
    1-74模式:原因及方法
    1-75模式導覽
    1-76結構組織:以範圍找出模式
    1-77主題種類:搜尋主題
    1-78時間維度:遵循設計改善步驟
    1-79導覽方式:MAP 地圖
    1-80基礎:API 可見性與整合類型
    1-81模式:前端整合
    1-82模式:後端整合
    1-83模式:公開API
    1-84模式:社群API
    1-85模式:解決方案內部API
    1-86基礎模式總結
    1-87基本結構模式
    1-88模式:原子參數
    1-89模式:原子參數列表
    1-90模式:參數樹
    1-91模式:參數森林
    1-92基本結構模式總結
    1-93總結
    1-94Ch05 定義端點型態與操作
    1-95API 角色與職責介紹
    1-96挑戰與品質期望
    1-97本章模式
    1-98端點角色(又稱服務粒度)
    1-99模式:處理資源
    1-100模式:資訊持有者資源
    1-101模式:可操作資料持有者
    1-102模式:主資料持有者
    1-103模式:參照資料持有者
    1-104模式:連結查詢資源
    1-105模式:資料傳輸資源
    1-106操作職責
    1-107模式:狀態建立操作
    1-108模式:檢索操作
    1-109模式:狀態轉移操作
    1-110模式:計算函式
    1-111總結
    1-112Ch06 設計請求與回應訊息表現
    1-113訊息表現設計介紹
    1-114設計訊息表現時的挑戰
    1-115本章模式
    1-116元素刻板
    1-117模式:資料元素
    1-118模式:元資料元素
    1-119模式:ID 元素
    1-120模式:連結元素
    1-121特殊目的表現
    1-122模式:API 金鑰
    1-123模式:錯誤回報
    1-124模式:上下文表示
    1-125總結
    1-126Ch07 改善訊息設計品質
    1-127API 品質介紹
    1-128改善API 品質的挑戰
    1-129本章模式
    1-130訊息粒度
    1-131模式:嵌入實體
    1-132模式:連結資訊持有者
    1-133客戶端驅動訊息內容(即:回應塑形)
    1-134模式:分頁
    1-135模式:願望清單
    1-136模式:願望模板
    1-137訊息交換最佳化(即:溝通效率)
    1-138模式:條件請求
    1-139模式:請求綑綁
    1-140總結
    1-141Ch08 演進API
    1-142API 演進介紹
    1-143API 演進時的挑戰
    1-144本章模式
    1-145版本控制和相容性管理
    1-146模式:版本識別符
    1-147模式:語義版本控制
    1-148生命週期管理保證
    1-149模式:實驗性預覽
    1-150模式:積極退役
    1-151模式:有限生命週期保證
    1-152模式:雙版本
    1-153總結
    1-154Ch09 API 規約文件與傳達
    1-155API 文件介紹
    1-156撰寫API 文件的挑戰
    1-157本章模式
    1-158文件模式
    1-159模式:API 敘述
    1-160模式:計價方案
    1-161模式:速率限制
    1-162模式:服務水準協議
    1-163總結
    1-164Part 3模式實戰(現在和過去)
    1-165Ch10 真實世界的模式故事
    1-166瑞士抵押貸款業務的大規模業務流程整合
    1-167業務背景和領域
    1-168技術挑戰
    1-169API 角色與狀態
    1-170模式使用與實現
    1-171回顧與展望
    1-172建築營造業的報價和訂單處理
    1-173業務背景和領域
    1-174技術挑戰
    1-175API 的角色與狀態
    1-176模式使用與實現
    1-177回顧與展望
    1-178總結
    1-179Ch11 結論
    1-180簡短回顧
    1-181API 研究:模式重構,MDSL 及更多
    1-182API 的未來
    1-183其他資源
    1-184最終備註
    1-185附錄 A端點識別與模式選擇指南
    1-186附錄 BLakeside Mutual 案例實現
    1-187附錄 C微服務領域特定語言(MDSL)
    1-188參考書目
    1-189索引
    1-190版權頁
    1-191封底頁

    Reviews

    | Collecting

    Sales Plans