【发布时间】:2009-09-17 03:19:29
【问题描述】:
如果我的应用程序需要两种模式,我会使用哪种设计模式来防止丑陋的条件代码?应用程序目前是 MVC,但我不希望在我的控制器中使用条件代码,并且不希望每个视图有两个控制器,除非我必须这样做。
有什么建议吗?
【问题讨论】:
-
你能解释一下“两种模式”是什么意思吗?
-
您不想在控制器中使用条件代码?你会把它放在哪里?条件代码是你生活的一部分,习惯于改进它,而不是避免它:)
-
@JoshJordan:至少在 C# 3.0 中,完全有可能编写整个应用程序而无需使用诸如
if、foreach、switch等普通条件结构。通常不值得费心去彻底清除这些东西,但保持它们可以降低圈复杂度并提高可维护性。 -
@Mark,对于很多语言来说都是如此,是的,但请注意,圈复杂度并没有降低,它只是移动到另一个(通常是预先构建的)层。当且仅当只有一条路径通过您的程序时,您的圈复杂度为 1,这使得应用程序相当无用。
标签: model-view-controller design-patterns puremvc