0

在使用 .NET Framework 3.5/4.x(MVVM、Caliburn、MEF 等)时,我一直在问自己这个问题,“需要更多的设计模式 (GoF) 实现吗?” “作为一名经验丰富的软件工程师,我的源代码应该看起来像具有许多设计模式的源代码吗?” 或者“设计模式只是过度工作,没有太多输出吗?”。

作为高级软件工程师,最好的编程实践是什么,我的意思是我们应该在 MVVM 中进行编程,而不是过多考虑“我们可以将哪些设计模式用于我们的编程模型”?或者“我们是否应该在开始时花大量时间思考编程模型并确定一些我们可以使用的设计模式,然后编写代码?”

我不知道,GoF 的某些设计模式是否仍然值得实施。总之,请为经验丰富的软件工程师(比如 5 年的经验)提供最佳编程实践的专家建议。

4

1 回答 1

3

这是我的 0.02 美元:

最好的编程实践是以最高效、简单、优雅和可维护的方式解决问题。如果一种设计模式有助于实现其中一个或多个目标,那么就使用它。

显然,实际上存在权衡取舍,可能不得不或多或少地牺牲这些特征。但是,恕我直言,这是“经验丰富”的开发人员的技能。通常,为了满足您的需求,可能需要对特定模式进行修改,使其超出表面认识。然而,一个设计良好的解决方案确实会大于其各个部分的总和。

我认为尝试为模式提供解决方案是很危险的。使用模式来激发、交流和作为最佳实践的建议,但不要成为模式势利小人或模式奴隶。

扶手,不是手铐。

于 2013-07-16T15:51:17.673 回答