As Drupal developers it is an exciting time for us. For years we have lived on an island happily (mostly) developing our CMS to handle the madrid of challenges we face when developing web applications. Over the past few years a wave has been forming, this wave is going to take us off the island and deliver us into new waters. This wave is Drupal 8 and along with it comes many new concepts, design patterns, and tools to learn.
No matter how large we get as a community the overall PHP community will be larger. Many of the initiatives in Drupal 8 have chosen to embrace some of the more popular developments happening in the PHP community. This enables us as Drupal developers to spread our wings and learn technologies that will not only help us with Drupal but with other tools leveraging the same ideas. I hope this also attracts other developers outside of Drupal to come on board and share their ideas and experiences and contribute to our platform.
Below I have outlined some of the core concepts that I believe will be important for us to learn as Drupal 8 developers. I’ve linked out to a few resources for further insight:
- Configuration Management with YAML.
- Adoption of PSR-0.
- The use of the Composer dependency manager
- New routing system, hook_menu doesn’t do it all for us anymore.
- Object Oriented Concepts
- The idea of a Dependency Injector and container. There was an excellent talk at DrupaCon to get us up to speed quickly:
- Leveraging many of Symfony’s components.
Bottom line, if you are not comfortable with object oriented programming and want to continue developing for Drupal into the future it's probably time to get up to speed.
Over the course of the next few posts I will be taking a closer look at some of these core concepts. My hope is to present these topics in a clear succinct manner.