Conoce el nuevo Symfony Maker Bundle

Si perteneces a la comunidad Symfony desde hace un tiempo, seguramente conoces y habrás usado alguna vez el SensioGeneratorBundle. Es un bundle bastante popular (más de 20 millones de descargas) que incluye comandos de consola para generar el código inicial de controladores, entidades, etc. Incluso incluye un pequeño generador CRUD.

Como SensioGeneratorBundle estaba empezando a quedarse bastante viejo y como el nuevo Symfony 4 permite unas simplificaciones asomborsas, hemos decidido abandonar SensioGeneratorBundle y crear un nuevo bundle llamado SymfonyMakerBundle.

SymfonyMakerBundle crea ese código inicial (llamado boilerplate code en inglés) que necesitan elementos como los comandos de consola, los controladores, los formularios, etc. Se trata de una alternativa a SensioGeneratorBundle que solo funciona en aplicaciones modernas que utilizan Symfony 3.4 o superior y Symfony Flex.

Obviamente el objetivo final es eliminar todo ese código inicial en vez de hacer que sea más fácil generarlo. Symfony 4 va en buen camino hacia ese objetivo, pero al final siempre tendrás que crea algo de código, así que mejor hacerlo con un bundle moderno, sencillo y muy ligero.

Generando código con los "makers"

El uso del bundle es muy similar a SensioGeneratorBundle, pero los comandos ahora usan el prefijo make: en vez de generate:. En esta primera versión, hemos implementado los siguientes "makers":

$ php bin/console list make
 
  make:command
  make:controller
  make:entity
  make:form
  make:functional-test
  make:subscriber
  make:twig-extension
  make:unit-test
  make:validator
  make:voter

Más adelante añadiremos más comandos, incluyendo algunos que sean más interactivos (ejemplo: generar una entidad de Doctrine preguntando por sus propiedades, generar un formulario basado en una entidad de Doctrine, etc.)

Cómo puedes ayudar

La mejor forma de ayudar es probar este bundle en tus aplicaciones reales y reportar todos los errores que encuentres. También puedes revisar el código para detectar problemas o ayudar a mejorarlo.

Si tienes ideas sobre nuevas funcionalidades o nuevos "makers", es mejor que crees un issue en vez de que nos mandes un pull request. Así podremos discutir sobre ello.

Por último, una forma sencilla de ayudar y que nos motiva mucho consiste en que le des una estrella en GitHub al repositorio del bundle.

Fuente: Introducing the Symfony Maker Bundle

Comentarios

Publicada el

22 de noviembre de 2017

Etiquetas

Proyectos Symfony destacados

La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más

Síguenos en @symfony_es para acceder a las últimas noticias.