
时长:大小14.61M
作者回复: 这个思路不错👍🏻
作者回复: 很佩服你的学习精神,加油!
作者回复: 目前的风格就是以是否依赖数据库来区分,参考课程中对代码风格的总结。当然,也可以制定你自己的代码规则。
作者回复: 关于第2问,可以扩展一下。比如对于状态,如果用 isEffective(), isTerminated()之类的方法封装了,那么未必要用 getStatus()了。
作者回复: 你是指把repository注入领域对象,从而使领域对象可以访问数据库吗?理论上可以,就看你要不要选这种编程风格。
作者回复: 加了@Transactional不会有什么坏处,如果以后逻辑更复杂了,可以避免忘掉。 @Autowired注入的属性一般都用final,我有些地方没注意,等我稍后统一改一下
作者回复: 关键是有领域模型、词汇表、业务规则表,可以把这几个制品融入到目前使用的文档中。
作者回复: “调用Repository,从数据库里取出一个领域对象”这句话是不需要和业务人员谈的,因此这句话反应的逻辑不包含领域知识,
作者回复: 没错,后面就会讲到这个思路。
作者回复: 第一:是的 第二:为了避免累赘,或者你看能否有更好的写法贡献出的? 对save的调用不算领域逻辑 第三:粒度大体相当于一个事务 本课程的的代码是偏过程式的。或许以后有时间给大家讲讲真正的面向对象编程是什么样。