dto java_java – DTO应该使用继承还是组合

“一个DTO类”的方法几乎肯定是坏的.它闻起来像神级.许多权威人士完全谴责DTO.你可以从一些基类继承,但对于值对象,它并不是真的合理.组成相同.它使您的代码更复杂.在调试“DocReview”流程时,您必须查看两个,三个或更多DTO类,以便使用这两种方法来理解它. Bleagh!此外,每个DTO通常位于单独的语义域中:“Doc”不是“DocReview”.因此,明显的“共同”元素实际上并不常见.他们只是共享一种实现类型;他们的意思完全不同.

当成员类型本身是复合的时,例如,如果许多域共享标识符的概念,您可以将组合的类型设置为这些域的DTO.在你的例子中,你可能有

public class Identifier {

long id; // should be a 'String', actually

String name;

}

public class Doc {

private Identifier identifier;

private String docType

}

public class DocReview {

private Identifier identifier;

private String status;

private String comment;

}

这里的关键是Identifier在两个域中在语义上是等价的,因此将它作为一个通用类型是有意义的.否则你不会这样做.

边栏:“Dto”(或“DTO”)作为后缀并不是很好的命名,真的.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值