¿Cómo colaboran el desarrollador front-end y los desarrolladores back-end?

Una respuesta breve es que depende de un proyecto y de las personas que lo están realizando.

Primero, es bueno definir Front-End y Back-End, por lo que estamos en la misma página. Tenga en cuenta que no me enfocaré demasiado en esos términos y muchas personas tienen una opinión ligeramente diferente al respecto. Depende principalmente del proyecto, las interpretaciones de los términos y las herramientas / tecnologías utilizadas.

Interfaz

Capa UI / UX compuesta por HTML, CSS, JavaScript y medios. Obtiene datos del Back-End y lo llama cuando algo necesita ser guardado / cambiado. Tenga en cuenta que muchos proyectos, especialmente los más antiguos, tienen esas capas mezcladas. A veces bastante mal.

Back-end

La capa de lógica de negocios que sirve archivos al navegador, maneja archivos de lectura, escritura, comunicación con la base de datos y posiblemente otros servicios.

* Extra: arquitectura multicapa

Tenga en cuenta que las descripciones anteriores son enormes simplificaciones. Las arquitecturas modernas en proyectos más grandes son de varias capas, ver: microservicios.

Entonces, si tiene las capas de front-end y back-end separadas adecuadamente, debe centrarse en la API que une esas dos. De esa manera, Front-End y Back-End pueden desarrollarse en forma separada (principalmente), por ejemplo, por otras personas / equipos.

En tal situación, tiene Separación de preocupaciones y no necesita administrar una gran aplicación monolítica de estilo spaghetti. Por supuesto, la separación de Front-End y Back-End no hace que esos dos códigos sean mágicamente finos y elegantes. Las pruebas y otras buenas prácticas aún son algo para recordar.

Algunos bits sobre API

Por ejemplo, puede tener API basada en REST que sirve y consume JSON como
/ users / all – obtiene todos los usuarios en forma como:
[{“id”: “123”, “name”: “John”}, {“id”: 456 “,” name “:” Mary “}]

Luego puede renderizar la vista basada en HTML en Front-End utilizando un marco como Angular u otras herramientas como React, jQuery, custom.

Desarrolladores Full-Stack

Algunos desarrolladores escriben código de front-end y back-end. No necesariamente en proporciones similares y al mismo tiempo. Los desarrolladores más experimentados, incluso si se centran en Front-End o Back-End tienden a conocer algunos aspectos del otro lado.

Depende de la metodología que esté utilizando. He tratado de explicar algo de eso. Espero que te ayude.

Voy a usar ciertos supuestos al responder a este, ya que hay definiciones ambiguas para los dos mencionados a continuación.

  1. Desarrollador front-end: solo UI (html, css, jquery, code-behind)
  2. Desarrollador de back-end: todo lo relacionado con la base de datos.

CRUDO:

Las entidades se determinan antes de desarrollar cualquier cosa. Una planificación adecuada y luego la ejecución es la clave. Recuerde siempre que habrá margen de mejora, así que planifique en consecuencia. Estas entidades luego se proporcionan a ambos equipos. Los desarrolladores de back-end crean los objetos de base de datos relacionados. Una vez que los objetos de la base de datos se crean como una tabla, procedimientos almacenados, se proporcionan al equipo de front-end y luego hacen uso de los objetos de la base de datos dados para usarlos en su código en consecuencia. Las entidades mencionadas anteriormente actúan como un punto medio para que ambos equipos se conecten.

Marco de la entidad (código primero):

A medida que la tecnología se está volviendo más nueva, se destacan las mejores formas de realizar ciertas acciones. EF es uno de ellos. El enfoque de Code-first incluye apuntar a una base de datos que no existe y Code First creará, o una base de datos vacía en la que Code First también agregará nuevas tablas. Code First le permite definir su modelo usando clases C # o VB.NET.