Skipper es la mejor herramienta que he visto hasta el momento para diseñar modelos de datos y exportarlos a Doctrine 2. Utilizar una herramienta como esta facilita mucho la tarea y evita posibles errores que podríamos cometer escribiendo manualmente las clases.

Multiplataforma y muy configurable

Hay dos cosas que me encantan de Skipper, la primera que es multiplataforma y la segunda que es altamente configurable. Aunque desde su interfaz no es posible controlar tantas opciones como me gustaría, tiene un sistema muy potente de configuración mediante ficheros XML, ideal para versionar junto al código del bundle o la aplicación que estemos desarrollando. Para los proyectos con Symfony + Doctrine he creado una configuración que podéis ver en este gist.

El fichero .skipper que genera la aplicación es un XML, lo que significa que podemos versionarlo junto al código y con un poco de mañana hacer modificaciones manuales. Útil, por ejemplo, cuando modificamos el nombre de una clase y queremos hacer lo mismo con todas las claves ajenas que apuntan a ella, lo abrimos en el editor de texto y realizamos una operación de sustitución de cadenas.

Skipper soporta la exportación de clases para Doctrine en PHP con anotaciones, YML o XML. En mi caso he optado por PHP con anotaciones. Aunque la exportación funciona perfectamente y respeta el contenido de las clases existentes, es buena práctica asegurarnos de que tenemos correctamente versionado el código para poder volver atrás en caso de cualquier anomalía.

Tras exportar las clases podemos ejecutar en nuestro proyecto Symfony app/console doctrine:generate:entities y sólo nos quedará escribir los validadores y hacer algunos retoques.

Por el momento no es posible definir validadores o valores por defecto en proyectos Doctrine 2, en mi opinión funciones que evitarían bastante trabajo y que se agradecerían bastante. En cualquier caso es posible contactar con el equipo de desarrollo a través del foro de soporte, en el que aceptan sugerencias sobre nuevas funcionalidades o mejoras.

Su precio

Puedes probar Skipper gratuitamente durante 14 días. Aunque es una herramienta de pago, creo que su precio es más que razonable si tenemos en cuenta la comodidad que aporta y el trabajo que nos puede ahorrar. Además, si haces una review como esta el equipo de Atlantic18 te ofrecerá un jugoso 20% de descuento que no viene nada mal ;) . Si sólo necesitas ver el diagrama de un proyecto sin modificarlo siempre puedes instalar de forma totalmente gratuita el programa en modo visor.

Una <img> vale más que mil palabras

A continuación, os dejo unas capturas de pantalla que he tomado del proceso de importación de un proyecto Symfony existente, el resultado obtenido y su posterior exportación.

El modelo de datos pertenece a la aplicación "Cupón" que aparece en el libro "Desarrollo Ágil con Symfony2" de Javier Eguiluz, 100% recomendable para todos aquellos que tengáis interés en iniciaros en Symfony 2.


Sistema de comentarios ofrecido por Disqus
Debes aceptar el uso de cookies para ver los comentarios.