【发布时间】:2018-12-03 14:10:31
【问题描述】:
我最近阅读了“Head First Design Patterns”。这本书写得很好,值得一读。它通常通过首先介绍一个问题和一个非常“幼稚”的问题解决方案来开始每一章。在接下来的页面中,提出了更多要求和约束,例如添加更多功能或更新行为。这本书再次提供了更新的“幼稚”方法。在某种程度上,当“幼稚”的方法搞砸了解决方案(事情开始出错)时,这本书会促使读者采用一种全新的方法——目标设计模式。
我在其他地方学到了一个缩写为“YAGNI”You Aren't Gonna Need It 的原则,它指出“总是在你真正需要的时候实现它们,而不是在你预见到你需要它们的时候。”
我现在想知道,关于“YAGNI”原则,“Head First Design Patterns”是否以无意义的方式解释事物?因为,在某种程度上,给定一组要求,我们应该为问题寻找最简单、最干净的解决方案,对吧?
【问题讨论】:
-
我没看过这本书,但是根据你的解释,它似乎遵循YAGNI:它实现了一个问题的最简单的解决方案,而不是试图解决一个尚不存在的问题,直到到了代码变得一团糟的地步,因为问题实际上最终存在。
标签: design-patterns yagni