mag*_*gol 16 design-patterns anti-patterns separation-of-concerns
设计模式何时会使您的软件变得更糟?
我见过一个程序,他们使用GUI和逻辑之间的Facade模式.他们认为没有任何对象可以通过它传输,因此只使用原始类型,这使得编码变得困难.
Cha*_*ana 21
当你滥用它时,或者有时更糟糕的是,当你不必要地使用一个模式时.后者让我疯狂,因为当我分析一段代码时,我自然首先假设那里有一切的原因,当我看不出某事的原因时,最安全的默认假设是我错过了一些东西.而且由于我不想以未知或不可预测的方式破坏代码的风险,我浪费时间试图弄清楚为什么它在那之前我弄乱它.
Pat*_*her 17
几十年来,程序员经常花时间通过应用他们不理解的实践来使软件变得更糟,而不是学习为什么这种实践是好的. 使用某些工具/关键字/框架可以让程序员感觉很复杂,当他们只是搞砸了.一些常见的例子:
这份清单可以永远持续下去.这种趋势一直存在并且永远存在,因为我们人类总是寻找捷径.我们现在看到很多模式,因为模式目前很受欢迎.根本问题是相同的:开发人员不关心软件开发的复杂程度,并且认为盲目实施的模式或实践可以替代学习和谦虚.
解决方案?很难说.虽然交出了一个初级开发人员Code Complete或其他类似的东西,但你不能犯错,以帮助他们理解这是关于将原则应用于特定情况,以及伟大的开发人员保持简单.