DDD
sven_xu
这个作者很懒,什么都没留下…
展开
-
领域驱动设计基本理论知识总结
本文内容提要:1. 领域驱动设计之领域模型;2. 为什么建立一个领域模型是重要的;3. 领域通用语言(Ubiquitous Language);4. 将领域模型转换为代码实现的最佳实践;5. 领域建模时思考问题的角度;6. 领域驱动设计的标准分层架构;7. 领域驱动设计过程中使用的模式;8. 设计领域模型的一般步骤;9. 在分层架构中其他层如何与领域层交互;10.为什么面向对原创 2015-06-02 09:21:16 · 945 阅读 · 0 评论 -
关于项目架构——零碎手记
Presentation 展现层Application 应用层Domain 业务领域层Infrastructure 基础设施层==========================================1. Presentation 呈现层,主要考虑用MVC3来做2. Application Service服务层,主要考虑用WCF来做3. Business Logic业务逻辑层,主要考虑原创 2015-06-02 09:21:11 · 390 阅读 · 0 评论 -
DDD:领域服务与应用服务的区别?
问:领域服务的职责是什么?答:夸聚合实例业务逻辑。没办法合理放到实体中的其它业务逻辑。问:领域服务的设计原则是什么?答:用来组织业务逻辑。面向业务逻辑。细粒度。内部视图看系统。一个请求对应多个服务的多个方法。服务之间会存在依赖。问:应用服务的职责是什么?跨Bounded Context业务逻辑。DTO转换。事务AOP、权限AOP、日志AOP、异常AOP。外部系统访问:邮件、消息队列。问:应用服务的原创 2015-06-02 09:23:08 · 4325 阅读 · 0 评论 -
传统三层向DDD的转变及以DDD为开发模式的设计开发步骤
传统三层向DDD的转变:实体见引入合理的关联。根据需要引入聚合。将DAL命名的类换成Repository命名。将BAL命名的类换成Service。将BAL中的一些职责重构到Domain中。引入Applicaiton层。根据需要引入ViewModel和Mapper。根据需要引入工作单元。小心ORM工具提供的主键映射功能。推荐引入IoC容器。推荐引入AOP。以DDD为开发模式的设计开发步骤:1)分析需原创 2015-06-02 09:22:22 · 5260 阅读 · 0 评论 -
领域驱动设计的标准分层架构
Presentation 用户界面/展现层负责向用户展现信息以及解释用户命令。更细的方面来讲就是:1. 请求应用层以获取用户所需要展现的数据;2. 发送命令给应用层要求其执行某个用户命令;Application 应用层很薄的一层,定义软件要完成的所有任务。对外为展现层提供各种应用功能(包括查询或命令),对内调用领域层(领域对象或领域服务)完成各种业务逻辑,应用层不原创 2015-06-02 09:21:13 · 3075 阅读 · 0 评论 -
在项目中应用Repository模式
近来发现很多ASP.NET MVC的例子中都使用了Repository模式,比如Oxite,ScottGu最近发布的免费的ASP.NET MVC教程都使用了该模式。就简单看了下。在《企业架构模式》中,译者将Repository翻译为资源库。给出如下说明:通过用来访问领域对象的一个类似集合的接口,在领域与数据映射层之间进行协调。在《领域驱动设计:软件核心复杂性应对之道》中,译者将Repository原创 2015-06-02 09:21:01 · 917 阅读 · 0 评论 -
领域驱动设计(Domain Driven Design)参考架构详解
摘要本文将介绍领域驱动设计(Domain Driven Design)的官方参考架构,该架构分成了Interfaces、Applications和Domain三层以及包含各类基础设施的Infrastructure。本文会对架构中一些重要组件和问题进行讨论,给出一些分析结论。本文原文连接:http://blog.csdn.net/bluishglc/article/details/6681253原创 2015-06-02 09:21:22 · 540 阅读 · 0 评论 -
DDD、Repository、Factory百家争鸣
Face Bug :學過Design Patterns的人應該對Factory不陌生,我們用它來簡化物件的複雜創建過程。Factory用於從無到有的建立過程,就好比一台Notebook,在生產線上一路組裝各種零件,最後成為一台可被銷售的商品,在這個案例裡,Notebook商品概念就是一個聚合,前面說過,只能透過Aggregate Root來存取整個聚合,因此Factory就是用來建立這個聚合。原创 2015-06-02 09:21:25 · 1716 阅读 · 0 评论 -
关于Repository模式
定义(来自Martin Fowler的《企业应用架构模式》):Mediates between the domain and data mapping layers using a collection-like interface for accessing domain objects.个人理解:Repository是一个独立的层,介于领域层与数据映射层(数据访问层)之间。它的存在让领域层感觉原创 2015-06-02 09:20:58 · 482 阅读 · 0 评论 -
EntityModel、DomainModel和ViewModel代码实例讲解
目前项目中可能出现的三种Model模式,对于我们现在开发的一个项目,我觉得使用DDD的思想来设计模型比较清晰,使用DDD的思想把模型model分成了如下三种: 上面的图中把模型分成了ViewModel,它与页面相关,DomainModel,它与业务模块相关,Model,它与数据库相关,它是对数据表的一种映射,一般用XML来表示。下面我们来举个例子,用认识一下这三个模型:下面以用户业务为例,来讲一个原创 2015-06-02 09:22:20 · 1878 阅读 · 0 评论 -
事务脚本和领域模型
Martin Fowler 2004年所著的企业应用架构模式(Patterns of Enterprise Application Architecture)中的第九章领域逻辑模式(Domain Logic Patterns)专门介绍了事务脚本(Transaction Script)和领域模型(Domain Model),理解这两种模式对设计和构建企业应用软件非常有帮助,所以有必要介绍一下。事务脚原创 2015-06-02 09:22:40 · 2780 阅读 · 0 评论