1:DTO对象的设计应该是尽量不包含其他类作为属性,可以将其他类的属性来代替此类。比如说A类有a1, B 属性, B类有b1,b2属性。则DTO设计应该是 A{ a1,b1,b2} 。这样就除去了类之间的相互依赖。因为DTO应该是界面元素的体现,不应该存在类之间的关系。
2:DTO mapper的初始化中一般都是从entity map到dto,在创建对象时,都是通过工厂传递DTO的属性来创建。MaterializeCustomerFromDto是从dto到entity。不是通过mapper.
3:然后entity到dto的映射可以通过扩展行为来实现。
4:扩展方法的优点和妙用。
5:IBankTransferService.PerformTransfer方法说明业务处理都是在domain层。但是聚合之间的业务处理呢?
6:逻辑删除。RemoveCustomer,那如果此客户有其他业务关系,该怎么处理呢?
7:domain业务对象的构造特别是聚合根对象的构造必须通过工厂,并且对象属性不能直接赋值,必须通过方法。
                    
                
                
            
        
浙公网安备 33010602011771号