代码之家  ›  专栏  ›  技术社区  ›  Eli Bendersky

如何向客户端推荐ASP.NET MVC而不是其他技术?

  •  3
  • Eli Bendersky  · 技术社区  · 5 年前

    如何向客户端展示采用ASP.NET MVC的好处?

    我的意思是,作为开发人员,我们可以理解更容易实现自动化测试、更好地控制呈现的HTML等的好处,但是客户机接受使用ASP.NET MVC的最大动机是什么?

    也许有一些用ASP.NET MVC(不包括StackOverflow)构建的更漂亮的示例可以展示?


    另外,请不要发动火焰战。
    在这种情况下-无论ASP.NET MVC是优于X还是反之亦然。

    5 回复  |  直到 7 年前
        1
  •  3
  •   Adam Tolley    14 年前

    这个问题可能有点主观,但我还是要尝试一下。

    ——背景:

    MVC是在我进入现在的公司之前为我挑选的,我负责学习它,这很适合我,因为我非常面向HTML。这个项目正在开发中,但是我们有迭代会议来展示进度和充实需求。在其中一次会议上,我发现了一个主要的回报:

    --我的经验:

    该网站能否支持的问题 移动电话接入 被提出了,但直到现在我一直在为一个 最小分辨率1024 x 768 . 别担心, 我只是关闭了CSS样式 页面显示的不是很漂亮,但是功能很好。整个场地设计 语义上 通过样式表和一些JS可以更容易地移植到不同的前端。ASP.NET MVC对于语义网站来说非常棒,语义网站更便宜,更容易维护。

    ——更多的东西

    这是 采用一种更充分地利用其运行介质的网络技术所带来的几个好处。其他包括:

    • 更好地分离模型视图和控制逻辑,因为它很好地实现了MVC,但是这会使代码更松散地耦合,并且最终坚持更单一的责任原则。 维护成本更低

    • 更多的基于标准,这意味着所有酷孩子使用的jquery和css技巧更容易使用,因为这些技巧在格式良好的基于语义的文档中非常出色。这意味着 增加天赋更便宜

    • RESTful、URL驱动的请求。你的URL并没有指定一些.aspx来加载,也没有用它可怜的代码在一堆层上做大量的工作。您的URL指定了一个请求,该请求会导致路由器调用模型层功能。 哪个在应该去的地方运行 ,然后将相关数据转储到视图。这里有很多好东西:

      • 这使得一个控制器可以更容易地为页面、Web服务、Ajax提供服务,并处理所有CRUD情况,但都围绕一个上下文。

      • 责任由从路由器调用的方法处理 每一组相关责任都可以具体化为一个控制者。

      • 您可以控制将哪些数据放到哪里,您可以自定义构建一个视图模型,将其放到视图中,而视图只包含显示它的逻辑,从而使 简单而安全 尤其是在视图上工作的人不是在控制器逻辑上工作的人。

    还有很多,但是在我输入这个的时候,所有其他的答案可能都已经发布了。

        2
  •  2
  •   Tim S. Van Haren    14 年前

    客户通常不关心在构建网站时使用了什么技术,所以我将使用成本作为使用ASP.NET MVC的驱动因素。让客户知道,如果他们选择技术X,他们的成本最终会更低(即使这不一定是真的)。底线是一个强大的谈判工具。

        3
  •  2
  •   stimms    14 年前

    在大多数情况下,客户不关心引擎盖下发生了什么,只要是这样。

    • 便宜的
    • 可靠的
    • 可维护的
    • 与他们目前拥有的任何产品兼容

    便宜易卖,ASP.NET MVC免费。可靠?它是由微软开发的,这是一个很容易卖给大多数PHB的产品。可维护的?因为这是一项新技术,而且没有很多专家,所以这有点棘手。然而,这里的卖点是,它比WebForms更接近纯HTML,因此对于几乎所有开发人员来说都应该易于维护。

    兼容更难,但是如果MVC中的用户控件就是这样的话,您可以使用它们。这个问题你必须自己解决,因为它是客户特定的。

        4
  •  1
  •   Murph    14 年前

    这是一个分层问题:

    1. 为什么要使用.NET-功能和性能(并且说它是一种你能接受的技术没有什么坏处)。IIS7正在成为一个非常令人印象深刻的平台。
    2. 为什么要使用ASP.NET MVC?钥匙卖给 客户机 这里是你对输出的控制水平-这是一个权衡,你决定作为一个开发人员加入,你有更多的控制,所以在某些方面你有更多的工作要做,但是对于一个客户的胜利是在结果页面中,它应该更小,更符合标准,更友好的搜索引擎,通常所有的事情。公共网站应该是。
    3. 但如果是一个 内部的 网站你必须做出一个更仔细的判断,形式 作品 ,您可以产生非常好的结果,如果您知道将要部署到其中的环境,您可能会发现,与MVC相比,它提供的构建基块的效率更高。

    顺便说一句,没有什么可以阻止您在Web表单中使用MVC模型的优势-我们最负责任的错误是未能正确地分离逻辑,因为这太容易了,不容易,但从一张干净的石板上,您可以在您允许的范围内进行攻击。

        5
  •  0
  •   Paul    14 年前

    我会走另一条路,找到一些蹩脚的ASP.NET Web表单网站来展示它们。应该很容易。:)