1

之前我问过这个问题:我 应该创建一个对象还是使用数组工作

我现在正在尝试超越我正在使用的概念进行思考。请与我分享你的想法。我想得到这个。

如果我将 MVC 与数据映射器结合使用,这是否合乎逻辑,例如对于论坛:

所有重要的事物都是实体。帖子、主题、用户、论坛。基本上,我将控制器视为页面。它可以选择显示不同的模板(例如列表或表单),但它或多或少是页面。

通过路由器,我将加载所需的控制器,以获取数据并将其显示在我的模板中。

现在这将如何工作,以显示线程中的所有帖子:

路由设置为线程-> 加载线程控制器-> 控制器向实体(帖子、用户)询问信息-> 实体告诉映射器他们需要什么-> 映射器从数据库中获取它并将其返回给实体-> 实体返回信息到控制器 -> 控制器返回信息到视图 -> 视图显示。

这是正确的想法吗?

那么“模型”从 MVC 到哪里去了?还是我缺少步骤?

我不想使用第三方工具,我想从头开始构建它,以了解发生的一切。

我该如何开始呢?

4

1 回答 1

-1

我倾向于将页面视为控制器(渲染之前所需的逻辑)和视图(确定页面的外观)的总和。一般来说,我建议您不要先编写自己的,因为您将使用尚未完全理解的设计模式。我认为最好选择一个流行的 PHP 框架,看看它是如何实现的,然后如果你仍然介意,尝试编写自己的。在我看来,编写所有这些代码需要做很多工作,尤其是如果您也想编写 ORM!

尽管我们回避有关 Stack Overflow 的框架建议,但我从这里的评论中了解到 Symfony2 被认为是这种设计模式的最佳实现之一,特别是因为它使用了依赖注入。一定要在这里阅读一些带有“mvc”标签的问题——有很多可以选择的。对于它的价值,我不会过多地关注设计模式(即框架 X 是否实现模式 Y)——只要你的应用程序是模块化的并且易于测试,那就是一个巨大的胜利。

于 2013-06-01T13:58:40.883 回答