📖 Glosario

Diccionario de Desarrollo Web

Aprende el significado de términos técnicos de programación. 132 términos disponibles en español.

🏗️

Arquitectura de Software

7 términos

Abstracción

Principio de ocultar complejidad y mostrar solo lo esencial. Fijate que no es solo teoría: cada vez que usás una interfaz, una API o una función bien definida, estás aplicando abstracción sin darte cuenta.

Microservicios

Arquitectura de servicios pequeños e independientes que se comunican por APIs ligeras. No los implementes solo porque están de moda: evaluá si tu equipo y tu dominio justifican la complejidad operativa extra.

Monolito

Arquitectura de aplicación en una sola unidad de despliegue. No es algo de lo que avergonzarse: la mayoría de los proyectos exitosos empiezan como monolito y se parten solo cuando realmente duele.

Patrón Factory

Patrón para crear objetos sin especificar su clase exacta hasta el runtime. Ideal cuando tenés diferentes tipos de objeto y querés que el código que los usa no dependa de implementaciones concretas.

Patrón MVC

Patrón que separa datos, interfaz y lógica de control en tres capas. Es el estándar de facto en web por una razón: cuando cada capa tiene una responsabilidad única, mantener el código se vuelve mucho más sencillo.

Patrón Observer

Patrón donde objetos dependientes se actualizan automáticamente cuando el sujeto cambia de estado. Lo usás cada vez que hacés addEventListener, conectás un store de estado o implementás pub/sub.

Patrón Singleton

Patrón que garantiza una sola instancia de una clase y un punto de acceso global. Sirve para conexiones a BD o configuraciones, pero cuidado: abusar de él hace que las pruebas unitarias sean más difíciles.

🗄️

Bases de Datos

11 términos

Blob

Tipo de dato para almacenar archivos binarios grandes en la BD. Pero ojo: guardar imágenes directo en BLOB puede ser lento — muchas veces sale mejor guardar la ruta en S3 y referenciarla.

Foreign Key

Campo que relaciona una tabla con la Primary Key de otra. Sin foreign keys tendrías datos huérfanos por todos lados — son el pegamento que mantiene tus datos ordenados.

Índice

Estructura que acelera la búsqueda de datos en una tabla. Imaginate un libro sin índice — tendrías que leer página por página. Así funciona una BD sin índices.

Join

Operación SQL que combina datos de varias tablas. Sin joins tendrías que meter todo en una tabla gigante — con ellos relacionas datos manteniendo cada cosa en su lugar.

MySQL

Gestor de bases de datos relacional de código abierto. Es el motor de la web — junto con PHP y Apache forma el stack LAMP que mueve millones de sitios.

Primary Key

Campo único que identifica cada registro en una tabla. Piensa en ella como la cédula de cada fila: nunca se repite, nunca es nula, nunca debería cambiar.

Query

Solicitud de datos a una base de datos. En SQL son sentencias SELECT, y de lo bien escritas que estén depende que tu app vuele o se arrastre.

Schema

Estructura que define la organización de una base de datos. Es el plano arquitectónico: qué tablas existen, qué columnas tienen, cómo se relacionan y qué reglas cumplen los datos.

SQL

Lenguaje estándar para gestionar bases de datos relacionales. Lo usas desde MySQL hasta PostgreSQL, y dominarlo es el primer paso para ser backend sin importar el framework.

Stored Procedure

Instrucciones SQL precompiladas que se ejecutan directo en la BD. Son más rápidas que mandar mil queries desde tu app y además blindan contra SQL injection.

Transacción

Conjunto de operaciones que se ejecutan como una sola unidad. Si transfieres dinero, la transacción garantiza que ambas cuentas se actualicen o ninguna — no hay punto medio.

🎯

Conceptos Generales

22 términos

Acoplamiento

Grado de dependencia entre módulos. Acá la regla de oro: entre más acoplado esté tu código, más duele cambiarlo. Programá contra interfaces, no contra implementaciones.

AI Agents

Sistemas autónomos de IA que perciben, razonan y actúan para lograr objetivos. En 2026 lo que importa no es solo el LLM, sino qué herramientas (MCP) le conectás al agente para que haga cosas reales.

Cache

Almacenamiento temporal para acceder más rápido a datos. El cache está en todos lados — navegador, servidor, CDN. El verdadero arte no es guardar en cache, sino saber cuándo invalidarlo.

CDN

