/ / Marco de juego Principios Sólidos - scala, arquitectura, playframework

Principios de SOLID del marco de juego: scala, architecture, playframework

Estoy aprendiendo Scala / Play2.1.3 de un fondo C # /. Net / ASP.NET MVC.

Me pregunto por qué no hay soporte de inyección de dependencia por defecto?

En las muestras de reproducción, todos los métodos de acceso a datos son estáticos en las clases de modelo de dominio. Utilizan fábricas en lugar de inyecciones. ¿Qué pasa si quiero burlarme de algunos métodos de acceso a datos para la prueba de unidad?

No hay ORM de alto nivel listo para usar allí. ¡En realidad me desaniman a usar ORMs! Con respecto a las bases de datos de SQL, no puedo creer que tenga que escribir uniones nuevamente, lo cual no recuerdo la última vez que escribí una cláusula de unión. ¿No es un paso atrás?

He aprendido a usar los principios de SOLID que no se observan en Play Framework (completamente) IMO.

¿Me equivoco tu debería considerar usar otro framework?

Respuestas

1 para la respuesta № 1

Tiene razón, la mayoría de las muestras no utiliza la inyección de dependencia. Pero desde la versión 2.1, es posible inyectar los controladores y sus dependencias.

Para la inyección de dependencia, verifique la doc y también, como hacer la prueba (ultimo parrafo).

Pero como hay muchas llamadas estáticas, podrías terminar con alguna referencia estática en algún lugar y no podrás probar tu código por unidad.

Pero creo que Play es un gran marco, el equipo está modularizando cada vez más el marco, para que sea mejor y mejor con respecto a los principios de SOLID.