0916~0919_開學季語言展

實戰領域驅動設計:高效軟體開發的正確觀點、應用策略與實作指引

Implementing Domain-Driven Design
  • 9 1152
    1280

活動訊息

想找書的時候,特別想偷看網友的書櫃... 原來大家都在看這本 ↓↓↓

用閱讀開啟視野,讓書成為照亮你人生的光
【金石堂選書】本月推薦您這些好書👉 快來看看

內容簡介

領域驅動設計之父 Eric Evans 親推的必看專書!
「搞笑談軟工」板主 Teddy 專文推薦


關於 [名家名著] 30
領域驅動設計(DDD)是一種軟體開發方法,只要實作得當,可以幫助開發人員設計出高品質的軟體模型,明確地反映出預期業務目標。然而能不能成功實作 DDD,卻是許多 DDD 開發人員所遭遇到的共同難題,對於新接觸 DDD 的人來說更是困難重重。作者 Vaughn Vernon 以一種獨到的方式將 DDD 中的抽象概念統整起來,並做出規範,而這些指導原則,正是實作 DDD 的最佳指引。作者用搭飛機來比喻接觸 DDD 的心情,將 Eric Evans 的《領域驅動設計: 軟體核心複雜度的解決方法》比喻為「從高處俯瞰的視角與寬廣的視野」,而本書則像是一張地圖,其作用是「帶領各位讀者緩緩降落、停穩飛機,走一條熟悉的路線安全到家」。

《實戰領域驅動設計》以由上而下的方式說明 DDD,將戰略模式與基礎的戰術程式設計工具自然地結合起來。Vaughn Vernon 示範了如何在現代軟體架構中實作 DDD,強調業務領域概念的重要性與價值之同時,又不失技術層面上的務實考量。

本書是基於 Eric Evans 的開創性著作《領域驅動設計》一書而來,作者透過我們都熟知的業務領域範例講解如何實作 DDD。所有的原則都搭配真實的 Java 程式範例,對於 C# 程式語言的開發人員也同樣適用,所有的範例內容都來自於一個設想案例:基於一個假想的大型 SaaS 多租戶 Scrum 協作系統的開發案例研究。

本書作者將帶領讀者跨越「DDD-Lite」的侷限,不僅僅是將DDD作為一套技術工具運用,而是透過 Bounded Context、情境地圖、通用語言,充分運用 DDD 的「戰略設計模式」。而透過書中的技術與範例,可以加速軟體開發、提高品質,讓軟體更具靈活性與可擴展性,同時緊密地與業務目標保持一致。

【本書精彩內容】
☑ 以正確的方法踏入 DDD 的世界,就能快速從中獲益
☑ 說明如何將 DDD 運用於不同的架構中,包括六角架構、SOA、REST、CQRS、事件驅動設計以及基於 Data Fabric/網格的架構
☑ 妥善地設計與運用實體,並了解何時該使用值物件而非實體
☑ 學習掌握與運用 DDD 強大的新技術——領域事件
☑ 利用 ORM 與 NoSQL 和其他資料庫等技術來實作 Repository

各界專業人士推薦

「閱讀 DDD 藍皮書時搭配本書一起服用,學習效果更好。此外,本書還包含在 DDD 藍皮書中沒有提到,但後來 DDD 社群廣泛使用的模式,像是領域事件(Domain Event)、事件溯源(Event Sourcing)、六角架構、命令與查詢責任分離(CQRS)等,兼顧深度與廣度,誠意十足。」—Teddy Chen,部落格「搞笑談軟工」板主

我個人的著作《領域驅動設計》(Domain-Driven Design)一書出版近九年,這些年已經累積了不少關於 DDD 的新知識,包括基礎知識新的介紹方式,而 Vaughn 這本書正是對 DDD 有最完整闡述的指引,更為我們帶來了全新的實作觀點。」—Eric Evans,《領域驅動設計》作者

「對於期望提升技術的軟體開發人員來說,想在軟體開發過程中遵循最佳的專業實踐方法來設計與實作領域驅動的企業應用程式,《實戰領域驅動設計》傳授了過去幾十年領域驅動設計和企業應用程式架構社群努力耕耘的寶貴知識。」—Randy Stafford,自由架構設計師,Oracle Coherence 產品開發部門

「對於渴望落實 DDD 設計的人來說,絕對不可錯過本書。」—Udi Daham,NServiceBus 創辦人

 

作者

Vaughn Vernon

Vaughn Vernon 是一名資深的軟體工程師,在軟體設計、開發與架構方面擁有超過 25 年以上的豐富經驗,提倡將創新的方法運用於實作當中並簡化軟體設計。自 1980 年代以來,他一直在從事物件導向語言的程式設計,並於 1990 年代初期還以 Smalltalk 作為領域建模工具的時期開始就致力於領域驅動設計。他在國際間提供軟體開發的諮詢與授課服務,並在許多國家開設「實戰領域驅動設計」的訓練課程。