Red de servidores para distribuir contenido rápidamente. Sin CDN un usuario en Japón espera 5 segundos por un CSS; con CDN lo recibe en 200ms. Es la forma más fácil de mejorar velocidad sin cambiar código.

Cohesión

Grado de relación entre elementos de un módulo. Si una clase tiene métodos que no se relacionan entre sí, la cohesión está baja y el código te va a doler. Pensalo así: una clase, una responsabilidad.

Cookie

Archivo de texto almacenado en el navegador para mantener información. Con las leyes de privacidad actuales, usar cookies implica también gestionar consentimiento. No es solo técnico, es legal.

Deserialización

Proceso de convertir datos serializados de vuelta a objetos. Acá va el peligro real: deserializar datos no confiables puede ejecutar código arbitrario. JSON.parse es seguro; funciones como unserialize en PHP no lo son.

DNS

Sistema que traduce nombres de dominio a direcciones IP. Cada vez que escribís una URL, el DNS resuelve hasta 5 niveles de consulta en milisegundos. Si tu web está lenta, revisá el tiempo de respuesta DNS.

Encapsulamiento

Ocultar detalles internos y exponer solo la interfaz necesaria. No es esconder por capricho: es poder cambiar la implementación interna sin romperle el código a nadie más.

FTP

Protocolo para transferir archivos entre cliente y servidor. FTP manda todo en texto plano — usuario, contraseña y archivos. Usalo solo en redes controladas; para producción siempre SFTP.

GitHub Gist

Fragmentos de código rápidos en GitHub para compartir snippets, configuraciones y ejemplos sin crear un repositorio completo. Perfectos para notas técnicas, embeds en blogs o un proof of concept sin hacer git init.

HTTP

Protocolo de comunicación para transferir datos en la web. Entender HTTP de verdad separa al dev que debuggea APIs como adulto del que solo copia ejemplos. Códigos de estado, métodos, cabeceras — todo importa.

HTTPS

Versión segura de HTTP con cifrado TLS/SSL. Let's Encrypt te da certificados gratis y Certbot los renueva solo. Si tu sitio no tiene HTTPS hoy, no es profesional — los navegadores ya lo marcan como 'No seguro'.

Implements

Palabra clave que obliga a una clase a cumplir el contrato de una interfaz, proporcionando el código real de los métodos declarados.

Interfaz

Contrato que define métodos que una clase debe implementar. Las interfaces te permiten cambiar implementaciones sin tocar el código que las usa. Eso es desacoplamiento de verdad.

Modularidad

Dividir la aplicación en partes independientes y especializadas. La modularidad bien hecha te permite cambiar un módulo completo sin que el resto se entere. Ideal para equipos grandes y proyectos que crecen.

Polimorfismo

Capacidad de un método de comportarse diferente según el objeto. Te permite escribir código que funciona con cualquier tipo que cumpla un contrato, sin importar los detalles internos. Así se construyen sistemas extensibles.

Rust

Lenguaje de programación seguro, rápido y concurrente para sistemas. Si venís de C++ o Go, Rust te va a costar al principio (ownership y lifetimes), pero cuando entendés el sistema de tipos, no querés volver.

Serialización

Proceso de convertir objetos a un formato transferible. JSON se volvió el estándar por su legibilidad, pero elegí el formato según el caso: JSON para APIs, binario para rendimiento, XML solo si no te queda otra.

Sesión

Período de interacción del usuario con la aplicación. Las sesiones del lado del servidor son fáciles de revocar; los tokens JWT del lado del cliente escalan mejor. Elegí según si necesitás control centralizado o escalabilidad horizontal.

SSH

Protocolo seguro para acceso remoto a servidores. Configurá autenticación con llaves (ed25519) y desactivá login por contraseña. Es lo primero que hace un dev que sabe lo que hace.

Token

Cadena digital que autentica y autoriza a un usuario en sistemas web. La gracia del JWT es que es stateless: el servidor no guarda nada, toda la info viaja en el token. Pero ojo — si no podés revocarlo en el momento, tenés un problema de seguridad.

⚙️

DevOps y despliegue

10 términos

Apache

Servidor web de código abierto más popular. Su arquitectura modular con .htaccess te da control fino por directorio, ideal cuando necesitas configuraciones descentralizadas.

CI/CD

Automatización de integración, pruebas y despliegue de código. La diferencia clave: CI detecta errores en cada push, CD lleva esos cambios a producción sin que te des cuenta.

Deployment

Proceso de instalar una aplicación en producción. No es solo copiar archivos — un buen deployment es reproducible, automatizado y siempre tiene plan de rollback por si algo sale mal.

