ASP.NET MVC的生产力?

时间:2009-03-17 09:34:24

标签: asp.net-mvc

虽然,我仍然是ASP.NET MVC的新手,但是我的经理向我询问了有关ASP.NET MVC生产力的报告。实际上我们正计划使用ASP.NET MVC开发一个真实的,有点大的系统。问题是:
1-对于一个相当大的系统,它真的是goona规模吗?
2-开发人员是否容易在短时间内接收“周”? 3-是否有使用ASP.NET MVC构建的现实生活系统? “NerdDinner除外”
4- MVC如何在ASP.NET上节省一些开发时间?

6 个答案:

答案 0 :(得分:12)

如果按生产率计算,您的经理真的意味着“编写X功能需要多长时间?”那么很可能你在ASP.NET MVC的短期内不会那么高效。但是,与webforms相比,框架中关注点的更好分离意味着更容易测试和编写结构良好的代码。

这可以提高您的长期生产力,但可能会牺牲短期生产力。如果你能让你的经理看到过去,那么你就是胜利者。祝那一个好运!

回答您的直接问题:

  1. 它会扩展吗?
    • 当然,它建立在高性能的ASP.NET框架之上,并没有带来很多Webforms的包袱。
  2. 开发人员是否容易在短时间内“几周”接听?
    • 取决于您的开发人员当前的技能组合。如果他们熟悉 web 开发和MVC模式,那么应该很容易找到它们。如果他们只熟悉ASP.NET Webforms拖放式代码,那么他们将有一个全新的范例来学习哪些需要时间。
  3. 是否有使用ASP.NET MVC构建的真实系统?
    • 这个网站是一个很好的例子。
  4. MVC如何在ASP.NET上节省一些开发时间?
    • 我的初步答案涵盖了。但是,从长远来看,它也可以节省时间,因为您并没有真正依赖于框架,因此您不会将自己编写到Webforms的频繁发生的变通方法中。

答案 1 :(得分:1)

回答#3 - 是的,你现在正在使用一个:o)What Was Stack Overflow Built With?

答案 2 :(得分:1)

  1. 是的,它可以很好地扩展到大型系统,当然比Forms更好。
  2. 取决于,已经很好地灌输ASP.NET Forms的开发人员可能会发现转换很困难。经典的ASPers可能会发现它在某些方面非常熟悉。如果开发人员充分了解HTTP的工作方式以及一般MVC方法的好处,那么这应该不是一个大问题。
  3. 您正在使用一个
  4. 使用单元测试是从MVC中获得最大收益的关键,它可以节省大量的时间,用于调试。

答案 3 :(得分:0)

我认为最有趣的问题是#4 - 如何使用ASP.NET MVC节省开发时间?

通过允许您构建应用程序框架,可以构建所有特性和功能。

Ayende对此有一个非常有趣的post

我认为很多ASP.NET MVC开发人员都会同意我的看法,ASP.NET MVC绝不准备构建复杂应用程序的功能 - 你必须付出一些努力才能使框架适应你的应用程序,只有这样你才能做到开始真正从使用它中获得优势。

答案 4 :(得分:0)

它绝对可以扩展。但与webforms相比,生产力?除非你对webforms非常糟糕,否则在RAD术语中,webforms的速度要快几年。

是的,非常适合ASP.NET MVC的TDD,但是你必须意识到你正在测试很多内置的内容,这些内容包含gridview等webform,以及所有那些漂亮的拖放自定义控件。你节省了大量的时间,而不是在你做webforms时测试那些内置的控件,而在MVC中你自己动起来,是的,你最好写出更多的代码来测试它们。因此,可测试性的提升实际上是一种错觉。

在看到类似于gridview类型的RAD之前,我不会跳进MVC。

如果你了解CodeSmith,你也可以自动完成MVC中所有繁琐,重复的代码。 TDD代码一次,然后创建一个CodeSmith模板,然后你只需生成你的代码。

答案 5 :(得分:0)

这是我的观点。

它会扩展吗? 事实是没有人发布一个体面的基准测试与相同的架构进行比较。只是没有测试的单词。

开发人员是否容易在短时间内“几周”接听? 可能是基本的东西,但是硬的东西不是。

是否有使用ASP.NET MVC构建的真实系统? 如上所述,是的。

MVC如何在ASP.NET上节省一些开发时间? 人们说,因为代码“更好地分离了关注点”,所以出现了神奇的魔力并且生产力突然出现。我很久以前用Turbo Pascal编程了。 MVC的“外观和感觉”让我记住了DOS和Pascal的旧时代。在设计时没有一个屏幕的良好视觉参考。您可以在对象资源管理器中找到充满文件的对象,而不是在visual studio中有一些控件的webform。在这个时候,我无法弄清楚这种模式如何能够更好地提供“更好的分离关注”。