ruby-on-rails ruby architecture model domain-driven-design

ruby on rails - ¿Hay alguna aplicación Rails de ejemplo en la que la lógica comercial se mantenga en clases separadas de ActiveRecord?



ruby-on-rails architecture (2)

Hasta donde yo sé, los ferrocarriles se acercan al negocio del modelaje de manera bastante diferente. Conducen de manera más o menos consciente el diseño de una manera centrada en los datos. Puede parecer contradictorio y malo si nos aferramos, por ejemplo, a la orientación del objeto.

Pero, como dicen los cristianos: "la libertad viene de las limitaciones".

Si somos capaces de expresar nuestro dominio en la moda CRUD, disminuimos en gran medida la complejidad técnica, obtenemos REST gratis, etc.

Esta publicación en el blog lo explica mejor que yo (no te pierdas la presentación de DHH )

Y aquí hay algunas ideas de Scott Belware sobre este tema.

Pero si insistes y quieres experimentar un poco, tal vez quieras probar data-mapper .
Desafortunadamente, aún no lo he probado, entonces no puedo comentar.

Ha habido un aumento reciente en la comunidad de Ruby de publicaciones de blogs, tweets y comentarios sobre los beneficios de utilizar un mejor diseño de OO, y específicamente separar la lógica de negocios de la lógica de persistencia. Especialmente para aplicaciones más grandes, veo esto como un excelente consejo.

Estoy interesado en encontrar un ejemplo completo de la aplicación Rails donde la lógica comercial esté completamente desacoplada del ORM (ActiveRecord u otro). Específicamente, soy interesante al ver cómo se pueden manejar las limitaciones de la base de datos, la validación de reglas comerciales, la limpieza de parámetros, las clases de servicio, etc.

Alguien sabe de una aplicación de código abierto como esta?


Los que estoy familiarizado son de Jeff Casimir (@ j3). Aquí está su presentación de Railsconf 2011. También creó una gema llamada draper que usa algunas de esas ideas. Ryan Bates hizo un reparto de rieles utilizándolo así que con suerte eso le da algunas ideas.