標籤:風清的筆記

實戰 DDD:從架構理論到實際應用的完整旅程

這篇文章分享了一個實際案例,說明如何使用 DDD(Domain Driven Design)和六角架構(Hexagonal Architecture)建立 Java 後端服務。以用戶管理系統為例,展示了如何將複雜的業務邏輯組織成清晰的領域模型,並透過六角架構實現業務邏輯與外部系統的分離。主要解決了與 Spring Boot 整合、測試策略和事件處理等挑戰,最終達成了高可維護性、易測試性和良好擴展性的系統架構。這種架構雖然前期投入較多,但長期來看能帶來顯著的開發效益。

風清的筆記ddd

Spring AOP 內部方法調用

在 Spring 開發中,AOP(面向切面程式設計)是一個強大的功能,可以優雅地處理日誌、安全性和事務等橫切關注點。不過,很多開發者在使用 Spring AOP 時都曾遇到一個常見的陷阱:同一個類別內的方法調用無法被 AOP 攔截。今天就讓我們深入了解這個問題的原因和解決方法。

風清的筆記

深入理解Java中的物件模型:從領域物件到DTO

在現代軟體開發中,良好的系統架構設計對於建立可維護且穩健的應用程式至關重要。今天,讓我們一起深入探討Java中四種重要的物件模型:領域物件(Domain Objects)、實體(Entities)、資料傳輸物件(DTOs)和模型(Models)。透過一個實際的線上購物系統案例,我們將了解這些概念如何協助我們建立更好的應用程式架構。

風清的筆記dddddd思考

掌握 Docker環境設置與指令使用全攻略

這篇文章探討Docker環境的設置與操作,涵蓋Docker的背景、系統需求、安裝步驟,以及鏡像、容器和倉庫等核心概念。詳細說明各種Docker指令的使用方法和示例,並分享簡單的Docker應用案例,鼓勵讀者在本地環境中練習使用Java微服務和Docker,為希望深入了解Docker的使用者提供全面指導。

風清的筆記docker原生雲

角色構造型

角色構造型是Rebecca Wirfs-Brock在責任驅動設計方法中提出的概念,強調不同角色的特徵和職責,通過識別物件的角色來促進系統的可維護性和可擴展性,並指導設計者進行合理的職責分配和協作關係設計。

風清的筆記dddddd思考

提交訂單的職責與調用

在領域驅動設計中,提交訂單的過程涉及客戶通過前端界面與後端訂單上下文互動,發起服務請求。訂單上下文將提交訂單作為遠程服務,並使用命名慣例(如"Controller"或"Resource"結尾)以提高可讀性。此設計強調根據限界上下文建模,建立明確的系統邊界,提升可維護性和可理解性,並促進團隊的獨立開發與協作。

風清的筆記ddd

微服務架構從拆分邊界到保障數據安全的全方位策略

在領域驅動設計中,提交訂單過程中,客戶透過前端界面與後端訂單上下文互動,發起服務請求。訂單上下文將提交訂單作為遠程服務,並使用命名慣例(如"Controller"或"Resource"結尾)以提高可讀性。此設計強調根據限界上下文建模,建立明確的系統邊界,提升可維護性和可理解性,促進團隊獨立開發與協作。

風清的筆記dddddd思考