【发布时间】:2011-06-25 18:32:59
【问题描述】:
正如标题所说,我是 OOP 的新手,但我是自学 PHP 的。我们有一个运行内置程序 PHP 的系统,由于它的大小,现在修改起来有点困难。所以我正在研究用 PHP OOP 重写以使其更易于维护。
我现在正在制作课程列表。我们的系统是用于管理驾驶学校的,所以我们有学校、教师、学生和课程,我可以看到这些都是对象,因此也是课程。我的问题来自这样一个事实,我们有一所学校,但有很多教师、学生和课程,所以在构建程序时,我们需要显示这些对象的列表。因此,它们中的任何一个的列表本身是否会被视为一个类,或者在编程方面,是否有必要为每个教师、学生和课程创建一个实例。还是我错过了 OOP 系统设计中的一些基本内容。
正如我所说,只是在做 OOP,所以请对我温柔一点。
非常感谢 科林
感谢大家到目前为止的 cmets。我越想越明白,至少对我来说是这样。我的系统中的某物列表是一个对象。我想列表中的每个项目都将是一个表单,就像现在一样,因此对项目的任何选择都将导致运行一个新脚本,该脚本将创建一个学生、教师等的新实例以及执行方法新实例。
【问题讨论】:
-
查看一些 MVC 框架,例如 CodeIgniter 和 CakePHP。一旦您开始接触模型(基本上是您的学生、讲师和课程),如何处理您的案例就会很明显,并且您可以轻松地以结构化、可维护的方式使用它们。
-
我第二个 CodeIgniter,没有理由重新发明轮子。
-
我建议不要看看 CI 或 CakePHP,因为它们不会教你正确的 OOP。此外,您可能会得出模型 === 数据库的结论,这是不正确的。