In this article, we gonna see why Symfony was picked for Drupal and what it changes for developers. As we all know PHP evolved rapidly in the past years, and unfortunately, Drupal adjustment to this development was not satisfying, especially in the case of software engineering patterns adoption. And that is one of the reasons why Drupal Developers had to come up with creative ways to deal with such issues.
In 2012, Drupal made a step forward by building Drupal core using Symfony components, to meet the developers expectations. And this change will benefit Drupal developers in many ways:
1. Save Time:
Drupal developers can save time by not spending time, to solve the same problem which is already solved by another community of developers.
2. No need to reinvent
Symfony will provide many tools for most of the regular and recurring tasks you do on every project. So there will be no need to reinvent the same thing once again.
3. Add value to others
Developers can shift the focus to other things and build some features which will really add value to Drupal as a product.
4. Explore or Expand Drupal
Drupalers can explore common patterns and principles that can be applied beyond Drupal and also can enforce the PHP-FIG standards, also can promote or write decoupled code.
Symfony components used?
The main Symfony components used in Drupal are:
- Console
- Dependency Injection (service container)
- Event Dispatcher
- HTTP Foundation
- HTTP Kernel
- Routing
- Serializer
- Translation
- Validator
As it is viable & visible, using or having Symfony components in Drupal core was a beneficial solution for the content management system. Thanks to that, CMS is more business-oriented and provides better efficiency.