¿Cómo interactúan los desarrolladores front-end y back-end cuando compilan una aplicación?

Dependiendo de si está creando una aplicación de página única o una aplicación renderizada por el servidor, será diferente.

Para una aplicación de una sola página, generalmente se habla en términos de recursos API y puntos finales. Como desarrollador frontend, necesitaré saber a qué URL enviar mi solicitud XHR (HTTP). También se encuentra con problemas de CORS (intercambio de recursos de origen cruzado), que es un caso de que la interfaz se sirve desde un origen / host diferente que la API, generalmente esto ocurre en el desarrollo (donde su back-end y frontend se ejecutan en dos puertos localeshost diferentes )

Para una aplicación renderizada por el servidor, generalmente con MVC, el desarrollador frontend se mantendrá alejado del Modelo y, a veces, del nivel del Controlador. Por supuesto, esto varía, pero una gran cantidad de trabajo en la capa Modelo / Controlador haría que su desarrollador frontend sea más un desarrollador de pila completa. Idealmente, desea que los desarrolladores de back-end clasifiquen todos los datos que se obtienen de la base de datos y simplemente puede llamar a un método en un modelo y pasar los datos a su vista. A partir de ahí, simplemente borra o muestra los datos utilizando el lenguaje de plantillas correspondiente.

En general, la diferencia entre un desarrollador de back-end y un desarrollador de frontend es su especialización. Un desarrollador de back-end será más rápido en las tareas de back-end y el desarrollador de front-end en las tareas de front-end, pero hablan el mismo idioma y ambos deberían poder completar las tareas del otro, tal vez no tan bien o tan rápido.

Hablando el uno al otro. Y chateando en línea. Y correo electronico.

Tal vez algún intercambio formal de especificaciones de contrato de punto final.

Finalmente, y lo más importante, las pruebas de aceptación automatizadas que ejercen los puntos finales del servidor, exactamente como lo haría el código front-end, deben especificarse y escribirse y ejecutarse en cada confirmación del código del lado del servidor para garantizar que se cumplan los contratos acordados.

More Interesting

¿Cuál es el camino de aprendizaje agresivo del desarrollo de backend en medio año?

¿Cómo conectar una aplicación de Android con 'mi propio back-end de base de datos en tiempo real de Node.Js'? ¿Cómo lo mantengo sincronizado todo el tiempo con mi back-end?

¿Qué es el backend como servicio?

¿Por qué la mayoría de los CTOs o VPs de desarrolladores de back-end de ingeniería pueden un desarrollador de front-end asumir un papel de liderazgo en una empresa tecnológica?

¿Cuál es el lenguaje web de back-end más utilizado en Silicon Valley, especialmente por compañías conocidas y nuevas empresas emergentes que están impulsando las cosas?

¿Es bueno ser un desarrollador full stack que solo un back-end?

¿Cuál es el mejor marco de back-end para un desarrollador con un fondo PHP / JS / C #?

¿Son condicionales y booleanos la misma cosa?

¿Puede un programa usar más de un lenguaje de programación de fondo?

¿Debo aprender a desarrollar backend si quiero ser ingeniero de aprendizaje automático?

¿El desarrollo del backend es realmente más difícil que el desarrollo frontend?

En un automóvil RWD, ¿cómo afectará un diferencial de deslizamiento limitado a la forma en que el extremo trasero gira / desliza a través de una esquina?

¿Es cierto que los desarrolladores frontend son fácilmente reemplazables y menos valiosos que los desarrolladores backend?

¿Es efectivo tener un back-end y front-end separados?

¿Qué campo se debe elegir en Sapient como más reciente: desarrollador front-end o desarrollador back-end?