在编写可维护和可演化测试的this article by Jakub Holý中,作者分享了他对Kent Beck讲授的课程的经验,并且在设计系统的一部分时,Kent会将班级划分为工人(包含逻辑和完整单元) (测试)和集成商(非常少的逻辑,通过集成测试测试)。
读到这一点,我记得article by John Sonmez表达了同样的想法:
我的意思是我们的目标应该是重构或编写我们的代码,使逻辑被分组为仅依赖于原始类型和数据类的类,而不是其他包含逻辑的类。
这当然不是完全可以实现的,因为某些东西必须将包含类的所有这些逻辑联系在一起。我们需要这些联合课程,但如果我们能够简单地执行命令并将其他课程结合在一起,我们就可以非常自信地不对它们进行单元测试,并且我们的工作变得更加容易。
这听起来对我来说是非常合理的建议,但我找不到任何其他资源,部分原因是因为我不知道要搜索什么。
这个想法/模式有名字吗?
编辑刚刚找到另一个描述相同想法的伟大article by Steven Sanderson。他说的是算法和协调员,这些是我非常喜欢的术语。