V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yule111222  ›  全部回复第 1 页 / 共 3 页
回复总数  58
1  2  3  
不用这些,一律手写,可以避免很多问题
如果 2 个对象结构一模一样,明显存在设计问题
@brucetao2009 单独的 maven module,从依赖关系上彻底隔绝向外依赖的可能性
110 天前
回复了 kerrspace 创建的主题 程序员 如何跨越 coding 菜鸟到老手的鸿沟
看不懂就不是好代码,C++的历史包袱而已
120 天前
回复了 chniccs 创建的主题 问与答 为什么没有欲望了
低欲望,日本病
建议把 domain 层单独做一个模块,几乎不添加外部依赖,让其他模块都去依赖 domain 层
122 天前
回复了 shuanglinzui 创建的主题 Kotlin 哪些公司后端用 kotlin 写的
@shuanglinzui 暂时不招,经济不好
123 天前
回复了 shuanglinzui 创建的主题 Kotlin 哪些公司后端用 kotlin 写的
2017 年开始用,一直用到现在 95%的后端都切到 kotlin 了
128 天前
回复了 impl 创建的主题 DevOps 作为 DevOps 工程师,你知道什么是 git workflow?
git flow 太啰嗦了,TDD 做得到位结合 Feature Flag 用 MainLine 模式最好了
129 天前
回复了 tsingke 创建的主题 程序员 单元测试有落地效果好的团队吗?
如果架构足够整洁,可以让领域层的业务逻辑代码完全跟外部依赖(其他服务和数据库,MQ 等)解耦
129 天前
回复了 tsingke 创建的主题 程序员 单元测试有落地效果好的团队吗?
真正的测试驱动开发,是可以利用测试用例一步步推演出代码实现的,比正常写代码更快
感兴趣的可以参阅《匠艺整洁之道》或者极客时间上找找测试驱动开发的课程
另外 ATDD 和 UTDD 是两种不同的模式,要根据工程业务复杂度和实际情况选择占比,通常来说如果业务非常复杂我更推荐 UTDD ,可以大幅加快开发实现速度
129 天前
回复了 tsingke 创建的主题 程序员 单元测试有落地效果好的团队吗?
很多人觉得写测试做 TDD 会延迟交付。。。其实恰恰相反,就算不考虑自动化测试带来的长期价值,哪怕只是一次性的也比正常写代码更快。前提是架构足够整洁,易于测试,和开发人员知道怎么写真正跟实现解耦的测试。
所以 TDD 要真正落地并不容易,往往需要团队里有真正懂这个的 Teach Leader 来负责
171 天前
回复了 dxatgp02 创建的主题 Java Java 对象里为什么要用 get set?
没有任何意义。。。封装不是这么用的 2333
171 天前
回复了 BrightLiao 创建的主题 程序员 我理解的 Smart Domain 与 DDD
@BrightLiao 嗯,是这个道理,我也很热衷用 UTDD 驱动代码和模型成型,因为我有测试覆盖强迫症,被 UTDD 驱动出来的代码天然就双 100%覆盖了,不用后面再去补。但是这个跟聚合不矛盾,没有聚合的情况下,面对成群的领域对象,如何管理对象之间的依赖关系呢,稍不注意就可能形成复杂的对象网?
171 天前
回复了 BrightLiao 创建的主题 程序员 我理解的 Smart Domain 与 DDD
@BrightLiao TDD 可以实现所有程序,前提是 use case 很明确了。但是在概念建模和领域建模的时候,往往用例也还不是那么的明确,很多东西需要跟领域专家一起从模型层面推导出来。聚合还有一点就是可以约束领域对象之间和控制器与领域对象之间的依赖关系。防止形成过于复杂的对象网
172 天前
回复了 BrightLiao 创建的主题 程序员 我理解的 Smart Domain 与 DDD
@BrightLiao 如何划分聚合有一整套原则和操作指南,《解构领域驱动设计》里面有详细介绍。
总的来说就是先判断关系,泛化和物理包容关系的先无脑划分到一个聚合里面,其他的关系一律隔离开,然后再做微调去拆分过大的聚合。如何判断是否过大有经验和子实体是否有一定的独立生命周期来判断
通过聚合来测试我个人实践下来是非常好用的,没有遇到什么麻烦,可能我的聚合力度不是太大也有关系吧。话说回来,微服务架构其实单测我写的不多,验收测试写的更多,少数核心业务逻辑可能会用 UTDD 来做和验收测试比较难覆盖的分支才会用单测弥补。
可以参考这个 https://insights.thoughtworks.cn/test-pyramid/
172 天前
回复了 BrightLiao 创建的主题 程序员 我理解的 Smart Domain 与 DDD
@BrightLiao 《解构领域驱动设计》里面有详细介绍菱形对称架构,我觉得很好,非常符合 整洁架构的思想,也就是外层技术机制,应用业务规则都去依赖 核心领域实体。 核心的 domian 层没有任何外部依赖,这一点 Smart Domain 也做到。不过 Service,Repository 姑且不论。我坚持认为 Aggregate 是必须的,这是让领域对象可测试可管理可解耦的关键。就拿测试来说,如果针对每个领域对象一对一的写测试,那么测试代码就会跟被测试的代码高度耦合,模型层的任何调整都可能引起大量测试失败。只针对聚合根的行为去编写测试就可以对聚合根之外的对象有效解耦
173 天前
回复了 BrightLiao 创建的主题 程序员 我理解的 Smart Domain 与 DDD
很不错的尝试值得参考,未来考虑在一些新项目里小范围尝试
目前还是主要用 菱形对称架构 除了有点重,其他都感觉很好
不会可以学。。
当你为了集体无私奉献的时候一定有人在不劳而获
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   3045 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 57ms · UTC 02:53 · PVG 10:53 · LAX 18:53 · JFK 21:53
Developed with CodeLauncher
♥ Do have faith in what you're doing.