Cómo desacoplar la IU del backend (base de datos)

Best UX es relativo al mercado y depende en gran medida de las expectativas de los usuarios. Lo que funciona para un usuario no necesariamente funciona para otro. Por lo tanto, hacer este movimiento potencialmente masivo debe analizarse en profundidad.

Siempre que haya múltiples ‘sitios’ en la misma compañía, se deduce que la compañía es lo suficientemente grande como para tener múltiples grupos / divisiones a cargo de tomar decisiones independientes. Lucharán con uñas y dientes para defender su solución alegando que es la mejor a costa de la empresa. Alinear a los diferentes grupos hacia el mismo UX es más un juego de diplomacia y política que la ingeniería real.

El problema empresarial también debe definirse con mayor claridad. Es necesario responder varias preguntas para determinar los objetivos comerciales y la longevidad deseada de la solución.

Hay muchas maneras de lograr esto puramente en el lado de la ingeniería. Dentro de una aplicación de n niveles, hay tantos puntos de interfaz donde se pueden integrar dichos ‘back-end’.

  • REST está ganando popularidad sobre SOAP debido a su diseño bien definido y en este momento bien probado.
  • SOA y Micro-servicios pueden emplearse para lograr un estado más dinámico para que la empresa no cambie los requisitos más adelante.
  • Esta es una buena opción si varios grupos han utilizado tecnologías potencialmente difíciles de integrar en sus soluciones.
  • Los ORM se pueden usar para integrar diferentes fuentes de datos al final.
  • Si la mayoría de las tecnologías de ‘back-end’ son homogéneas, entonces el proveedor ya puede tener una herramienta que integra los diversos ‘back-end’. Es solo una cuestión de implementar la herramienta y conectarla a los ‘back-end’ en el lugar correcto.

Un arquitecto de software experimentado podrá identificar estos problemas, trabajar con la empresa y proponer la mejor alternativa.

Para desacoplar completamente el cliente UI del backend, use CORS (intercambio de recursos de origen cruzado). Este es un conjunto de encabezados que puede configurar en sus respuestas http que permiten que las solicitudes web sean de un origen diferente al de su servidor. De esta manera, puede servir su código de cliente desde un servidor de alto rendimiento como nginx. Además, su rendimiento de back-end mejorará porque no tiene que preocuparse por servir ningún activo estático. El 100% de sus solicitudes web a su backend deberán ser AJAX. Este enfoque funciona mejor cuando se crea una aplicación web de página única (SPA). Pero también puede implementar el enrutamiento con un enrutador del lado del cliente como page.js.

La mejor manera de desacoplar el cliente / UI del backend es seguir la arquitectura RESTful. Para saber qué es la arquitectura REST, puede seguir esto ¿Qué es REST?

Después de aprender sobre la arquitectura tranquila, intente encontrar la biblioteca de desarrollo API tranquila para su plataforma de back-end.

También debe usar la arquitectura pesada de JavaScript para el front-end. para comprender mejor esto, puede buscar con la arquitectura de “aplicación de una sola página”.

angular2 es un buen marco para crear clientes web pesados ​​de JavaScript para interactuar con el backend RESTful.

More Interesting

¿Cómo y por qué se usa C ++ para los servicios de back-end?

¿En qué idioma está escrito el backend de Skype?

¿Hay alguna oportunidad en el sector gubernamental para alguien con experiencia VLSI Frontend / Backend?

¿Por qué necesitamos un back-end en desarrollo web? ¿El front-end no puede enviar solicitudes directamente a la base de datos?

¿Por qué la mayoría de las aplicaciones a gran escala se desarrollan en Symfony?

¿Puedes explicar lo que hace un lenguaje de fondo, en términos simples? ¿Qué tiene que ver con un servidor y de qué tipo de servidor están hablando?

Cómo aprender el desarrollo web de back-end fácilmente

Alguien dijo que un desarrollador de software profesional puede cambiar de backend a frontend, de móvil a desarrollo web en 1 o 2 días, ¿es cierto?

¿Cuál es el lenguaje de programación más utilizado para el desarrollo web de back-end después de PHP?

¿Para cuál hay más demanda en el desarrollo de sitios web: front-end o back-end?

¿Es necesario aprender SQL para el desarrollo de back-end o sería suficiente aprender MySQL?

¿Por qué los desarrolladores de backend tienen más confianza en su profesión que los desarrolladores frontend?

¿Cómo comenzar a escribir el servicio de backend? ¿Debo crear bases de datos primero? ¿O debería escribir el código primero? ¿Qué es exactamente escribir código de fondo?

¿Los programadores de back-end se burlan del diseño de front-end?

¿Hay alguna forma de adivinar qué marco de back-end puede usar un sitio? ¿Qué tipo de pistas o patrones se pueden encontrar en el marcado o en otro lugar para regalar algunos de los marcos más conocidos como Rails o Django?