目錄

推薦序
前言
致謝
本書閱讀指南

Chapter 1 DDD 入門
我能實作 DDD 嗎?
為什麼需要 DDD ?
如何實踐 DDD
採用 DDD 帶來的業務價值
應用 DDD 時會遇到的挑戰
非純屬虛構
本章小結

Chapter 2 領域,子領域,Bounded Context
DDD 的全貌
為何戰略設計這麼重要
實務中的領域與子領域
Bounded Context 的重要性
情境範例
本章小結

Chapter 3 情境地圖
情境地圖的重要性
本章小結

Chapter 4 架構
訪談成功的資訊長
分層架構
六角架構(埠口與轉接器)
服務導向架構
命令與查詢職責分離──CQRS
事件驅動架構
Fata Fabric 與網格分散式運算
本章小結

Chapter 5 實體
為什麼要使用實體
唯一識別值
探索實體與實體固有的特性
本章小結

Chapter 6 值物件
值物件的特性
最低限整合
以值物件表示標準類型
值物件的驗證測試
動手實作
值物件的保存
本章小結

Chapter 7 領域服務
辨認何者是領域服務(要先知道什麼不是領域服務)
確認對領域服務的需求
領域服務建模
測試領域服務
本章小結

Chapter 8 領域事件
領域事件的時機與原因
事件建模
由領域模型發布事件
發布事件給遠端 Bounded Context
Event Store
轉發庫存事件的架構風格
動手實作
本章小結

Chapter 9 模組
運用模組設計
模組命名的基本原則
模型模組的命名規範
敏捷式專案管理情境中的模組
其他架構層中的模組
模組優先,Bounded Context 在後
本章小結

Chapter 10 聚合
將聚合運用於 Scrum 核心領域
原則:在一致性邊界內建模真正的不變量
原則:設計小聚合
原則:以識別值存取其他聚合
原則:在邊界外部使用最終一致性
原則總有例外
從過程中深入理解
實作細節
本章小結

Chapter 11 工廠
領域模型中的工廠
聚合根中的工廠方法
服務中的工廠
本章小結

Chapter 12 Repository
集合導向 Repository
持久性導向的 Repository
額外行為
管理交易階段
型別階層
Repository 與資料存取物件(DAO)
Repository 的測試
本章小結

Chapter 13 整合 Bounded Contexts
整合的基礎知識
透過 RESTful 進行整合
透過訊息機制進行整合
本章小結

Chapter 14 應用程式
使用者介面
應用服務
結合多個 Bounded Context
基礎設施
企業應用服務元件容器
本章小結

Appendix A 聚合與事件溯源(A+ES)
應用服務內部
命令處理器(Command Handler)
Lambda 語法
並行控制
任何結構適用的 A+ES
效能
實作 Event Store
關聯式持久性
BLOB 大型物件持久性
專責聚合
讀取模型映射
與聚合設計結合
事件豐富度
可配合的工具與設計模式
建立合約精神的規範
單元測試與測試規範
事件溯源與函式語言

配送方式

  • 台灣
    • 國內宅配:本島、離島
    • 到店取貨:
      金石堂門市 不限金額免運費
      7-11便利商店 ok便利商店 萊爾富便利商店 全家便利商店
  • 海外
    • 國際快遞:全球
    • 港澳店取:
      ok便利商店 順豐 7-11便利商店

詳細資料

詳細資料

    • 語言
    • 中文繁體
    • 裝訂
    • 紙本平裝
    • ISBN
    • 9786263338159
    • 分級
    • 普通級
    • 頁數
    • 776
    • 商品規格
    • 23.0*18.5*3.5
    • 出版地
    • 台灣
    • 適讀年齡
    • 全齡適讀
    • 注音
    • 級別

商品評價

訂購/退換貨須知

加入金石堂 LINE 官方帳號『完成綁定』,隨時掌握出貨動態:

加入金石堂LINE官方帳號『完成綁定』,隨時掌握出貨動態
金石堂LINE官方帳號綁定教學

提醒您!!
金石堂及銀行均不會請您操作ATM! 如接獲電話要求您前往ATM提款機,請不要聽從指示,以免受騙上當!

退換貨須知:

**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**

  • 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
    1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
    2. 依消費者要求所為之客製化給付。(客製化商品)
    3. 報紙、期刊或雜誌。(含MOOK、外文雜誌)
    4. 經消費者拆封之影音商品或電腦軟體。
    5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
    6. 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
  • 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
  • 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
  • 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
※ 網友掛保證,絕不踩雷書單如下 ↓↓↓
預計 2025/09/29 出貨 購買後進貨 
金石堂門市 全家便利商店 ok便利商店 萊爾富便利商店 7-11便利商店
World wide
活動ing