El back será la parte más robusta del sistema. No importa si carga muchas librerías, archivos, etc. Se sobreentiende que la frecuencia de cambio del contenido es mucho menor que la frecuencia de acceso al mismo (consultar Anexo, ‘Relativización de los contenidos dinámicos’).
El back será la parte más robusta del sistema. No importa si carga muchas librerías, archivos, etc. Se sobreentiende que la frecuencia de cambio del contenido es mucho menor que la frecuencia de acceso al mismo (consultar Anexo, ‘Relativización de los contenidos dinámicos’).
La principal abstracción organizacional que planteo para el back, se define como Componente. Un componente tendrá la esencia del patrón MVC, como el primer ejemplo planteado, pero dentro de un marco de trabajo con más niveles. Un componente tendrá sus propias vistas y modelos, también podrá acceder a modelos de otros componentes si así se requiere, a las librerías comunes, a la aplicación cargada, etc.
Lo organización del código en componentes es de gran utilidad en la creación de sistemas complejos y escalables.
A pesar de que aumentar el número de capas de abstracción en nuestro código puede traer ventajas, también puede suponer la creación de más código, archivos y en general 'burocracia' del framework para empezar a trabajar. No cabe duda que cuanto más definida está la arquitectura de nuestro software, más reglas e interfaces tendremos que cumplir.
Aún así, sin duda son más las ventajas que inconvenientes en contextos como el mencionado:
Se puede ver en este diagrama un resumen de la arquitectura propuesta para el back.
En comparación con el gráfico inicial del patrón MVC, vemos una Application más cargada, la agregación de librerías, y sobre todo los componentes, organizados bajo el mismo patrón, pero como mini aplicaciones en sí mismas, que comparten un entorno, y que pueden interrelacionarse, como vemos en el caso del componente noticias, que importa el modelo secciones de otro componente. Creo que este planteamiento resulta muy conveniente por las ventajas ya comentadas.