【问题标题】:Are the domain layer, persistence layer and presentation layer things i need to memorize if i plan to learn MVC?如果我打算学习 MVC,我需要记住领域层、持久层和表示层吗?
【发布时间】:2017-02-03 13:33:59
【问题描述】:

我正在观看一些介绍 C# 基础知识的教程。教他们的人正在使用领域层、持久层、表示层来设置项目,并且正在使用 Web 表单。过去我用 MVC 上过关于 PHP 的课程,但已经有一段时间了。我不记得他设置这些项目的方式。这是设置特定于 Web 表单或 C# 的东西吗?如果我打算使用 MVC 模型,我是否需要了解这些东西?

编辑:这种模式在 MVC 中使用吗?

【问题讨论】:

  • 这是一个设计原则。如果您刚开始学习 C#,那么首先获得一些语法和库知识可能会更好。尽管设计原则很重要,但如果您仍在为一门语言苦苦挣扎,则很难记住。顺便说一句,它不受技术的约束。这些原则在其他语言中也有效。
  • 我不会说“记忆”,但如果您想编写健壮且可重用的代码,这些肯定是您应该寻求理解的概念。 (注意:这些概念与 ASP.NET 或任何其他特定语言或工具无关。)

标签: c# asp.net-mvc asp.net-mvc-4 webforms


【解决方案1】:

听起来你找到了一个很好的教程。

一般的 MVC 教程将所有内容放在一个项目中,将业务逻辑放在控制器方法中,并完全跳过使用域模型。再说一次,一般的 MVC 教程并没有超出简单的“Hello World”或“TODO App”。

关于这些构造的相关搜索词,应该在教程中解释(如果没有,请查找另一个),是"layered design",具有 N-tier 和 N-layer 等实现。如果您对此进行搜索,您会发现大量资源解释了它的含义以及您应该使用它的原因。

参见例如Martin Fowler's arcicle on PresentationDomainDataLayering

学习 WebForms 或 MVC 绝对没有必要,但它有助于构建可扩展、可测试、可重用的应用程序组件。

【讨论】:

    【解决方案2】:

    这些是 SOLID 原则和关注点分离的一部分。它们是一种可以应用于几乎所有语言的方法,并且是值得遵循的良好原则。

    【讨论】:

    • 你可以有没有层的 SOLID 和没有 SOLID 的层,我不会说它们有那么紧密的相关性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 2014-01-30
    • 2012-03-26
    • 2021-02-11
    • 1970-01-01
    相关资源
    最近更新 更多