DevOps

Cultura que fusiona desarrollo y operaciones para entregar software más rápido y con mayor calidad. No es un puesto ni una herramienta — es romper el muro entre 'yo codifico' y 'tú lo pones en línea'.

Docker

Plataforma de contenedores para empaquetar y ejecutar aplicaciones. Olvídate del 'en mi máquina sí funciona' — con Docker tu app corre igual en dev, staging y producción.

GitHub Actions

Plataforma de CI/CD integrada en GitHub para construir, probar y desplegar código automáticamente. Lo mejor: no necesitas servidores externos ni configurar Jenkins — todo vive en tu mismo repo.

Kubernetes

Sistema de orquestación para gestionar contenedores a escala. Si Docker es un solo contenedor, K8s es el capitán que coordina cientos: los escala, los cura cuando fallan y los actualiza sin downtime.

Nginx

Servidor web de alto rendimiento y proxy inverso. Su superpoder: maneja miles de conexiones simultáneas con poquísima memoria, perfecto como reverse proxy o balanceador de carga.

Pipeline

Secuencia automatizada de procesos desde código hasta producción. Cada etapa solo avanza si la anterior pasa — así garantizas calidad sin depender de revisión manual.

Servidor

Computadora o programa que presta servicios a otros equipos. La decisión más importante no es físico vs cloud, sino entender qué va a correr ahí y cuánto tráfico esperas.

📚

Fundamentos de Programación

11 términos

Array

Estructura que almacena múltiples valores indexados numéricamente. Los arrays son la base para trabajar con colecciones de datos en cualquier lenguaje.

Bucle

Estructura que ejecuta un bloque de código múltiples veces. Sirve para iterar colecciones, repetir tareas o ejecutar lógica hasta que se cumpla una condición.

Clase

Plantilla que define la estructura y comportamiento de un tipo de objeto. Es el molde con el que creas instancias en programación orientada a objetos.

Condicional

Estructura que ejecuta diferentes bloques de código según se cumpla o no una condición. Es la base de la lógica de decisión en cualquier programa.

Constante

Valor fijo que no cambia durante la ejecución del programa. Usar constantes en lugar de valores literales hace tu código más legible y menos propenso a errores.

Función

Bloque de código reutilizable que realiza una tarea específica. Las funciones son la unidad básica de organización en cualquier lenguaje de programación.

Método

Función asociada a un objeto o clase que define su comportamiento. Los métodos son la forma en que los objetos interactúan con el mundo exterior.

Objeto

Estructura de datos con propiedades en forma de clave-valor. Los objetos representan entidades del mundo real y son la base de la programación orientada a objetos.

Tipo de dato

Clasificación que define qué tipo de valor puede almacenar una variable y qué operaciones puedes hacer con ella. Elegir el tipo correcto evita bugs y mejora el rendimiento.

Valor de retorno

Dato que una función devuelve al punto donde fue llamada usando return. Sin valor de retorno, las funciones solo ejecutan código sin comunicar resultados.

Variable

Espacio en memoria con nombre que almacena un valor que puede cambiar durante la ejecución. Las variables son los contenedores básicos de datos en cualquier programa.

🔀

Git y Control de Versiones

15 términos

Branch

Línea de desarrollo independiente dentro del repositorio. Usalas para aislar cada funcionalidad nueva — si trabajás directo sobre main, estás viviendo al límite.

Clone

Crear una copia local de un repositorio remoto. Es lo primero que hacés al sumarte a un proyecto — te bajás todo el historial y empezá a codear en segundos.

Commit

Instantánea de los cambios guardados en el repositorio. Commiteá seguido, commiteá chico — un commit por cambio lógico, no cuando te acordás el viernes.

Fork

Copia de un repositorio en tu propia cuenta. Es la entrada al open source: bifurcás, mejorás, y mandás un PR sin tocar el repo original.

Git

Sistema de control de versiones distribuido para rastrear cambios en código fuente. No es solo un backup: es una máquina del tiempo que te deja experimentar sin miedo y colaborar sin pisar a nadie.

Git Stage: git add -A vs git add .

Git stage prepara los cambios del próximo commit. git add . actúa desde el directorio actual; git add -A incluye todos los cambios del repositorio.

Hook

Script automático que se ejecuta en eventos de Git. Son tus guardianes silenciosos: podés correr tests, lintear código o rechazar un commit si no pasa calidad.

Merge

