在我看来,在创建模块时,你使用Drupal的钩子就像一个接口,通常你实现的接口强制使用相同的方法名称但是可以说Drupal研究所的命名约定符合这种设计模式吗?
答案 0 :(得分:3)
This是关于OOP和Drupal的好文章。
Drupal的钩子系统是其界面抽象的基础。挂钩定义可以在模块上执行或由模块执行的操作。如果模块实现了一个钩子,它会在调用钩子时进入一个合同来执行一个特定的任务或返回一个特定类型的信息。调用代码不需要知道关于模块的任何信息或钩子的实现方式,以便通过调用钩子来完成有用的工作。
但是,如果在OOP中有接口,则需要实现所有非抽象方法。使用Drupal,您只需实现所需的方法。
就我个人而言,我发现更容易采用Drupal而不是尝试将OOP概念应用于其架构。