This session is a high-level look at the most common ways that modules can add additional functionality to, or alter the existing functionality of, Drupal 8 core. As well as a look at how to implement these patterns in your own code so others can extend, or alter your custom application, and the class of problems that each pattern addresses.
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 in a post hook world.
What are hooks
What are events
What are plugins
What are services
When should I use each of these things?