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. Knowing what systems are available for doing so, and how to make use of them is critical for anyone developing with Drupal.
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?
- 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.