Question - What makes an application complex ?
Respuesta: el uso de la palabra "complejo" en la pregunta misma. Por lo tanto, una tendencia común será buscar una solución compleja desde el principio.
Question - What does the word complex means ?
Respuesta: cualquier cosa que se desconozca o se comprenda parcialmente. Ejemplo: la teoría de la gravedad incluso hoy en día es COMPLEJA para mí, pero no para Sir Isaac Newton, quien la descubrió en 1655.
Question - What tools can I use to deal with complexity ?
Respuesta: comprensión y sencillez.
Question - But I understand my application . Its still complex ?
Respuesta: Piénselo dos veces, porque la comprensión y la complejidad no coexisten. Si comprende una aplicación enorme, estoy seguro de que estará de acuerdo en que no es más que una integración de unidades pequeñas y simples.
Question - Why all of the above philosophical discussion for a question on
Single Page Application (SAP)?
Respuesta - Porque,
-> SPA no es un tipo de tecnología central que se haya inventado recientemente para lo cual necesitamos reinventar la rueda de muchas cosas que estamos haciendo en el desarrollo de aplicaciones.
-> Es un concepto impulsado por la necesidad de un mejor rendimiento, disponibilidad, escalabilidad y mantenibilidad de las aplicaciones web.
-> Es un patrón de diseño identificado recientemente, por lo que comprender el SPA como un patrón de diseño ayuda mucho a tomar decisiones informadas sobre la arquitectura de un SPA.
-> A nivel raíz, ningún SPA es complejo, porque después de comprender las necesidades de una aplicación y el patrón de SPA, se dará cuenta de que todavía está creando una aplicación, más o menos de la misma manera que lo hacía antes con algunas modificaciones y reorganizaciones en el enfoque de desarrollo.
Question - What about the use of Frameworks ?
Respuesta: Los marcos son un código / solución de placa de caldera para algunos patrones genéricos y comúnmente identificados, por lo tanto, pueden quitar un x% (variable, según la aplicación) de la carga del desarrollo de la aplicación, pero no se debe esperar mucho de ellos, especialmente para aplicaciones pesadas. y aplicaciones en crecimiento. Siempre es un buen caso tener el control total de la estructura y el flujo de su aplicación, pero lo más importante es el código. No debe haber áreas grises o negras en el código de la aplicación.
Question - Can you suggest one of the many approaches to SPA architecture ?
Respuesta: piense en su propio marco basado en la naturaleza de su aplicación. Categorizar los componentes de la aplicación. Busque un marco existente que esté cerca de su marco derivado, si lo encuentra, utilícelo, si no lo encuentra, le sugiero que siga adelante con el suyo. Crear un marco es un gran esfuerzo por adelantado, pero produce mejores resultados a largo plazo. Algunos componentes básicos en mi marco de SPA serán:
Fuente de datos: modelos / colecciones de modelos
Marcar para presentar datos: Plantillas
Interacción con la aplicación: Eventos
Captura de estado y navegación: enrutamiento
Utilidades, widgets y complementos: bibliotecas
¡Avíseme si esto ayudó de alguna manera y buena suerte con la arquitectura de su SPA!