Combinar los cambios de una rama con otra. Ojo: si dos ramas tocaron el mismo archivo, Git te pide que decidas. Resolver conflictos es parte del oficio.

Pull

Descargar y fusionar cambios del remoto a local. Hacelo siempre antes de arrancar a trabajar — te ahorrás conflictos enormes y empezás sincronizado con el equipo.

Pull Request

Solicitud para revisar y fusionar cambios entre ramas de Git. No es un trámite: es una conversación asíncrona donde el código se fortalece antes de llegar a producción.

Push

Enviar commits locales al repositorio remoto. Si no hay push, el equipo no ve tu trabajo. Subí seguido, pero revisá que no haya secretos ni archivos personales.

Rebase

Comando de Git para reorganizar commits y crear un historial lineal. Poderoso pero delicado: usalo en ramas locales antes del PR, nunca en algo que ya compartiste con otros.

Repository

Espacio de almacenamiento que contiene los archivos de un proyecto y su historial. Es el corazón de Git — tenés uno local para vos y uno remoto para colaborar con el equipo.

Stash

Guardar temporalmente cambios sin commit. El clásico 'necesito cambiar de rama urgente pero no quiero perder mi avance' — stash al rescate.

Tag

Referencia fija a un commit para marcar versiones. Es como ponerle un post-it a un commit importante: 'esta es la v1.0, esto mandamos a producción'.

JavaScript

6 términos
🐘

PHP

7 términos

Array asociativo

Array con claves personalizadas (strings o integers) en lugar de índices numéricos. En PHP son omnipresentes: los usás para todo, desde configuraciones hasta datos de formularios y respuestas de API.

Herencia

Mecanismo para crear clases basadas en otras clases existentes heredando propiedades y métodos. Podés reutilizar y extender comportamiento, pero no te vuelvas loco con jerarquías profundas: a veces un trait o composición es mejor.

Migración

Archivo que controla el versionado del esquema de base de datos con código en lugar de SQL a mano. Definís los cambios, los compartís por Git y todo el equipo mantiene la misma estructura sin conflicts.

Namespace

Espacio de nombres para organizar clases, funciones y constantes en grupos lógicos. Si trabajás con librerías externas o en equipos grandes, los namespaces son lo único que evita que tus clases colisionen con las de otros.

ORM

Técnica para mapear objetos a tablas de base de datos relacionales. Te deja trabajar con objetos en lugar de escribir SQL crudo, pero ojo: un ORM mal usado genera consultas ineficientes que tumban una app en producción.

POO

Paradigma que organiza el código alrededor de objetos con datos (propiedades) y comportamiento (métodos). No es la única forma de programar, pero entenderla bien es clave para trabajar con frameworks modernos y mantener proyectos grandes.

Trait

Mecanismo para reutilizar métodos entre clases sin necesidad de herencia. Cuando dos clases comparten comportamiento pero no tienen una relación jerárquica real, un trait resuelve el problema sin forzar jerarquías artificiales.

📁

scrum

19 términos

Burndown Chart

Gráfico que muestra el progreso del trabajo en un Sprint. Fijate que no es solo una línea bonita — si ves que la línea real se separa mucho de la ideal, es hora de ajustar el plan antes de que sea tarde.

Daily Standup

Reunión diaria de 15 minutos para sincronizar al equipo. Pero no confundas: no es un reporte al jefe, es un compromiso entre pares. Si tu daily dura más de 15 minutos, algo está mal.

Definition of Done

Criterios que determinan cuándo una tarea está completa. Sin una DoD clara, cada quien va a interpretar 'terminado' a su manera y eso siempre termina en malentendidos en la Sprint Review.

Development Team

Equipo auto-gestionado que construye el producto. No hay jefes acá — el equipo decide cómo hacer el trabajo, desde la arquitectura hasta cómo dividirse las tareas.

Impediment

Obstáculo que impide al equipo trabajar eficientemente. Lo peligroso no es tenerlos, es no visibilizarlos en el daily. Un impedimento oculto se vuelve crisis al final del Sprint.

Increment

Producto utilizable resultante de cada Sprint. La clave está en 'potencialmente liberable' — no vale un montón de código a medio terminar, tiene que ser algo que puedas mostrar con orgullo.

Product Backlog

Lista priorizada de requisitos del producto. No es una lista de deseos estática — es un organismo vivo que el Product Owner refina constantemente según lo que aprende del mercado.

Product Owner

