Altering, Extending, and Enhancing Drupal
A large part of Drupal's appeal lies in its flexibility. The fact that a developer can alter, extend, and enhance almost any aspect of Drupal without having to hack core. This flexibility is made possible by a couple of important development patterns; hooks, events, plugins, and services. Understanding what each one does, and their use-cases is required knowledge for any Drupal developer.
Drawing from my experience helping to document and explain these new patterns in various formats I hope to answer these questions:
- What are hooks, plugins, events, and services?
- What problems do these patterns seek to solve?
- How do I decide which method to use and when?
- Where can I find example implementation of each of these patterns?
- Looking ahead to the future, how do these patterns affect the code I write today?
If you're currently writing modules for Drupal 8, porting modules from Drupal 7, or think that you might have to sometime in the future, or even if you're just curious how the module ecosystem fits together behind the scenes this session contains critical information for you. After attending this session you should have all the background information you need to make informed decisions about how your custom code can, and should, talk to Drupal in order to uphold best practices and write modules that are easy to maintain and play well with others in a post hook world.