3

我被要求为一个小型内部公司项目在 Web 表单和 MVC 之间进行选择。我不知道MVC。我必须知道多少 MVC 才能做出决定?

注意:1. 我已经阅读了 MVC,在一定程度上我知道我必须做出的高级设计选择,但是作为开发人员,除非我在其中编写代码,否则我会感到不舒服......

另一个问题是,我如何在不知道 mvc 能够做什么的情况下对其进行规范(例如,我被告知不能像在 Web 表单中那样使用 datagrid 控件)。我确信有一种方法可以规范它 - stackoverflow 是 Jeff 在学习 MVC 时构建的 :)

编辑:自 2002 年以来,我一直在使用 ASP.NET。

4

5 回答 5

3

如果这是一个小项目,那么我认为探索 MVC 几乎没有缺点,而且还有很多优点。

当我开始学习 MVC 时,我将它用于一个测试项目,以托管我正在开发的 silverlight 应用程序,以及一个类似 REST 的小型服务。

我发现我在几小时内就变得富有成效。

于 2010-06-15T23:02:12.253 回答
2

关键字是“次要”。你想把一个小项目变成一个长期的学习经历,还是完成它并继续做其他事情?

或者这是一个了解风险较低的平台的好机会?

很抱歉用另外两个回答你的问题:)

于 2010-06-15T23:01:16.547 回答
0

使用 MVC,您需要在浏览器端有一个很好的处理:html、css、javascript 和/或像 JQuery 这样的 javascript 库。根据 UI 设计,您可能会发现自己正在查看各种 UI 小部件,从而增加了学习曲线。

与queen3 一样,我也喜欢良好的架构,当您构建一个具有非常大且复杂的域并且需要在未来扩展和维护的应用程序时,MVC 会大放异彩。为了充分利用 MVC,您可能还想进行单元测试和测试驱动设计,TDD。TDD 不仅意味着您正在进行单元测试,还意味着您设计代码以支持单元测试;注意松散耦合和高内聚等概念。

对于一个“次要”的 Intranet 站点,我会坚持使用 Web 表单,除非您有奢侈和管理层的支持来利用这个机会学习 MVC。我也推荐桑德森的好书。

于 2010-06-17T15:25:54.760 回答
0

从心理的角度来看,MVC 是对 Web 表单工作方式的足够体面的改变,并且可能具有挑战性。最近,在我的一个新项目中,由于学习曲线的原因,选择了 Web 表单;尽管我研究了它并迅速拿起它,但上层却不这么认为。尤其是在最后期限紧迫的情况下,这可能会很艰难……如果您选择 Web 表单,MVP 模式是另一种选择。

我喜欢 MVC,我会再次使用它,但我个人确实发现自己一开始慢了一点,因为我从设计页面的角度转变为设计功能,并使用框架使一切正常工作。我确实发现我有一些性能提升,因为我可以更快地完成某些事情,或者更轻松地使用 AJAX 来提高效率。

如果您正在寻找资源,我建议您阅读 Steve Sanderson 的书;非常好,我认为他为 MVC 2.0 更新了它。

HTH。

于 2010-06-15T23:24:44.960 回答
0

我使用 ASP.NET 已经好几年了,当我有机会时,我切换到 MVC 来进行一个新项目,尽管当时我根本不了解 MVC。

这是因为我不喜欢 ASP.NET。因为我确实喜欢干净的设计和其他好东西,比如 DRY。

如果您喜欢 ASP.NET 并且喜欢根据将用户控件拖动到画布(即快速而肮脏)的方式编写代码,那么没有理由选择 MVC。

如果您选择 MVC,您可能会选择 jQuery 而不是 UpdatePanel,或者 (Fluent)NHibernate 而不是 Linq-to-SQL/EntityFramework... 等等。对我来说,这更像是面向工具向导的开发而不是面向代码的开发。

PS 我并不是说 ASP.NET 意味着“快速、肮脏和没有设计”。

于 2010-06-16T09:52:48.070 回答