在CMS应用程序(如WordPress)中,CMS仅加载插件,然后插件从CMS请求其依赖项(如数据库,配置等),其作用类似于注册表。
我还没有看到用PHP编写的CMS应用程序没有使用这种模式(或反模式)。它们都以某种方式使用注册表,例如:
craft()->request->getPost('id') (craft)
或
global $wpdb;
$wpdb->insert($table, $data); (wp)
或
$db = Database::getConnection(); (drupal)
或
$db = JFactory::getDbo(); (joomla)
因此,对于这种类型的应用来说单身模式是不可避免的吗?
答案 0 :(得分:1)
因此,单一模式对于这类应用是不可避免的,对吗?
我不能说这是直截了当的。 Singleton是一种设计模式,而非要求。 事实上,大多数开发人员都在不知不觉地实现设计模式。 我敢打赌,如果有人会努力尝试,他会找到一种完全避免单身人士的方法。 我不知道为什么这会让你烦恼。但这是我能提供的最佳答案。
答案 1 :(得分:1)
许多(可能所有?)内容管理系统都使用这种面向对象的php编程,因为它是最干净,最好的编码方式。当然可以避免它,但代码不再保持这种结构。
如果你发现这很奇怪,你应该学习如何使用它,你会发现它是一种非常干净的编码方式。
可在此处找到更多信息:
http://code.tutsplus.com/tutorials/object-oriented-php-for-beginners--net-12762
在这里: