当一个系统变得复杂之后就必然要分层,分层之后就需要考虑层与层之间的交互,已是就产生了DTO。如果一个系统很复杂的话,如果不同的层是不同的人再负责的话,如果你想严格规定层与层之间的交互协议的话,那么必须在每个相邻的层间使用DTO。
小弟愚见,望各位大侠指教。
我想对于一个设计优秀的系统,是不需要VO和PO,就可以表达所有领域关系、操作,并且自身相容,且能够被测试的,VO是展示给最终用户的,PO是展示给DB的,它们都不能表达领域关系,如果您发现某个BO恰好是PO(VO),只能说明它们的定义域是相同的,并不是它们在应用中的作用是相同的。