【问题标题】:Do you think ASP.NET MVC will compete with ASP.NET Webforms?您认为 ASP.NET MVC 会与 ASP.NET Webforms 竞争吗?
【发布时间】:2010-09-10 11:13:42
【问题描述】:

您认为 ASP.NET MVC 会在 Microsoft Web 开发市场中占有重要的份额吗?还是会占据 10-15% 的市场份额?

【问题讨论】:

    标签: .net asp.net asp.net-mvc


    【解决方案1】:

    哦,是的。它将把 Web 表单从水中吹走——我们已经看到了真正的 MVC 框架在 Java 世界中的价值。在 MS 的世界里——这确实是一个需要填补的空白。

    作为一名前 Java/Struts 家伙 - 我发现在 Web 表单中进行当前工作非常令人沮丧 - 因为我知道有一些工具可以让我的生活变得如此轻松。

    【讨论】:

      【解决方案2】:

      MVC 很棒,但在它包含自己的丰富控件集之前,它不会成为 Web 表单的替代品的真正竞争者。正如您可能已经知道的那样,一些现有的控件确实可以使用它,但许多控件不能。尽管如此,我仍然喜欢使用它。

      【讨论】:

        【解决方案3】:

        嗯,.NET 一直无法完全抵消 Visual Basic 6 的惯性(我仍然看到一些商店刚刚开始转向 .NET),所以一个必须考虑 ASP.NET Webforms 的惯性以及它目前是如何部署到各处的。

        毫无疑问,ASP.NET MVC 将得到广泛采用,但它会由有架构意识的类型推动:一些经理和节奏不太快的开发人员不会在意。

        【讨论】:

          【解决方案4】:

          我不这么认为。两种解决方案的目的和目标不同,APS.NET Web Forms更像是一个平台,而MVC是架构框架,所以这个问题有点奇怪。在我看来,MVC 结合良好的 AJAX 支持和正确的服务器端模型结构可能是开发 Web 应用程序子范围的更方便的方法,但 Web 窗体不会消失,它们将在下一个版本中进一步改进。

          干杯。

          【讨论】:

            【解决方案5】:

            我认为最终,MVC 将拥有 MS-web-market 的 100% 份额。这样更好。

            【讨论】:

            • 同意。如果不是 100%,那就非常接近了。
            【解决方案6】:

            正如 Ty 所说,在控制措施到位之前,不会有很多采用。我确实认为它会超越网络表单。一旦你需要做一些复杂的事情并且很难测试,webform 模型就会变得非常糟糕。对 MVC 进行单元测试的能力非常强大,但人们只是不知道他们还缺少什么。

            我认为 ASP.NET MVC 是 ASP 经典(大量渲染控制)和 ASP.NET(拥有真实架构的能力和缺乏意大利面条式代码)中最好的。

            【讨论】:

              【解决方案7】:

              我的猜测是,微软真的必须站出来说“MVC 是您开发 Web 应用程序的唯一方式”,然后企业才会大规模地使用它。所以不,就目前而言,用户群很小。

              【讨论】:

                【解决方案8】:

                我认为由于 webforms 安装基础,这将是一个缓慢的开始。随着单元测试和标记控制开始变得对更多人更重要,我认为您开始看​​到迁移。我怀疑它是否会达到 Web 平台 MS 安装基础的 100%,但在接下来的几年中它将稳步上升。会有粉丝会说这将主宰行星切片面包,但这是不现实的。有了这个,我希望不用长时间使用 Webforms。

                编辑:现在我们处于 Beta 1 阶段,我们开始看到组件供应商开始发布一些东西。看起来首先要击球的是 Telerik 和他们的ASP.NET Ajax Controls in ASP.NET MVC

                【讨论】:

                  【解决方案9】:

                  我认为更多的人了解模型视图控制器的重要性以及简单页面控制器的局限性,而这正是 ASP.Net 表单的真正含义。

                  正如有人指出的那样,问题出在 Visual Basic 人身上——你认识的人具有经典的 ASP 经验,从未见过任何单元测试和/或基于 MVC 的 Java/Ruby/PHP 开发。我相信这是大多数.NET 开发人员。我在某处读到世界上有 600 万 VB 开发人员。猜猜,这些人现在在做什么?

                  来自 Java/Ruby/PHP 商店的人,已经习惯了 MVC 应用程序,肯定会适应 MS MVC 框架。

                  【讨论】:

                    【解决方案10】:

                    我认为喜欢这种开发模型的开发人员会采用它,但我更喜欢 Web 表单,因为生命周期提供了一种创建可重用控件的好方法。

                    您还可以使用 Web 表单保持 MVC 开发风格,并能够为您的所有代码创建单元测试,因此可测试并不是 MVC 更好的真正理由。

                    【讨论】:

                    • MVC 中的模板呢,这些模板不能最大限度地重用吗?
                    【解决方案11】:

                    我的猜测是,如果您对 TDD、REST、编写自己的 HTML 等感兴趣,MVC 是“经典”Webform 编程的替代解决方案。 目前开发者仍然喜欢 D&D 的开发风格,因为它允许快速开发应用程序,即使那样它也变得无法维护。 随着越来越多的人开始采用敏捷方法,并且对编写可维护的软件而不是开发快速而肮脏的应用程序更感兴趣,MVC 将获得更多的用户群。 在一次演讲中,我记得 ScottH 说他们认为 MVC 会浮动 5-10%,

                    【讨论】:

                      【解决方案12】:

                      我最近才开始使用 MS 的 MVC 框架。随着 Preview 5 的发布,我开始深入了解它。让人们使用它的最大障碍是缺乏示例和有用的参考资料。

                      框架本身的使用体验非常好,尤其是与 jQuery 和 nUnit 结合使用时。从 OO 的角度来看,您的网站设计变得更加自然,我认为,一旦学习曲线随着质量入门材料的广泛使用而降低,那么它将成为使用 MS 产品进行 Web 开发的主要架构。

                      【讨论】:

                        【解决方案13】:

                        我认为网络表单满足了那些没有代码隐藏范式之外经验的人的安全/舒适需求。我并不是说这很糟糕,因为对于商业中的许多任务来说,目标是完成某件事并接受它。不幸的是,商业是关于结果的,很多时候你不得不忽略方法。

                        另一方面,当情况确实需要页面之间的复杂交互时,Webforms 引入了如此多的复杂性以及所有变通方法。注册脚本块只是为了能够触发 javascript?当您想与 Windows 进行客户端通信时怎么办? MS 应该花一些时间来增强他们的 javascript 调试工具集,甚至可能在 MSDN 上提供一系列关于 JSON / JQuery 的内容。只是一些想法。

                        【讨论】:

                          【解决方案14】:

                          我认为 MVC 将在企业级应用程序中流行起来,与小型夫妻应用程序相比,可测试性和灵活性更为重要。

                          没有计划逐步淘汰经典的代码隐藏模型,我认为由于大多数人都习惯了该技术,因此许多人很可能会继续使用它。

                          如果一个人没有使用 MVC 的经验,那么这可能是一种范式转变。我没有看到很多人蜂拥而至。我认为 80% 的代码隐藏和 20% 的 MVC 百分比是正确的。

                          既然代码隐藏模型已经存在了这么长时间,我敢打赌有很多程序员只对经典的代码隐藏事件生命周期有经验。

                          【讨论】:

                            【解决方案15】:
                            【解决方案16】:

                            MVC 真正有意义的地方在于,如果您已经了解 HTTP 和 Rest 的基本概念。如果您真的想利用自定义 JavaScript 并拥有高度域用户优化的体验。如果您喜欢使用所有拖放控件进行 Web 表单开发,并且对您的用户体验和 Atlas 更新面板感到满意,那么您真的应该坚持下去。

                            MVC 适用于希望轻松利用 .NET 服务器端和自定义客户端的其他人。它适用于那些拥有网页设计师和想要构建自定义 HTML 的人,就像我们拥有成熟的程序员一样。

                            如果您是一个孤独的人(可能是 IT 人员),为您的内部网为前台拼凑东西,那么网络表单可能会为您提供更好的服务。这确实是 webforms 和 .NET 的亮点。一些较新的工具 EF 和 MVC 对团队和更大规模的开发具有广告价值。

                            所以不,我认为它们是相辅相成的。

                            【讨论】:

                            • 我在没有 updatePanels、拖放设计器等的情况下使用 WinForms 取得了巨大成功,我们的大部分 AJAX 是通过 jQuery、WebMethods() 等完成的。也就是说,我正在调查MVC 为我们的下一轮修订。但是,我讨厌讨厌将代码与标记混合在一起。它可能有助于分离关注点,但它牺牲了保持代码和标记分离,恕我直言,这也是一种重要的做法。
                            • 我必须同意。表示和业务逻辑的更高分离确实吸引了我们这些采取更务实的方法来构建应用程序/网站的人。 Gleb Popov 也提出了一个很好的观点,即那些拥有更广泛经验的人会发现 MVC 更具吸引力。 MVC 实际上为许多熟悉其他平台并了解通用最佳实践的好处的 Web 开发人员打开了通向 .NET 的大门。我不得不不同意这个线程上那些说网络表单将消失的人。仍然有经典的 ASP 开发人员,不愿发展。
                            • 你也可以从这个帖子的投票中看出,这是一个非常情绪化的决定。
                            猜你喜欢
                            • 2010-10-14
                            • 2012-07-07
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 2011-01-13
                            相关资源
                            最近更新 更多