Archivos de Junio del 2010
Ejemplo para iniciar tu campaña de marketing en Facebook
Facebook se ha convertido en un nido de posibles clientes, un público que domina internet y además le gusta. ¿Cómo podemos aprovechar eso? [...]
Continuar leyendo960 Grid System - ¿Cómo funciona?
En este atículo explicamos el funcionamiento de este sistema. [...]
Continuar leyendoUsando EC2 de Amazon para el hosting de aplicaciones Rails
Para estrenar la categoría de Lanzamiento voy a hablar como usamos Amazon EC2 en 3sellers. EC2 es un servicio de Amazon que ofrece un acceso barato y rápido a una gama amplia de servidores [...]
Continuar leyendoObservers y callbacks en modelos gorditos
Un buen concepto de diseño o buena práctica en rails (y en cualquier aplicación que siga el patrón Modelo Vista Controlador) es el de Fat Model, Skinny Controller. Consiste en mover tanta lógica de negocio como sea posible al modelo y de dejar al controlador como un simple agente que se encargue de interactuar con modelo y enviar los resultados a la vista.
Con esta práctica se limpia el controlador de responsabilidades que no son suyas y de código que seguramente estará repetido en otros controladores, permitiendo mejor reusabilidad, mantenimiento y testeabilidad de código.
Por tanto nuestros modelos tienden a engordar, englobando todas las operaciones pertenecientes a ellos mismos, con validaciones, callbacks, etc..
Las validaciones permiten asegurarnos que nuestra base de datos solamente se llenara con datos validos. Los callbacks y los observers nos ofrecen la posibilidad de realizar ciertas acciones antes o después de alterar el estado de los objetos.
No hay duda de que las validaciones han de ir en los modelos. Crearlas en los controladores nos implicaría repetirlas en cada controlador que interactuara con ellos.
El problema es cuando implementar callbacks y cuando observers, ya que ambos son similares.
