我最近读了Jim Shore写的"Continuous Design"文章。在一个地方,他写道:
特别是,前期设计通常包括"可扩展性挂钩" 用于将来的设计更改。这种方法使连续设计 更难,应避免。
我不明白为什么它使连续设计变得更加困难。可扩展性钩子(可能带有抽象(通常意味着更好的设计。那么,为什么它使连续设计变得更加困难呢?
它使连续设计变得更加困难的原因是,您现在设计这些钩子是为了满足当前没有的需求,因此您的设计基于您认为将来需要的东西。 如果你后来发现你需要的功能与钩子允许的功能不同,你要么需要重写它们,要么解决它们。
这一切都归结为做最简单的事情,以实现您当前的目标,因为这是您拥有的所有信息。 钩子很可能会妨碍未来的变化。