ezakto code

Los contenidos de este blog están desactualizados.

Pero estoy pensando en actualizarlos y escribir más.

Si te interesa, dejame tu email (no spam, no newsletters). Si hay suficiente interés me pondré manos a la obra y te lo haré saber!


Introducción al desarrollo web

11 de febrero 2018

Mini blog sobre código de Nicolás Arias, desarrollador de Argentina.

Primero, una teoría básica del funcionamiento de la web:

  1. El usuario accede a internet a través de un cliente. El cliente es un software, como un navegador (Chrome, Firefox, etc).

  2. Cuando el usuario ingresa una URL (o hace click en un enlace, o lo que sea), el cliente toma el dominio de la URL (por ejemplo, en code.ezakto.com/introduccion-al-desarrollo-web, el dominio es ezakto.com) y a través de un DNS (básicamente, un diccionario gigante) traduce el dominio a su dirección IP.

  3. El cliente envía una petición a esta dirección IP, que contiene una serie de datos, como el subdomino (en el mismo ejemplo, sería "code"), la ruta (en este caso sería "/introduccion-al-desarrollo-web.com"), entre otros.

  4. La dirección IP lleva la petición al servidor. Un servidor es dos cosas al mismo tiempo - un espacio físico conectado a internet donde los archivos del sitio web se encuentran almacenados, y un software que se encarga de recibir peticiones, procesarlas, y enviar una respuesta.

  5. La respuesta contiene información de todo tipo, codificada de diferentes formas. Esta respuesta es leída e interpretada por el cliente y finalmente se muestra al usuario siguiendo una serie de reglas de presentación.

  6. Cada vez que el usuario hace click en un enlace, por ejemplo, todo el proceso se repite.

La totalidad de los sitios y aplicaciones web utilizan dos tecnologías: HTML y CSS. La inmensa mayoría también utiliza una tercera: JavaScript.

Los servidores pueden usar una infinidad de tecnologías. Esto incluye softwares como Apache, Nginx o Node para manejar peticiones y respuestas, y lenguajes como Python, PHP, JavaScript, Ruby, Java, etc, para procesar la información.