Responsable de maximizar el valor del producto y gestionar el Product Backlog. No es un secretario que escribe tickets — es quien toma las decisiones difíciles de qué se construye y qué no.

Scrum

Framework ágil para desarrollo de software con ciclos cortos llamados sprints. No es una metodología rígida — es un esqueleto que expone tus problemas de proceso para que puedas resolverlos uno por uno.

Scrum Board

Tablero visual para seguir el progreso del Sprint. Puede ser digital o de post-its, pero lo importante no es la herramienta, sino que el equipo lo actualice todos los días sin falta.

Scrum Master

Facilitador del proceso Scrum que elimina obstáculos para el equipo. No es un project manager disfrazado — un buen Scrum Master trabaja para que el equipo sea más autónomo cada día.

Sprint

Ciclo de trabajo de 1-4 semanas en Scrum. La regla de oro: la duración no se negocia. Una vez que arranca el Sprint, el alcance se congela. Así protegés el foco del equipo.

Sprint Backlog

Lista de tareas del Sprint actual. No es una camisa de fuerza — el equipo puede ajustarlo durante el Sprint, pero siempre enfocado en el objetivo que se comprometieron a lograr.

Sprint Planning

Reunión para planificar el trabajo del Sprint. El error más común es querer planificar hasta el último detalle — mejor enfocate en tener un Sprint Goal claro y confiá en el equipo para resolver el cómo.

Sprint Retrospective

Reunión para mejorar el proceso del equipo. Es el evento más importante de Scrum y el que más se salta. Sin retrospectiva honesta, el equipo repite los mismos errores Sprint tras Sprint.

Sprint Review

Demostración del trabajo completado al final del Sprint. No es una presentación con PowerPoint — es una conversación con stakeholders sobre el producto real funcionando.

Timebox

Período de tiempo fijo para una actividad. En Scrum el tiempo es el límite, no la calidad. Si no terminaste, ajustás para el próximo Sprint. Parece estricto, pero es lo que fuerza las decisiones difíciles.

User Story

Descripción de funcionalidad desde la perspectiva del usuario. No es un documento de requisitos — es una conversación empaquetada. Lo valioso no es el texto, sino el diálogo que genera entre el equipo y el Product Owner.

Velocity

Métrica que mide la cantidad de trabajo completado por Sprint. No la uses para comparar equipos ni como herramienta de presión. Es una brújula interna para que el equipo mejore su propia planificación.

🔒

Seguridad

5 términos
🧪

Testing y Calidad

6 términos
🔌

APIs y Servicios

11 términos

API REST

Arquitectura de servicios web que usa HTTP y recursos URL. Es el estándar más usado porque es simple, escalable y cualquier cliente puede consumirla sin mucho rodeo.

Arquitectura MVC

Patrón de arquitectura que separa una aplicación en Modelo, Vista y Controlador. Lo encuentras en Laravel, Rails, Express y casi cualquier framework web moderno.

Autenticación

Proceso de verificar la identidad de un usuario. Sin autenticación, cualquiera podría acceder a datos que no le pertenecen.

Códigos HTTP

Códigos de respuesta HTTP de tres dígitos que indican el resultado de una petición. Van del 1XX al 5XX y son el primer lugar donde hay que mirar cuando algo falla.

CRUD

Operaciones básicas: Crear, Leer, Actualizar y Eliminar datos. Toda API que trabaje con persistencia termina implementando estas cuatro operaciones.

Endpoint

URL específica de una API para acceder a un recurso o realizar una acción. Un buen endpoint se explica solo: su URL y método deberían dejar claro qué hace.

JSON

Formato ligero de intercambio de datos basado en la sintaxis de objetos de JavaScript. Es el idioma que hablan las APIs modernas: liviano, legible y soportado en todos los lenguajes.

JWT

Token estándar para autenticar usuarios y compartir información de forma segura entre partes. Es stateless, portable y el método de autenticación más popular en APIs REST.

Paginación de registros

Técnica para dividir grandes conjuntos de datos en páginas más pequeñas. Sin paginación tu API se vuelve lenta y tu frontend colapsa con miles de registros.

SOAP

Protocolo de comunicación que usa XML sobre HTTP o SMTP. Es más estricto que REST y lo vas a encontrar sobre todo en sistemas bancarios y empresariales legacy.

WebSocket

Protocolo para comunicación bidireccional en tiempo real entre cliente y servidor. A diferencia de HTTP, mantiene la conexión abierta para que ambas partes se envíen datos cuando quieran.

📁

frontend

2 términos