问题描述
我想非常清楚地表明,这并不意图重新启动与 object-oriented 编程有关的功能/程序编程的讨论。有很多关于这个,在 WPSE 和网上。
不过不久之前,我正在阅读关于 WordPress 编程基础的一些讨论,我读了一些东西 – 我必须改写,因为不幸的是我当时没有加入书签 – 大致如下:
One of the appealing things about using WordPress is that they are additionally working based on the event-driven paradigm of programming.
从我所理解的 event-driven programming 在这种情况下几乎是 signal 或 dataflow 编程的同义词。此外,最有可能过度简化它 – 可能主要的明显特征是使用 hooks – actions 和 filters 作为该方法的关键。
到现在为止还挺好。似乎很简单,但我不是来自计算机科学的背景,所以我很确定有更多的要说。我真的很感兴趣的一些输入,像:这是真的关于还是上面说的呢?这是一个额外的范例吗?它与其他的关系如何?这是一个核心原则还是只是一个补充?
那些刚刚脱离头脑的人,明显违反规则,不要问一个有一个明确答案的单一问题,但也许这将会被原谅。
最佳解决思路
首先让我们澄清一下 paradigm
在编程中的含义。这意味着我们达成协议,以某种方式处理某些案件/问题/情况。
例如,我们达成协议,foot-passenger 应该在我们国家的绿灯上过马路。这是我们的绿灯范例。在另一个国家可能是一个共同的道路的协议。那就是他们提出的手范式。他们彼此没有关系,他们只是存在,脚乘客可以使用范式,或创建自己的交叉路,每当我想要范式。
同样的情况在编程中。范式只是一套以某种方式开发应用程序或使用某种方法的规则或协议。而已。
好的,回到 WordPress 和事件驱动的范例。这个范例只是整个 WordPress 系统的一部分。这个范例设置了一堆规则/协议,如何通过第三方扩展扩展核心,其中动作和过滤器的钩子是线性方法。注意这个范例只涉及可扩展性案例/问题/情况,这不仅仅是 WordPress 使用的范例,而是其中的核心。
就这样。当然你可以使用自己编写的一个插件/主题,我想要什么样的范例,并开心吧:)
次佳解决思路
我认为用事件驱动的范式,谁写的文章打算 Observer Pattern 。
而在 WordPress 中的处理通过 Plugins Api 。我不觉得还有更多的话要说。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。