【问题标题】:The Model-Repository-Service-Validator-View-ViewModel-Controller design pattern (?)Model-Repository-Service-Validator-View-ViewModel-Controller 设计模式 (?)
【发布时间】:2011-01-06 17:06:02
【问题描述】:

当我第一次听说 ASP.NET MVC 时,我认为这意味着应用程序具有三个部分:模型、视图和控制器。

然后我阅读了NerdDinner 并学习了存储库和视图模型的方式。接下来,我阅读了this tutorial,很快就被服务层的优点所吸引。最后,我阅读了Fluent Validation documentation,如果我最终没有写一堆验证器,我会被诅咒的。

今晚,我退后一步,思考我的项目变成了什么。它似乎已成为相当于“功能蠕变”的设计模式的牺牲品。不知何故,我从 Model-View-Controller 转到了 Model-Repository-Service-Validator-View-ViewModel-Controller。你想要松散耦合和 DRY 吗?我们在这里得到了您的松散耦合和干燥!但我想知道这是否是一件好事。

我有理由担心吗?或者这实际上并不像听起来那么疯狂?一方面,有这么多层次似乎很疯狂。另一方面,每一层都有一个明确定义的目的,这对我来说很有意义。您的 MVC 应用程序是否也变成了 MRSVVVMC 应用程序?如果不是,它们长什么样?正确的平衡在哪里?

【问题讨论】:

    标签: asp.net asp.net-mvc design-patterns web-applications


    【解决方案1】:

    如果您有一个具有三个属性的表单,那就大材小用了。

    但如果你有一个“真正的”应用程序,并且每一层的职责都被明确定义,我会认为它非常合理。

    【讨论】:

      【解决方案2】:

      在我看来,您似乎找到了一种模式并开始寻找问题。您应该找到问题,并使用工具箱中的适当工具……而不是所有工具。当然,除非这是一项学术活动。

      【讨论】:

        猜你喜欢
        • 2014-06-16
        • 2020-05-07
        • 2011-12-04
        • 2015-05-14
        • 2023-02-02
        • 1970-01-01
        • 2017-01-21
        • 2014-01-10
        • 2011-05-31
        相关资源
        最近更新 更多