最近看了Eric Evans的DDD一书,有点感想,随便写一下。在DDD里一般把业务层分为应用服务处和领域模型层。应用服务是与具体的架构有关系的,而领域模型是独立与具体的架构的,是可以在不同的架构下移植的。就比如在EJB3.0中,我们的session bean,MDB等都可以做来实现应用服务层,而我们的业务核心可以放在领域模型层里,应用服务通过领域模型来实现具体的业务操作。 
      DDD中有实体,值对象,服务三种模型元素,有些对象我们需要跟踪它们的状态,那么就需要给它标识,这样它就是实体,有些对象我们不需要跟踪它的状态变化,它主要是用来描述系统状态的,那么就将它作为值对象,至于服务,也分为领域层服务和业务层服务,我们的业务逻辑是要放在领域层服务里,业务层的服务只是协调领域层的服务来完成业务操作。这样依赖我们的领域层通过实体,值对象,服务将是充血的。 
      至于到底是充血还是贫血,要从整个领域层来考虑,不能片面的从个别模型元素来看待贫血还是充血。有些实体从代码级别看是失血的,但是从整个领域层的角度来看是充血的,而所谓的设计模式也正是让领域层充血的法宝。