这几年来,对领域设计DDD概念,以及部分实现DDD概念的ABP框架有或多或少的了解,过程大致是了解基本概念,了解ABP结构和实现方法。
要说学习这些对实际工作有什么帮助,其实还是有的,只是看个人对这些东西的理解和吸收。
对我个人而言,之前的学习断断续续,对DDD的概念和应用理解不多,没有把握理解到其中妙处。
最近由于工作中遇到有三个项目借鉴了ABP框架的思想,或是把ABP一些底层的实现搬过来用,又或者是根据DDD的理解做了一些实现,为了更好理这些项目为啥这样实现,我重新开始阅读ABP相关源码,以及重新学习DDD相关理论。
加上最近在学微服务,刚好看到微软关于.NET微服务的文档,把这些东西融合起来理解,忽然觉得有了新的理解,在此也想说一句,微软的文档其实相当精炼实用。
可能一句话听起来简单,但是要理解不一定容易。
《领域驱动设计-软件核心复杂性应对之道》,软件复杂了要怎么实现?
1、面向对象思想(聚合根、实体、值对象)
2、理解架构分层(Application、Domain、Infrastructure)
3、高聚合低耦合(自治、DI、Ioc)
这些东西其实是相辅相成的,需要细品。