在为新系统编写代码时,我不想在设计中引入我可能永远不需要的不必要的复杂性。所以我在这里关注 YAGNI,而是在我认为需要更多灵活性或职责变得更加清晰时进行重构。这让我可以更快地移动。
但是初级开发人员有一个问题,他们不知道何时重构或在哪里构建设计。他们只是在现有设计中塞进更多代码。
那么,解决这个问题的最佳方法是什么?我是否应该更频繁地构建一个更具前瞻性的设计,以便在添加时他们有一个很好的例子可以效仿,即使我们可能永远不需要添加任何东西?还是我应该继续进行更多的代码审查、教育等?或两者?
你们中有人遇到过这类问题吗?你是怎么解决的?