Plugins Módulos funcionales de una aplicación Diferentes a las gemas en que éstos solo son accesibles a la aplicación que los utiliza Diferentes al directorio /lib en que son componentes reusables, e incluyen funcionalidad extra
Bajo acoplamiento, alta cohesión Debe hacer una sola cosa - y nada más - y ser independiente de los demás módulos
Monkeypatching Si uno hace pluginsembebidos directamente en uno de los componentes Rails, debe tener cuidado de no alterar la funcionalidad existente, o causar conflictos.
Realización de un plugin script/generateplugin
Realización de un plugin Pruebas! Documentación! Distribúyelo!
Anatomía de un plugin install.rb uninstall.rb
Anatomía de un plugin init.rb Pluginloader Se puede definir el orden de los plugins, al igual que con las gemas
Anatomía de un plugin lib Contenido va aquí Si es grande, separar (usualmente: rails -> app, models, views, helpers) tasks Rakefiles generators generators / destroyers, y templates tests Pruebas funcionales, de vistas, etc.
Ejercicio para el lector Modificar el plugin, de tal manera que se pueda especificar el nombre del campo, y no acepte solamente :birthday El modelo puede quedar algo así: classEventcounts_days_to:inauguration_date end
0 comments
Post a comment