世界閱讀日
領域驅動設計與.NET Core:應用DDD原則,探索軟體核心複雜度

領域驅動設計與.NET Core:應用DDD原則,探索軟體核心複雜度

Hands-On Domain-Driven Design with .NET Core

  • 定價:780
  • 優惠價:9702
  • 本商品單次購買10本85折663
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 台北、新北、基隆宅配快速到貨(除外地區)
載入中...
  • 分享
 

內容簡介

  為了將複雜的業務知識與需求,轉換成容易理解和維護的傑出軟體,來自世界各地的開發人員開始應用DDD原則,使用現代工具(如Event Storming、Event Sourcing和CQRS)識別並解決對的問題,為客戶提供他們真正想要的東西。本書將引導你,如何讓利害關係人也能參與你為他們精心建置的軟體。透過了解領域模型的行為驅動與時序本質,你將能夠建置更精實、更敏捷、模組化的系統,進而解決複雜的業務問題!

  首先,我們將探討領域的複雜度,並學習如何捕捉領域語言的各種行為。然後,我們將說明Event Storming,並透過.NET Core 2.1(或更高版本)建立新專案。我們還會編寫一些將事件從便利貼轉移到C#的程式碼。我們也將展示如何使用aggregate處理命令並產生事件,以及逐步掌握CQRS、Event Sourcing、Bounded Context的精髓。在將領域模型轉換為可執行的C#程式碼之後,我們將使用Vue.js範例應用程式,學習一些有用的前端相關模式。此外,我們也將重構程式碼,討論事件版本和遷移的要點。

  在這本書中,你將學到:
  ・使用Event Storming,與利害關係人一起發現並解決領域複雜度
  ・如何避免領域模型的常見陷阱
  ・深入探索並學習Bounded Context、Context Map等概念
  ・Event Sourcing的優點和缺點
  ・詳細介紹CQRS(命令查詢職責分離)
  ・學會使用Event Store
  ・學習實作投影(projection)
  ・將DDD應用於不同的架構風格,如REST、反應式系統、微服務

  本書的最後一章,「第13章,分割系統」,是一個「線上補充章節」,讀者請至博碩文化官網,下載繁體中文翻譯PDF。

  目標讀者:
  適合熟悉C#和JavaScript的.NET開發人員。

專文推薦
    

  『本書採用目前流行的Event Storming(事件風暴)作為教學主軸,以刊登廣告系統為範例,帶著讀者完整走過一遍套用DDD的分析、設計與實作過程。書中除了基本的Entity、Value Object、Domain Service、Factory、Aggregate、Repository、Domain Event、Application Service等DDD戰術模式的詳細實作範例與設計取捨的討論,還包含進階的CQRS以及Event Sourcing應用。對於有志實踐Event Sourcing的讀者,不可錯過本書的第10章與第11章。』——「搞笑談軟工」板主Teddy Chen 
 

作者介紹

作者簡介

Alexey Zimarev


  一名軟體架構師,目前關注領域模型、DDD(領域驅動設計)、Event Sourcing、訊息驅動系統、微服務、教練與指導等技術。Alexey也是幾個開源專案的貢獻者,如RestSharp和MassTransit。他也是DDD Norway Meetup的Organizer(組織者)。
 

目錄

前言

Chapter 01:為什麼需要領域驅動設計?
了解問題
處理複雜度
知識
小結
延伸閱讀

Chapter 02:語言和情境
Ubiquitous Language
語言和情境
小結

Chapter 03:Event Storming
Event Storming
主持Event Storming工作坊
我們的第一個模型
小結
延伸閱讀

Chapter 04:設計模型
領域模型
設計階段的Event Storming
小結
延伸閱讀

Chapter 05:實作模型
技術需求
開始實作
將模型轉換為程式碼
確保正確性
程式碼中的領域事件
小結

Chapter 06:使用命令
技術需求
領域模型之外
處理命令
應用程式服務
小結

Chapter 07:一致性邊界
技術需求
保護不變量
小結

Chapter 08:Aggregate持久化
技術需求
Aggregate持久化
小結

Chapter 09:CQRS-讀取端
技術需求
新增使用者設定檔
查詢端
實作查詢
小結

Chapter 10:Event Sourcing
技術需求
為什麼要使用Event Sourcing?
事件來源的Aggregate
小結
延伸閱讀

Chapter 11:投影與查詢
事件與查詢
從「事件」建置「讀取模型」
實作投影
跨Aggregate投影
擴充讀取模型
持久化儲存空間
小結

Chapter 12:Bounded Context
單一模型的陷阱
結構化系統
小結

Chapter 13:拆分系統
本書的最後一章是一個「線上補充章節」,讀者請至博碩文化官網,下載繁體中文翻譯PDF。
 

詳細資料

  • ISBN:9789864348602
  • 規格:平裝 / 432頁 / 17 x 23 x 2.22 cm / 普通級 / 單色印刷 / 初版
  • 出版地:英國

最近瀏覽商品

 

相關活動

  • 從「格」的概念出發|
 

購物說明

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則 

  • 時報全書系
  • 華文創作展
  • 東立GoodBuy祭