WordPress会变得完全面向对象吗?

时间:2011-04-05 作者:Eugene

有没有关于WordPress在未来版本中变得完全面向对象的信息?

2 个回复
最合适的回答,由SO网友:MikeSchinkel 整理而成

我可以99.9999%肯定地说,WordPress在未来的版本中永远不会成为完全面向对象的,最重要的是,这个主题已经在wp黑客列表中多次出现,核心团队成员也没有表示有兴趣这样做。

当我从1990年左右开始学习OOP编程和教学的个人经验时,我同意核心团队的观点,认为完整的OOP将是一个错误。虽然我曾经是OOP的狂热者,认为OOP是一剂灵丹妙药,但后来我开始相信,它在某些情况下有其价值,但在其他情况下,它会阻碍我。

我发现OOP的一个最大问题是,它迫使开发人员在开发人员真正理解结构之前很久就加入到结构中,然后导致the fragile base-class problem.

当然,对于WordPress的某些方面,OOP很有意义,如果你学习core,你会发现这样的类;Widget, List_Tables (在3.1中)等。

现在,我很高兴以一种非面向对象的范式与WordPress合作,我认为如果WordPress是纯面向对象的,那么它就永远不会获得以下效果。为什么?因为OOP会提高潜在WordPress主题开发人员和插件开发人员的复杂性,并且很可能会导致应用程序不够灵活,无法随着核心团队在过去6年中更多地了解用户的需求而发展。

不管好坏

SO网友:onetrickpony

随着每一个新版本的发布,很多WP组件都会在OOP代码中重写,新组件往往会利用它(例如WP_Customizer 事情)。但是,如果你问WP是否会将其体系结构更改为完全面向对象的体系结构,那么没有,目前没有任何信息表明这一点。

我不想说它永远不会发生,但不太可能在不久的将来发生,而且可能不是因为“基类”问题:)

首先,对于像WordPress这样的CMS应用程序,在OOP上使用过程代码只有缺点,因为这样的应用程序是通过插件扩展的。混合使用函数和全局变量并不能使这一切变得更容易。在写WP的时候,没有人能够预测WP会变成什么样子,做出了许多糟糕的选择。现在很难赶上,因为大多数插件和主题都会停止正常工作。实现一个巨大的兼容性层来避免这可能会减慢WP的速度,并在开发人员中增加更多的混乱。还想一想目的是为了让开发人员的生活更轻松,而让用户付出代价吗?

如果有帮助—a very old discussion 关于wp黑客,但仍与此主题相关,以及proposed idea 现在被社区标记为“插件领域”。我最近没有注意到这方面的其他活动。

结束

相关推荐

Pagination with custom loop

我的问题可能是Pagination not working with custom loop, 但有一种不同。我使用自定义循环来显示flash游戏。我想按类别在游戏页面上分页。类别php:<?php if ($cat) { $cols = 2; $rows = 4; $paged = ((\'paged\')) ? get_query_var(\'paged\') : 1; $post_per_page = $cols * $rows; // -1 s