Cuando los desarrolladores pasan de escribir scripts a crear sitios web completos, se encuentran con nuevos conceptos y herramientas. Este conocimiento va mucho más allá del lenguaje, por lo que en esta etapa es necesario profundizar en la comprensión de los sistemas operativos y redes, aprender a trabajar con gestores de dominio y hosting, y practicar las habilidades de despliegue del sitio.
En las entrevistas, los desarrolladores web a menudo escuchan la siguiente pregunta:
"¿Qué sucede cuando un usuario escribe google.com en la barra de direcciones del navegador y presiona Enter?"
Una respuesta muy detallada a esta pregunta está disponible aquí. Con esta pregunta, el entrevistador quiere comprobar cuánto conoces sobre los temas clave de desarrollo web:
- Cómo una consulta DNS obtiene las direcciones IP de un dominio.
- Cómo funciona la conexión con un servidor web en el puerto 443 o 80 a través de TCP.
- Cómo una petición HTTP obtiene el contenido de un sitio web a través del dominio especificado.
- Cómo se recibe la respuesta y se renderiza el contenido en la pestaña del navegador.
Cada uno de estos puntos implica indirectamente que estás familiarizado con los siguientes temas:
- Protocolos HTTP y HTTPS
- Hosts virtuales
- Principios de DNS
- Puertos, máscaras y subredes en TCP/IP
- Modelo OSI
- Sockets de red
- Principios de funcionamiento de los servidores web
Puedes aprender sobre estos temas con nuestros guias. Si hablamos de desarrollo en sí, aquí se abre una vasta área desconocida:
- Frameworks
- Microframeworks
- Enrutamiento
- Cookies y sesiones
- Seguridad
- Monitoreo
- Interacción con la base de datos y mucho más
Además, el sitio está alojado en un servidor remoto, por lo que el despliegue, que incluye la configuración del sitio en el hosting, forma parte del desarrollo. Para desplegar el sitio, es necesario configurar la máquina remota con Ansible u otras herramientas similares.
Por cierto, el hosting puede ser muy diferente:
- IaaS (AWS)
- PaaS (Render)
- Shared Hosting (hosting virtual)
- VPS/VDS
En este curso, no podremos cubrir todos estos importantes temas en detalle, porque nos centraremos principalmente en el desarrollo web utilizando microframeworks. Por lo tanto, te recomendamos que completes todas las tareas y despliegues el código en Render o algún servicio similar simultáneamente. De esta manera, te familiarizarás mejor con el material.
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.