 |
|
|
| |
|
實戰領域驅動設計:高效軟體開發的正確觀點、應用策略與實作指引
|
|
|
|
|
|
出版日期:2024-06-05
|
|
ISBN:9786263338159
|
|
定價:1280元
特價:90折!1152元
|
|
|
|
參考分類(CAT):
|
|
參考分類(CIP): 電腦科學
|
|
|
|
|
|
|
|
|
內容簡介 領域驅動設計之父 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 大型物件持久性
專責聚合
讀取模型映射
與聚合設計結合
事件豐富度
可配合的工具與設計模式
建立合約精神的規範
單元測試與測試規範
事件溯源與函式語言
1、五南網路會員所購買的商品均享有取貨7天的鑑賞期﹝包含國定假日、例假日﹞,退換貨之商品必需於取貨7天內辦理退換貨,否則恕不接受退換貨。
2、依照消費者保護法規定,凡消費者於網站購物均享有7天商品鑑賞期,唯需注意辦理退貨商品需保留完整外包裝、附件、外盒等等,才可辦理退貨。
3、如欲退貨,請在鑑賞期內將商品連同發票寄回,每張訂單限退一次。
4、鑑賞期非試用期,若您收到商品經檢視後有任何不合意之處,請立即依照退貨規定辦理退貨
1、若本網站已設團購價,請直接下訂即可。
2、如您需要其他類型產品團購,則請聯繫客服或直接將需求e-mail
至wunan2351960@gmail.com即可
一、購物說明 1.本站商品近60萬筆。(商品圖片、出版日期等相關資訊僅供參考,出貨一律是最新版本) ◎請注意:上架商品不等於一定可以出貨。(會有缺書而訂不到書的狀況,敬請體諒) 2.當您下訂時,我們會向出版訂書(約7-10個工作天)(政府出版品因受限於採購程序,平均補貨作業時間約 2~6週)。如有久候,敬請見諒。當出版社回覆缺書時,我們只能取消您的訂單。 3.當您下訂時您必須同意:訂單成立的第14天起,因缺某一本書無法出貨的訂單,本站有權利自動取消您的訂單。◎請注意:缺書取消訂單我們統一發送簡訊通知。如果您要部份出貨者,請留言後再重新下單。 4.、本站保留出貨的權利。 二、運費說明 1.宅配到府:滿999元免運費,未滿則加收65元(台灣本島),離島一律加收120元 2.五南門市取貨:未滿350,運費20元 3.揪團:免運費 三、退貨與退款說明 五南會員所購買的商品均享有取貨7天的猶豫期﹝包含國定假日、例假日﹞,退換貨之商品必需於取貨7天內辦理退換貨,否則恕不接受退換貨。 1.請注意!下列商品購買後不提供7天的猶豫期,請務必詳閱商品說明並再次確認確實有購買該項商品之需求及意願時始下單購買,有任何疑問並請先聯繫客服詢問: (1)客製化之商品。 (2)買斷不退之商品。 (3)報紙、期刊或雜誌。 (4)經消費者拆封之影音商品或電腦軟體。 (5)下載版軟體、資訊及電子書。 (6)涉及個人衛生,並經消費者拆封之商品,如:內衣褲、刮鬍刀…等。 (7)藝文展覽票券、藝文表演票券。 (8)易於腐敗、保存期限較短或解約時即將逾期。 2.退貨退款詳細說明: (1)如欲退貨,請在鑑賞期內將商品連同發票寄回,每張訂單限退一次。 (2)退換貨政策:請在收到商品後,立刻檢查商品是否正確,如果有問題或瑕疵,請於7天猶豫期內完成退換貨申請手續。辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 (3)退款說明:請您填寫退貨退款書,若您採信用卡付款,由客服人員辦理刷退手續。若採其他付款方式,我們會將退款,匯款至指定帳戶。以上需要14個工作天。 (4)退貨退款書請至【客服中心】點選『退換商品】的說明中下載。
1.每日09:00前截止訂單,包含出貨通知、缺書通知等。 3.上午9:00點以前下單,可在當日下午17:00以後,查詢出貨進度。例假日除外 4.上午9:00以後在下單,需在隔日17:00以後,方能查詢訂單出貨進度。例假日除外 5.當你使匯款或轉帳時,請務必提供帳戶末5碼之資訊,請拍照email或傳真給我方,否則須等與銀行確認後,才能出貨。 6.出貨是以下單時間為出貨先後的順序,也就是請先下單再查詢庫存,因為就算查完庫存,也可能無法先為你保留書籍(政府出版品因受限於採購程序,平均補貨作業時間約 2~6週)。
|
|
|
|
|
|
 |
實戰領域驅動設計:高效軟體開發的正確觀點、應用策略與實作指引
出版日期:2024-06-05
ISBN:9786263338159
定價:1280元
特價:90折!1152元
參考分類(CAT):
參考分類(CIP): 電腦科學
運送付款
一般訂單:超商取貨付款(全家、OK、萊爾富)
宅配到府(信用卡、ATM轉帳)