7

查看 MVC 框架,似乎我们需要更多的经典 ASP 知识,然后是 ASP.NET 回发和视图状态。我们是否在实际的前端 HTML 标记中向后移动到复杂的 UI + 代码逻辑?

4

5 回答 5

8

我们正在回到不试图抽象出 HTML 和 HTTP 请求等基本概念。在 UI 端,这意味着视图与输出更紧密地集成在一起,这不是一件坏事。经典的 ASP 模型转化为将所有内容与输出紧密集成,这一件坏事。

于 2008-10-13T21:37:09.503 回答
2

如果你认为 ASP.NET 范式向前迈进了一步,我猜,有人可能会争辩说 MVC 范式是一种倒退。就我个人而言,我一直认为在经典的 ASP 中编写干净分离的代码要容易得多,而不是在 .NET 中,显示输出文本通常被混入代码块中,无法使用标准的 HTML 编辑器进行访问。我一直认为 ASP.NET 架构更多的是推动 .NET,而不是改进我们应用程序的整体结构,所以从这个意义上说,MVC 是向前迈出的一步。

于 2008-10-13T21:50:26.823 回答
1

你提到这个很有趣......我今天和一位同事进行了同样的谈话。

是不是倒退了一步?我不这么认为......虽然在经典的 asp 中,您在 UI 中有一些复杂的逻辑,但从我在 MVC 中可以看到,复杂的逻辑应该仍然存在于您的业务对象中,并且与对象的任何复杂交互都应该通过控制器完成。

同样,据我所见,目标是在涉及实际业务逻辑时保持 UI 整洁和适合。使用 AJAX 和 JQuery 等使 UI 更加用户友好会导致任何额外的膨胀。

这只是我对 MVC 的初步观察。这是一项非常酷的技术,尤其是它位于 REST 之上的方式,使其非常容易与其他技术一起使用。

我期待在未来的几个项目中尝试它!

于 2008-10-13T21:32:20.293 回答
1

如果您在视图中看到相对于模型和控制器的复杂代码逻辑,那么您可能以错误的方式接近它。

从纯粹意义上讲,您应该能够以最少的工作切换视图(比方说是 XML,而不是 HTML)。只有当数据逻辑包含在模型中并且业务逻辑包含在控制器中时,才会发生这种情况。

因此,如果您正在显示购物车,则视图可能只有写出产品数量和总数的代码。模型类将保存产品数据,控制器将执行所有处理,例如添加产品和签出。

于 2008-10-13T22:41:13.540 回答
0

MVC 的全部意义在于代码的分离。模型应该包含你所有的业务逻辑,视图应该只处理用户的输出,控制器应该将这两部分粘合在一起。

于 2008-10-13T21:33:31.147 回答