Novedades en Drupal 8 (IV): Mejoras para programadores

En el anterior post, hablamos de las novedades de Drupal 8 para diseñadores y front-end developers, comentando algunas mejoras como el uso de HTML5, Twig, Markup limpio o fin del soporte para Internet Explorer 6, 7 y 8. En esta ocasión os hablaré de las mejoras para desarrolladores. ¡Allá vamos!

Web services

La idea principal es que en Drupal 8 todas las entidades podrán ser expuestas como Web Services y ser consumidas por terceros. Para ello se ha incluido en el core los diferentes módulos como "RESTful Web Services" que expone las entidades y otros recursos via una API web de tipo RESTful o el módulo Serialization que provee un servicio de "serialización" de los datos a diferentes formatos, como JSON y XML.

Aquí tenéis un ejemplo de cómo poner en marcha un webservice con Drupal 8 de manera muy fácil.https://www.appnovation.com/blog/setup-drupal-8-restful-web-services-3-easy-steps

Componentes Symfony

En la nueva versión, Drupal adopta algunos componentes de Symfony, incorporando a su arquitectura de bajo nivel los siguientes componentes: HttpFoundation, HttpKernel, Routing, EventDispatcher, DependencyInjection y ClassLoader.

Y aquí podemos debatir las ventajas e inconvenientes de esta adopción. Yo personalmente, considero como ventajas que el código de Drupal es mucho más profesional y moderno, además de poder integrar mucho más facilmente un Drupal con un proyecto Symfony. En cuanto a las desventajas, está claro que los desarrolladores de Drupal tendrán que tener conocimientos avanzados de programación. El caso es que al utilizar Symfony habrá nuevos desarrolladores que no tendrán tanto miedo a entrar en Drupal, lo cual puede compensar esta desventaja.

En todo caso, bienvenido sea este cambio de arquitectura, que, si bien nos complicará un poco la vida al principio, a la larga puede ser mucho más beneficioso, creando un producto con una arquitectura más fiable y rompiendo con algunas malas prácticas del pasado.

 

Configuration Management

En Drupal, tanto la configuración como el contenido de nuestra web están en la base de datos. Esto puede significar un gran problema si quieres tener diferentes entornos de desarrollo y producción. Para solventar este problema, en Drupal 7 se trabajaba con módulos como Features, que permitían exportar nuestras configuraciones a código, evitando así problemas con los contenidos que podían haber cambiado en producción.
 
 
Drupal 8 incorpora en el core el módulo "Configuration Management", que nos permite exportar todas las funcionalidades de nuestro Drupal, pudiendo tener el código en un repositorio de versiones y dándonos la posibilidad de tener diferentes entornos de desarrollo.
 

Conclusión

Este es el último capítulo de los novedades de Drupal 8. Como hemos podido ver, tenemos cambios muy beneficiosos para usuarios finales, para site-builders, para diseñadores y front-end developers, y también para programadores. Ahora sólo falta probarlo, y si eres un valiente, probar de desarrollar un proyecto para un cliente final.

 

Contact

Are you interested in our services?

Contact us