0

我用 PHP 编码已经有一段时间了,但我主要是用函数和原始 PHP 编码。

我开始认为我应该把我的代码写得更整洁、更高效。我仍然无法完全理解课程。我应该在课堂上编写所有代码吗?

例如,我的脚本之一是“权限管理器”——它允许管理员编辑站点上各种用户组的权限。

传统上,我会把它写成一个带有函数之类的脚本。但是把它写成一个类会更好吗?如果是这样,这个类将包含什么?我是否有一个单独的权限类用于站点周围,另一个用于管理编辑区域?

该网站也有一个API。这些都应该写成一个类吗?

另外,我应该使用公共(共享)功能吗?

谢谢!

4

4 回答 4

1

当属于和/或面向同一实体或提议的一组特定函数和变量要在不同环境中使用时,在类中编写内容很有用。它给人一种组织感、任务委派的感觉,并避免了代码的重复。

但在上述错误的情况下,它完全是一次性的。为只在一个特定位置运行的东西编写一个类是没有意义的。

此外,如果您只想将一组信息组织成类似 in 等对象的样式$user->name$user->age您可以简单地执行以下操作:

$user = (object)array(
    'name' => 'John',
    'age'  => 20
);
于 2013-03-13T21:48:10.223 回答
1

在我看来,一切都取决于你的项目有多大。我使用 Magento 已经有一段时间了,它太大了,必须按类和数据包进行分组。如果将项目拆分为类,则更容易阅读代码和分析项目的结构。此外,当您需要在一个月或一年后修改您的项目时,良好的结构有助于重新学习它。

于 2013-03-13T21:44:57.470 回答
0

你应该从不同的角度来处理这个问题。不要仅仅因为您认为必须使用 OOP 而使用 OOP。

问你自己:

  1. 我的应用程序的某些部分是否可以在我的应用程序的其他部分中重用?然后这些可以从你的脚本中取出并放入一个函数或类中。

  2. 是否存在您希望交换部分代码以更改行为而无需重写应用程序的主要部分的情况?然后类和接口适合您。

使用 OOP 原则的另一个很好的论据是提高了代码的可测试性。使用接口允许您在测试时将实际对象交换为模拟或存根。

于 2013-03-13T22:44:23.350 回答
0

是的,在我看来,最好让你的代码OOP更整洁、更易理解、更易读,而且维护起来也更容易,请在这个堆栈中查看: https ://stackoverflow.com /questions/4409824/what-are-the-advantages-of-object-oriented-php

于 2013-03-13T21:41:25.077 回答