Anteriormente hablamos sobre qué es programar y qué es un programa. Ahora, vamos a adentrarnos en la segunda pieza del rompecabezas: la web.
Aunque a menudo usamos "internet" y "web" como sinónimos, en realidad son dos cosas distintas. Esto se debe a que las palabras en inglés network y web se traducen a "red", lo que genera confusión. Entender la diferencia es un primer paso fundamental para cualquier programador web.
🌐 Internet
La infraestructura global
Red global de computadoras y dispositivos conectados. Es la infraestructura física y el conjunto de reglas que permiten que la información viaje de un punto a otro.
🕸️ La Web
El sistema de documentos
Sistema de documentos electrónicos interconectados que funciona sobre Internet. Una de las muchas aplicaciones que usan la infraestructura de Internet.
Los protocolos que hacen posible Internet
El funcionamiento de Internet se basa en una suite de protocolos de comunicación. Los más fundamentales son el Protocolo de Internet (IP) y el Protocolo de Control de Transmisión (TCP).
Cómo trabajan juntos TCP e IP
TCP - El Supervisor
Verifica que los datos lleguen completos y en orden. Si algo se pierde, pide que se reenvíe.
IP - El Servicio de Correo
Se encarga de que los paquetes de datos viajen de un punto A a un punto B usando direcciones únicas.
Analogía con el correo postal
IP es como el servicio postal: Pone la dirección correcta en el sobre (dirección IP) y los carteros (routers) lo mueven hacia su destino. No importa si el sobre llega mojado o roto.
TCP es como el servicio certificado: Te pide que firmes al recibir, verifica que todo llegó bien y, si algo se perdió, inicia el proceso para que te reenvíen otro paquete.
¿Qué es la Web?
La web es un sistema de documentos electrónicos (páginas web) interconectados que funciona sobre Internet. Para acceder a la web, necesitas un programa especial llamado navegador web.
Definición técnica
La World Wide Web es un sistema de información distribuido que se basa en el modelo cliente-servidor y el protocolo HTTP. Es una capa de aplicación que utiliza los recursos de Internet para funcionar.
El modelo Cliente-Servidor
Cada vez que entras a un sitio web, se activa un intercambio de información que funciona con un modelo simple pero poderoso.
Cliente
Tu navegador (Chrome, Firefox, Safari)
Servidor
Computadora que aloja el sitio web
Servidor
Encuentra los archivos HTML, CSS, JS
Cliente
El navegador renderiza la página
El proceso paso a paso:
- Paso 1: Escribes una URL (como
google.com) en tu navegador. - Paso 2: Tu navegador envía una petición HTTP al servidor.
- Paso 3: El servidor encuentra los archivos y los envía de vuelta.
- Paso 4: Tu navegador interpreta los archivos y te muestra la página.
💡 Recuerda: Cada clic en un enlace o recarga de página es una nueva conversación entre tu navegador (cliente) y el servidor.
Los 3 pilares de la Web
La web funciona gracias a tres tecnologías principales que trabajan juntas como un equipo:
Los 3 pilares en acción
Un ejemplo práctico de cómo HTML, CSS y JavaScript trabajan juntos
<!-- HTML: La estructura y contenido --> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title>Mi Primera Página Web</title> <link rel="stylesheet" href="styles.css"> </head> <body> <header> <h1>¡Bienvenido a mi sitio!</h1> <p>Esta página demuestra los 3 pilares de la web</p> </header> <main> <div class="card"> <h2>Contador: <span id="counter">0</span></h2> <button onclick="increment()">Hacer clic</button> </div> </main> <script src="script.js"></script> </body> </html>
/* CSS: El estilo y la apariencia visual */ body { font-family: 'Arial', sans-serif; margin: 0; padding: 20px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); min-height: 100vh; } header { text-align: center; color: white; margin-bottom: 40px; } .card { background: white; padding: 30px; border-radius: 15px; box-shadow: 0 10px 25px rgba(0,0,0,0.2); text-align: center; max-width: 400px; margin: 0 auto; } button { background: #0f766e; color: white; border: none; padding: 12px 24px; border-radius: 8px; cursor: pointer; font-size: 16px; transition: all 0.3s ease; } button:hover { background: #14b8a6; transform: translateY(-2px); } #counter { color: #0f766e; font-weight: bold; }
// JavaScript: El comportamiento y la interacción // Variable para llevar la cuenta let count = 0; // Función que se ejecuta cuando hacen clic function increment() { // Aumentar el contador count++; // Buscar el elemento en el HTML const counterElement = document.getElementById('counter'); // Actualizar el contenido que ve el usuario counterElement.textContent = count; // Agregar un efecto visual divertido if (count % 10 === 0) { counterElement.style.fontSize = '2em'; // Volver al tamaño normal después de un momento setTimeout(() => { counterElement.style.fontSize = '1em'; }, 300); // Mostrar mensaje de felicitación alert('¡Felicidades! Has llegado a ' + count + ' clics!'); } } // Mensaje de bienvenida cuando carga la página document.addEventListener('DOMContentLoaded', function() { console.log('¡La página se cargó! Los 3 pilares están trabajando juntos.'); });
HTML (HyperText Markup Language)
Define la estructura y el contenido de una página web. Es como el esqueleto y los órganos de una página: textos, imágenes, enlaces y elementos básicos.
CSS (Cascading Style Sheets)
Define el estilo y la apariencia visual. Si HTML es el cuerpo, CSS es la ropa, el maquillaje y el peinado. Controla colores, fuentes, tamaños y diseño.
JavaScript
Lenguaje de programación que da comportamiento y dinamismo a la web. Permite que los botones hagan cosas, los menús se desplieguen y el contenido cambie sin recargar la página.
El navegador: Más que un visor
El navegador no solo muestra información. Es un intérprete que lee el código, lo procesa y ejecuta. Lo que escribas en JavaScript se ejecutará directamente en el navegador del usuario.
La definición final: ¿Qué es la programación web?
Ahora que entendemos todos los conceptos, podemos definir la programación web de forma completa:
Programación Web
Es el proceso de construir programas con los que los usuarios interactúan usando un navegador web.
Esto implica que un programa web siempre tendrá dos partes que deben trabajar en armonía:
🎨 Frontend (Cliente)
Lo que ve y usa el usuario
Se ejecuta en el navegador del usuario. Se encarga de la interfaz (HTML, CSS) y la interacción (JavaScript). Es todo lo que el usuario puede ver y tocar.
⚙️ Backend (Servidor)
La lógica detrás de escena
Se ejecuta en el servidor. Se encarga de almacenar datos, gestionar usuarios, procesar información y proveer lo que el cliente necesita.
El desafío y la diversión de la programación web es conectar estos dos mundos y hacer que funcionen en perfecta armonía.
Resumen para llevar a casa
Internet vs Web
Internet es la infraestructura global, la Web es un sistema de documentos que funciona sobre Internet.
Cliente-Servidor
Base de la web: tu navegador pide, el servidor responde.
Los 3 pilares
HTML, CSS y JavaScript trabajan juntos para crear experiencias web completas.
Programación Web
Combina frontend y backend para crear aplicaciones que los usuarios usan a través de navegadores.