背景 我的组织使用Microsoft .Net(3.5)和SQL Server 2005作为后端。
RAD是常态,敏捷是广泛使用的过程。我总是发现难以使用设计模式,因为它涉及更多的理解和更多的培训。
您能举例说明设计模式解决了Web编程中的实时问题吗?使用任何设计模式的标准是什么?从中获得的好处是什么。
我知道这是一个普遍的问题,但这对我有帮助。
答案 0 :(得分:5)
这里有一些不同的方法可以帮助你完成任务。了解模式是一种查看优秀设计示例的方法,而不仅仅是寻找可以应用特定模式的地方。我相信理解为什么模式是好的设计是有效使用它们的关键。 首先,工厂方法,策略和状态是最容易学习的,并且可能是最常用的。一旦掌握了这些模式以及使这些模式成为优秀设计的原则,您就可以继续使用更复杂的模式,这些模式在您的Web应用程序中可能更有用,如模型 - 视图 - 控制器,抽象工厂等。
答案 1 :(得分:1)
设计模式既是答案,也是沟通思想的方式。理解这些好处的最好方法之一就是对基本模式进行一些阅读,然后回顾一下你自己的代码,有用的API和其他代码,你会发现这些模式的许多实例都被应用了。仅仅因为它们是什么,对问题的常见应用解决方案的升华。
答案 2 :(得分:1)
我见过很多模式:
MVC / MVP - 这通常出现在需要与UI分开处理业务逻辑的表单中,域对象是第三部分。
适配器 - 数据库连接可以使用这个部分,这样一个人就不必知道它有什么样的数据库连接,它只是起作用。
策略 - 有不同的方法在不同类型的设备上执行几乎相同的操作吗?我有,这就是我使用的一个简单的策略模式。
Singleton - 曾经在ASP.Net中使用过Application对象吗?这是使用Singleton模式的一个例子。
工厂 - 这种情况与我之前提到的战略案例密切相关,因为工厂可能会生成一种特定类型的对象,我记得在6年前的经典ASP中看到了这一点。
该模式是一种以相当普遍的术语解决特定类型问题的方法,因此在理解何时使用这一个或那个时,有很多灰色阴影。