By: Aisha Kaliel, Drupal Developer
Drupal is one of the world’s most popularly used open source content management systems, with Drupal 8 being the latest and greatest release. Drupal 8 is here with over 200 new and improved features, responsive designed themes, and improved content authoring and multilingual support. It was initially released in November 2015, and was one of the biggest updates in Drupal history. It is now currently on version 8.2.5 and as of January 14th of this year, Drupal has counted just over 1, 000, 000 Drupal 8 sites.
What has changed in Drupal 8?
Some of the biggest differences developers may notice working with Drupal 8 is it started to adopt modern PHP concepts and standards, object oriented programming (OOP) and many aspects of the Symphony 2 framework in core. With OOP, it allows for better code re-use and encapsulation, maintainability, and other conveniences that procedural programming doesn’t. Thus, Drupal has a new set of coding standards just for OOP.
The Drupal 8 backend is now powered by the Symfony2 stack. It is lighter, faster and provides the benefits of partial page caching, higher performance and efficiency, improved multilingual support. But Symfony wasn’t the only technology that was added. Drupal 8 also depends on other great web technologies such as CKEditor, Twig, jQuery, Backbone.js and Guzzle.
With Twig, Drupal 8 has a brand new way of theming. It is much easier to use, while also being significantly more secure. You can take a look at setting up a Drupal 8 theme with Creating a Drupal 8 Theme with Sass, Singularity & Breakpoint. But that isn’t the only improvement to themes, as Drupal 8 is now mobile first in its approach, all the built-in themes are responsive, including the admin theme.
Another big part of Drupal 8, is how much more was moved into core that used to be contributed modules. This includes popular modules such as Views, Features, Entity API, Date, Link, Entity reference, CKEditor, Wysiwyg, jQuery Update and many others.
There are so many other changes, but the last one I will touch on is the configuration management initiative. With the inclusion of a lot of what the Features module did, Drupal 8 can synchronize configurations across development (and production) sites. All configurations, including views, content types, fields, taxonomies, enabled modules and so forth, can be managed by importing and exporting YAML files. This can be done through the UI, with Drush, or even version control.
There two types of configurations: simple configuration and configuration entities. Simple configuration is similar to using variable_get() and variable_set(), as it stores basic configuration values like boolean values, integers and text, and only has one copy or version. Configuration entities on the other hand, store lists of more complex informational items. For more information on the the new configuration system, start looking at the the Configuration API page on Drupal.
Check out some of our other great posts about working with the new changes in Drupal 8!