MVC的理由?

时间:2009-06-02 13:10:21

标签: asp.net-mvc

我想知道是否有人可以给我一些答案。我一直要求将我们的内部应用程序交换到MVC架构已有一段时间了。作为一个玩具,Rails绝对被击落,Struts对我们的应用来说太庞大了,Django的名字使这些老人们感到紧张(石油和天然气行业),但最后,微软已经推出了MVC 1.0。

由于那些Be使用微软技术已经死定,我想我可能会说服他们将我们的应用程序转移到MVC模式。不幸的是,我无法提出将基于表单的结构交换为MVC风格的充分理由。

任何人都可以认为理由足以养活我的老板吗? : - )

7 个答案:

答案 0 :(得分:15)

你有充分的理由转换吗?这听起来像你不这样我想知道你是否为了MVC本身而切换,我会阻止你这样做。

当您希望更好地控制应用程序的输出和生命周期时,ASP.NET MVC非常有用。请记住,在许多情况下,这对开发人员来说意味着更多的工作。 MVC框架适用于非数据输入密集型的站点 - 换句话说,如果您处理大量的表单POST并从这些表单中处理数据,那么ASP.NET MVC实际上将创建更多工作你。

我并不是说听起来很苛刻,但我觉得你想切换到ASP.NET MVC却不知道为什么会这么陌生。

答案 1 :(得分:5)

答案 2 :(得分:1)

我认为这不是“卖”MVC的问题,而是了解它的优点。 此外,您应该认真评估将现有系统迁移到MVC是否具有成本效益。 然而,MVC有许多优点 - 这里有一些来自我的头脑:

  • 分离控件,数据和表示使您的应用程序更易于维护
    • 更容易进行更改
    • 经过相对较短的学习曲线,其他程序员更容易理解
  • 更好的设计意味着引入新功能更容易。当所有内容混淆时,尝试添加缓存,表单验证等......
  • MVC系统可能更容易测试(因此可以更可靠) - 测试控制器比测试数据,控制和表示代码的意大利面容易得多。

答案 3 :(得分:0)

我认为在这种情况下,OP正在寻找切换到MVC的实用(盈利)理由,因为大多数公司都这么认为。

最大的优点是为ASP.NET MVC应用程序创建单元测试要容易得多。然后,一套良好的单元测试可以作为持续集成过程的基础。

权力的底线是您可以在一个步骤中创建构建,简化部署,创建安装程序,修补程序等。

答案 4 :(得分:0)

Rails和Django都遵循模型视图控制器(MVC)模式,所以听起来你只会为自己创造一大堆工作。为什么想要切换到ASP.NET MVC?

答案 5 :(得分:0)

“Struts对我们所做的应用来说太庞大了”

以什么方式?一旦我们了解了它的工作原理(这很快),Struts就可以轻松地在我们公司内部开发简单的内部应用程序。一些JSP,一些Actions,通过一些简单的DAO在JDBC中完成的后端数据库访问,在与ant / maven和deploy的战争中将它们捆绑在一起。完成。

答案 6 :(得分:0)

另外,fyi,记住Joel的建议(Things You Should Never Do, Part I):避免从头开始重写代码。