Saltar al contenido
glosario.md · devschool

Glosario

185 palabras que vas a encontrar al aprender a programar, explicadas en una o dos frases. Si quieres saber más, cada término enlaza a la lección donde se explica con calma.

A

Abstracción (abstraer)

Idea de mostrar solo lo importante de algo y ocultar los detalles internos. En programación permite usar una pieza de código sin saber cómo funciona por dentro.

Ver la lección →

Accesibilidad (a11y)

Conjunto de prácticas para que una web pueda ser usada por todas las personas, incluidas las que tienen discapacidad visual, motriz o auditiva, o usan lector de pantalla.

Ver la lección →

ACID

Cuatro garantías de una transacción en base de datos: atomicidad, consistencia, aislamiento y durabilidad. Aseguran que los datos no queden a medias ni corruptos si algo falla.

Ver la lección →

Algoritmo

Lista ordenada de pasos claros que resuelve un problema o realiza una tarea. Una receta de cocina es un algoritmo cotidiano; un programa implementa uno o varios.

Ver la lección →

Alias de tipo (type alias)

Nombre propio que se da a un tipo de TypeScript para reutilizarlo y que el código se lea mejor, sin crear un tipo nuevo.

type Id = string | number;

Ver la lección →

API (interfaz de programación)

Conjunto de reglas y funciones que un programa ofrece para que otros se comuniquen con él, sin conocer cómo está hecho por dentro.

Ver la lección →

API REST (REST, RESTful)

Tipo de API web que usa las peticiones HTTP (GET, POST, PUT, DELETE) sobre direcciones URL para leer y modificar recursos, normalmente intercambiando datos en JSON.

GET /usuarios/5

Ver la lección →

Argumento

Valor concreto que se pasa a una función cuando se la llama. Se asigna a los parámetros que la función declaró para trabajar con él.

suma(2, 3)

Ver la lección →

ARIA (WAI-ARIA)

Conjunto de atributos HTML que añaden información extra para lectores de pantalla cuando las etiquetas normales no bastan para describir el papel de un elemento.

aria-label="Cerrar"

Ver la lección →

Array (arreglo, vector, lista)

Estructura que guarda varios valores ordenados en una sola variable, a los que se accede por su posición, empezando a contar desde cero.

[10, 20, 30]

Ver la lección →

Arrow function (función flecha)

Forma corta de escribir funciones en JavaScript con una flecha. Además, no crea su propio this, sino que usa el del código que la rodea.

x => x * 2

Ver la lección →

Asincronía (asíncrono)

Capacidad de iniciar una tarea lenta, como pedir datos a un servidor, y seguir ejecutando otro código mientras llega el resultado, en lugar de quedarse esperando.

Ver la lección →

async/await (async await)

Sintaxis de JavaScript que permite escribir código asíncrono con aspecto de código normal: await detiene la función hasta que una promesa termina.

await fetch(url)

Ver la lección →

Atributo (atributo HTML)

Dato adicional que se escribe dentro de la etiqueta de apertura de un elemento HTML para configurarlo, con forma nombre="valor".

<a href="/inicio">

Ver la lección →

Autenticación (login, iniciar sesión)

Proceso de comprobar que alguien es quien dice ser, normalmente con usuario y contraseña. No es lo mismo que la autorización, que decide qué puede hacer.

Ver la lección →

Autorización (permisos)

Proceso de decidir qué acciones o datos puede usar una persona ya identificada. Por ejemplo, que un usuario normal no pueda entrar en el panel de administración.

Ver la lección →

B

Back-end (backend, lado del servidor)

Parte de una aplicación que se ejecuta en el servidor y que el usuario no ve: gestiona los datos, la lógica de negocio y la comunicación con la base de datos.

Ver la lección →

Base de datos (BD, BBDD)

Almacén organizado de información que permite guardarla, buscarla y modificarla de forma rápida y segura. Las más habituales organizan los datos en tablas.

Ver la lección →

Booleano (boolean, bool)

Tipo de dato que solo puede valer verdadero o falso. Se usa en las condiciones para decidir qué parte del código se ejecuta.

true, false

Ver la lección →

Bootstrap

Framework de CSS con componentes ya hechos (botones, menús, tarjetas) y una rejilla responsive, que permite montar páginas con buen aspecto escribiendo pocas reglas propias.

Ver la lección →

Bucle (loop, iteración)

Estructura que repite un bloque de código mientras se cumpla una condición o una cantidad de veces, evitando escribir lo mismo muchas veces.

for (let i = 0; i < 5; i++)

Ver la lección →

Bug (error de programación)

Fallo en un programa que hace que se comporte de forma distinta a la esperada. Encontrarlo y corregirlo es parte habitual del trabajo.

Ver la lección →

C

Caché (cache)

Copia temporal de datos que se guarda para volver a servirlos más rápido sin repetir el trabajo. Los navegadores la usan para no descargar de nuevo imágenes y archivos.

Ver la lección →

Callback (función de retorno)

Función que se pasa como argumento a otra para que esta la ejecute más tarde, por ejemplo cuando termina una tarea o ocurre un evento.

setTimeout(avisar, 1000)

Ver la lección →

Cascada (cascade)

Mecanismo de CSS que decide qué regla gana cuando varias afectan al mismo elemento, según su origen, su especificidad y el orden en que aparecen.

Ver la lección →

Cifrado (encriptación, encriptar)

Transformación de datos en un formato ilegible que solo se puede revertir con una clave. Protege la información mientras viaja por la red o está guardada.

Ver la lección →

Clase (class)

Plantilla que define qué datos y qué comportamientos tendrán los objetos creados a partir de ella. Es como el molde con el que se fabrican las piezas.

class Perro { }

Ver la lección →

Clase abstracta

Clase que no se puede instanciar directamente y sirve como base para otras. Puede incluir métodos sin cuerpo que las clases hijas están obligadas a completar.

Ver la lección →

Clave foránea (clave ajena, foreign key)

Columna de una tabla que guarda el identificador de una fila de otra tabla, y así crea una relación entre ambas y mantiene los datos coherentes.

pedidos.cliente_id

Ver la lección →

Clave primaria (primary key, PK)

Columna, o conjunto de columnas, cuyo valor identifica de forma única cada fila de una tabla. No puede repetirse ni estar vacía.

id INT PRIMARY KEY

Ver la lección →

Cliente

Programa o dispositivo que pide información o servicios a un servidor. En la web, el cliente habitual es el navegador que solicita las páginas.

Ver la lección →

Closure (clausura, cierre)

Función que recuerda las variables del lugar donde fue creada, aunque se ejecute después y desde fuera de ese lugar.

Ver la lección →

Código de estado (status code, código HTTP)

Número de tres cifras con el que un servidor indica el resultado de una petición HTTP: 200 significa correcto, 404 no encontrado y 500 error del servidor.

404 Not Found

Ver la lección →

Código fuente (source code)

Texto escrito por una persona en un lenguaje de programación, antes de convertirse en un programa que el ordenador pueda ejecutar.

Ver la lección →

Commit (confirmación)

Instantánea de los cambios del proyecto guardada en el historial de Git, con un mensaje que explica qué se ha modificado y por qué.

git commit -m "Añade menú"

Compilar (compilador, compilación)

Traducir el código fuente completo a otro formato, como código máquina o bytecode, antes de ejecutarlo. Durante la traducción se detectan errores de sintaxis y de tipos.

Ver la lección →

Composer

Gestor de dependencias de PHP. Descarga las librerías que declaras en un archivo, junto con las que estas necesitan, y las deja listas para usar en tu proyecto.

composer require monolog/monolog

Ver la lección →

Condicional (if, sentencia condicional)

Estructura que ejecuta un bloque de código solo si se cumple una condición, y permite elegir entre varios caminos según el valor de los datos.

if (edad >= 18) { }

Ver la lección →

Consola (console)

Ventana o panel donde un programa muestra mensajes y errores. En el navegador se abre con las herramientas de desarrollo y sirve para probar y depurar código.

console.log(x)

Ver la lección →

Constante (const)

Variable cuyo valor se asigna una vez y no puede reasignarse después. Sirve para guardar datos que no deben cambiar durante la ejecución.

const IVA = 0.21;

Ver la lección →

Constructor

Método especial de una clase que se ejecuta al crear un objeto nuevo y se encarga de darle sus valores iniciales.

constructor(nombre) { }

Ver la lección →

Container query (consulta de contenedor)

Regla de CSS que aplica estilos según el tamaño del contenedor de un elemento, no el de la ventana, y hace los componentes adaptables allí donde se coloquen.

Ver la lección →

Control de versiones (VCS)

Sistema que registra los cambios de los archivos a lo largo del tiempo, permite volver a estados anteriores y facilita que varias personas trabajen sobre el mismo proyecto.

CORS (intercambio de recursos entre orígenes)

Mecanismo del navegador que bloquea por defecto las peticiones a un dominio distinto del de la página, salvo que ese servidor declare que las permite.

Ver la lección →

CRUD

Las cuatro operaciones básicas con datos: crear, leer, actualizar y borrar (Create, Read, Update, Delete). Casi toda aplicación con base de datos las incluye.

Ver la lección →

CSRF (cross-site request forgery, falsificación de petición)

Ataque que engaña al navegador de una persona con sesión iniciada para que envíe, sin que lo sepa, una petición no deseada a otra web. Se evita con tokens.

Ver la lección →

CSS (hojas de estilo)

Lenguaje que define el aspecto de una página web: colores, tipografías, tamaños, espacios y colocación de los elementos escritos en HTML.

color: red;

Ver la lección →

D

Decorador (decorator)

Función de Python que envuelve a otra para añadirle comportamiento extra, como medir el tiempo o comprobar permisos, sin modificar su código.

@login_required

Ver la lección →

Depurar (debug, depuración, debugging)

Buscar y corregir errores de un programa, normalmente ejecutándolo paso a paso, mirando el valor de las variables o mostrando mensajes.

Ver la lección →

Desestructuración (destructuring)

Sintaxis de JavaScript para extraer valores de un array o un objeto y guardarlos en variables en una sola línea.

const { id, nombre } = user;

Ver la lección →

Despliegue (deploy, deployment)

Proceso de publicar una aplicación en un servidor para que los usuarios puedan usarla. Incluye subir el código, configurar el entorno y arrancar el servicio.

Ver la lección →

DevTools (herramientas de desarrollo, herramientas para desarrolladores)

Conjunto de herramientas incluidas en el navegador para inspeccionar el HTML y el CSS, ver errores, analizar la red y depurar el JavaScript.

F12

Ver la lección →

Diccionario (dict, mapa)

Estructura de Python que guarda pares de clave y valor, de modo que se accede a cada dato por su nombre en lugar de por su posición.

{"edad": 20}

Ver la lección →

DNS (sistema de nombres de dominio)

Sistema que traduce los nombres de dominio que escribimos, como ejemplo.com, en las direcciones IP numéricas que los ordenadores usan para encontrarse.

Ver la lección →

Docker

Herramienta que empaqueta una aplicación con todo lo que necesita en un contenedor aislado, para que funcione igual en cualquier ordenador o servidor.

DOCTYPE (declaración de tipo de documento)

Primera línea de un documento HTML que indica al navegador que debe interpretar la página con el estándar actual y no en modo de compatibilidad antiguo.

<!DOCTYPE html>

Ver la lección →

DOM (modelo de objetos del documento)

Representación de la página HTML como un árbol de objetos que JavaScript puede leer y modificar para cambiar el contenido, los estilos o reaccionar a la interacción.

document.querySelector("h1")

Ver la lección →

Dominio (nombre de dominio)

Nombre legible que identifica un sitio web en internet, como ejemplo.com. Se alquila a un registrador y el DNS lo vincula con el servidor donde está la web.

Ver la lección →

E

Elemento (elemento HTML)

Pieza de una página HTML formada normalmente por una etiqueta de apertura, su contenido y una etiqueta de cierre. Por ejemplo, un párrafo o un enlace.

<p>Hola</p>

Ver la lección →

Encapsulación (encapsulamiento)

Principio de la programación orientada a objetos que consiste en ocultar los datos internos de un objeto y permitir acceder a ellos solo mediante métodos controlados.

Ver la lección →

Endpoint (punto de acceso, ruta de API)

Dirección concreta de una API a la que se envían peticiones para realizar una acción o pedir un dato determinado.

/api/usuarios

Ver la lección →

Entorno virtual (venv, virtualenv)

Carpeta aislada de Python con sus propias librerías instaladas, para que cada proyecto use las versiones que necesita sin interferir con los demás.

python -m venv .venv

Ver la lección →

Enum (enumeración)

Tipo que agrupa un conjunto fijo de valores con nombre, como los días de la semana o los estados de un pedido, y evita escribir textos sueltos propensos a errores.

Ver la lección →

Event loop (bucle de eventos)

Mecanismo de JavaScript que va tomando tareas pendientes, como temporizadores o respuestas de red, y las ejecuta una a una cuando el código principal queda libre.

Ver la lección →

Evento (event)

Algo que ocurre en la página y a lo que el código puede reaccionar, como un clic, una tecla pulsada o la carga completa del documento.

click

Ver la lección →

Excepción (exception, error)

Situación anormal que interrumpe el flujo normal de un programa, como dividir entre cero. Se puede capturar para reaccionar sin que la aplicación se detenga.

try { } catch (e) { }

Ver la lección →

Express (Express.js)

Framework minimalista de Node.js para crear servidores web y APIs. Permite definir qué responde la aplicación a cada ruta y método HTTP con poco código.

Ver la lección →

F

fetch (fetch API)

Función de JavaScript que hace peticiones HTTP desde el navegador y devuelve una promesa, normalmente para pedir o enviar datos a una API.

fetch("/api/datos")

Ver la lección →

Flexbox (flex, caja flexible)

Sistema de CSS para colocar elementos en una sola dirección, fila o columna, repartiendo el espacio y alineándolos fácilmente aunque cambie su tamaño.

display: flex;

Ver la lección →

Formulario (form)

Conjunto de campos HTML con el que el usuario introduce datos, como texto, opciones o archivos, y que se envía al servidor o se procesa con JavaScript.

<form action="/enviar">

Ver la lección →

Framework (marco de trabajo)

Conjunto de herramientas y reglas que da una estructura ya hecha a un proyecto. A diferencia de una librería, suele ser el framework quien llama a tu código.

Ver la lección →

Front-end (frontend, lado del cliente)

Parte de una aplicación web que se ve y con la que se interactúa en el navegador: el HTML, el CSS y el JavaScript que se ejecutan en el equipo del usuario.

Ver la lección →

Full stack (fullstack)

Se dice de quien domina tanto el front-end como el back-end, o del proyecto que incluye ambas partes: interfaz, servidor y base de datos.

Función (function)

Bloque de código con nombre que realiza una tarea concreta y se puede ejecutar cuantas veces haga falta, con distintos datos de entrada y un resultado de salida.

function saludar() { }

Ver la lección →

Función agregada (agregación, COUNT, SUM, AVG)

Función de SQL que resume varias filas en un único valor, como contarlas con COUNT, sumarlas con SUM o calcular su media con AVG.

SELECT COUNT(*) FROM users

Ver la lección →

G

Garbage collector (recolector de basura)

Parte del entorno de ejecución que libera automáticamente la memoria de los objetos que el programa ya no usa, de modo que no hay que hacerlo a mano.

Ver la lección →

Generador (generator)

Función especial que puede pausarse y reanudarse, y que va entregando valores uno a uno con yield en vez de calcular y devolver todos de golpe.

function* contar() { yield 1; }

Ver la lección →

Genéricos (generics)

Mecanismo para escribir código que funciona con distintos tipos de datos sin perder la comprobación de tipos. El tipo concreto se indica al usarlo.

Array<string>

Ver la lección →

Getter y setter (getters, setters)

Métodos que leen y modifican un atributo privado de un objeto. Permiten comprobar o transformar el dato antes de guardarlo o devolverlo.

getNombre()

Ver la lección →

Git

Sistema de control de versiones distribuido que guarda el historial de cambios de un proyecto, permite trabajar en ramas paralelas y colaborar entre varias personas.

git init

GitHub

Plataforma web para alojar repositorios Git, colaborar con otras personas mediante pull requests e incidencias, y compartir proyectos de código.

Grid (CSS Grid, rejilla)

Sistema de CSS para maquetar en dos dimensiones, filas y columnas a la vez, definiendo una rejilla y colocando los elementos en sus celdas.

display: grid;

Ver la lección →

GROUP BY (agrupar)

Cláusula de SQL que agrupa las filas con el mismo valor en una columna para poder aplicar funciones agregadas a cada grupo, como contar pedidos por cliente.

GROUP BY ciudad

Ver la lección →

H

Hash (función hash, resumen criptográfico)

Resultado de aplicar una función matemática que convierte cualquier dato en una cadena fija de caracteres. No se puede revertir, y por eso se usa para guardar contraseñas.

Ver la lección →

Herencia (inheritance)

Mecanismo de la programación orientada a objetos por el que una clase hija reutiliza los atributos y métodos de otra clase, y puede ampliarlos o cambiarlos.

class Gato extends Animal

Ver la lección →

Hilo (thread)

Secuencia de instrucciones que se ejecuta de forma independiente dentro de un programa. Con varios hilos, una aplicación puede hacer varias tareas a la vez.

Ver la lección →

Hoisting (elevación)

Comportamiento de JavaScript por el que las declaraciones de funciones y variables se registran al principio de su ámbito antes de ejecutar el código.

Ver la lección →

Hosting (alojamiento web, hospedaje)

Servicio que alquila espacio en un servidor siempre encendido y conectado a internet para que tu web esté disponible las 24 horas.

Ver la lección →

HTML (lenguaje de marcado)

Lenguaje de marcas que da estructura al contenido de una página web mediante etiquetas: títulos, párrafos, enlaces, imágenes o listas. No es un lenguaje de programación.

<h1>Título</h1>

Ver la lección →

HTML semántico (semántica, etiquetas semánticas)

Uso de etiquetas HTML que describen el significado de cada parte de la página, como header, nav o article, y no solo su aspecto. Ayuda a buscadores y lectores de pantalla.

<nav>, <main>

Ver la lección →

HTTP (protocolo de transferencia de hipertexto)

Protocolo con el que el navegador y el servidor se comunican en la web: el cliente envía una petición y el servidor devuelve una respuesta.

GET /index.html

Ver la lección →

HTTPS

Versión segura de HTTP que cifra la comunicación entre navegador y servidor. Evita que otros puedan leer o modificar los datos, como contraseñas, durante el viaje.

Ver la lección →

I

IDE (entorno de desarrollo integrado)

Programa que reúne en un solo sitio editor de código, ejecución, depuración y otras ayudas para programar. IntelliJ IDEA, Eclipse o PyCharm son ejemplos.

Ver la lección →

Iframe

Elemento HTML que incrusta otra página web dentro de la actual, como un mapa o un vídeo, en un recuadro independiente.

<iframe src="mapa.html">

Ver la lección →

Índice (index)

Estructura auxiliar de una base de datos que acelera las búsquedas en una columna, como el índice de un libro, a cambio de ocupar espacio y ralentizar un poco las escrituras.

CREATE INDEX idx ON t(col)

Ver la lección →

Inferencia de tipos (type inference)

Capacidad de TypeScript de deducir por sí mismo el tipo de una variable a partir del valor que recibe, sin que haya que escribirlo explícitamente.

let n = 5; // number

Ver la lección →

Instancia (instanciar)

Objeto concreto creado a partir de una clase. De una misma clase pueden crearse muchas instancias, cada una con sus propios datos.

new Persona("Ana")

Ver la lección →

Interfaz (interface)

Contrato que define qué métodos o propiedades debe tener algo, sin decir cómo se implementan. Distintas clases pueden cumplirlo a su manera.

interface Usuario { id: number }

Ver la lección →

Interpretar (intérprete, interpretado)

Ejecutar el código línea a línea mediante un programa llamado intérprete, sin generar antes un ejecutable. Python y JavaScript funcionan así habitualmente.

Ver la lección →

Inyección SQL (SQL injection, SQLi)

Ataque que introduce código SQL malicioso en un campo de entrada para manipular consultas y leer o borrar datos. Se evita con consultas preparadas.

' OR '1'='1

Ver la lección →

IP (dirección IP)

Número que identifica a un dispositivo en una red, como internet. Funciona como la dirección postal que permite saber adónde enviar los datos.

192.168.1.10

Ver la lección →

Iterador (iterator)

Objeto que permite recorrer una colección elemento a elemento, recordando por dónde va. Es lo que usan por debajo los bucles for...of.

Ver la lección →

J

Java

Lenguaje de programación orientado a objetos, tipado y muy usado en empresas y en Android. Se compila a bytecode que ejecuta la máquina virtual de Java (JVM).

Ver la lección →

JavaScript (JS)

Lenguaje de programación que da interactividad a las páginas web y se ejecuta en el navegador. Con Node.js también sirve para programar servidores.

console.log("Hola")

Ver la lección →

JDBC

API estándar de Java para conectarse a bases de datos relacionales, enviar consultas SQL y recoger los resultados desde un programa.

Ver la lección →

JOIN (unir tablas, combinar tablas)

Operación de SQL que combina filas de dos o más tablas relacionadas en una sola consulta, normalmente emparejando una clave foránea con una clave primaria.

JOIN clientes ON ...

Ver la lección →

JSON (JavaScript Object Notation)

Formato de texto ligero para intercambiar datos entre programas. Usa pares clave-valor y listas, es fácil de leer y lo entienden casi todos los lenguajes.

{"nombre": "Ana"}

Ver la lección →

JUnit

Librería de Java para escribir pruebas automáticas que comprueban que cada parte del código devuelve lo esperado.

@Test

Ver la lección →

JVM (máquina virtual de Java)

Programa que ejecuta el bytecode de Java en cualquier sistema operativo. Gracias a ella, el mismo programa compilado funciona en Windows, macOS o Linux.

Ver la lección →

L

Lambda (expresión lambda)

Función anónima y breve que se escribe en el mismo punto donde se usa. En Java y Python se emplea mucho para filtrar, transformar u ordenar colecciones.

x -> x * 2

Ver la lección →

Lenguaje de programación

Conjunto de reglas y palabras con las que se escriben instrucciones para que un ordenador las ejecute. Algunos ejemplos son Python, Java o JavaScript.

Ver la lección →

Librería (biblioteca, library)

Colección de código ya escrito que puedes usar en tus programas para resolver tareas concretas, como manejar fechas, sin tener que programarlas tú desde cero.

Ver la lección →

Linter

Herramienta que analiza el código sin ejecutarlo y avisa de errores probables, malas prácticas o estilos incoherentes. ESLint es el más conocido en JavaScript.

Localhost

Nombre que designa a tu propio ordenador. Al abrir localhost en el navegador accedes a un servidor que se ejecuta en tu equipo, útil para probar mientras desarrollas.

http://localhost:3000

Ver la lección →

localStorage (almacenamiento local)

Espacio del navegador donde una web guarda pequeños datos de texto que se mantienen al cerrar la pestaña o el navegador. Cada sitio tiene el suyo.

localStorage.setItem("a","1")

Ver la lección →

M

Media query (consulta de medios)

Regla de CSS que aplica estilos solo cuando se cumple una condición del dispositivo, como un ancho de pantalla mínimo. Es la base del diseño responsive.

@media (min-width: 768px)

Ver la lección →

Metaetiqueta (meta, meta tag)

Etiqueta del head de un documento HTML que da información sobre la página, como su codificación, su descripción o cómo adaptarse a móviles.

<meta charset="utf-8">

Ver la lección →

Método (method)

Función que pertenece a un objeto o a una clase y define una acción que ese objeto puede realizar, como ladrar en una clase Perro.

perro.ladrar()

Ver la lección →

Modelo de caja (box model)

Forma en que CSS trata cada elemento como una caja formada, de dentro hacia fuera, por contenido, relleno (padding), borde y margen.

padding, border, margin

Ver la lección →

Módulo (module, import, export)

Archivo de código que agrupa funciones o datos y expone solo lo necesario para que otros archivos lo importen. Ayuda a organizar los proyectos.

import { suma } from "./mate.js"

Ver la lección →

MySQL (MariaDB)

Sistema gestor de bases de datos relacionales de código abierto, muy usado en la web junto con PHP. Guarda los datos en tablas que se consultan con SQL.

Ver la lección →

N

Node.js (Node)

Entorno que permite ejecutar JavaScript fuera del navegador, por ejemplo para crear servidores, herramientas de línea de comandos o scripts de automatización.

node app.js

Ver la lección →

Normalización (normalizar)

Proceso de organizar las tablas de una base de datos para evitar datos repetidos e inconsistencias, dividiéndolas en tablas más pequeñas relacionadas entre sí.

Ver la lección →

NoSQL (no relacional)

Bases de datos que no usan tablas relacionales clásicas. Guardan documentos, pares clave-valor o grafos, y se emplean cuando los datos son muy flexibles o masivos.

npm (Node Package Manager)

Gestor de paquetes de Node.js. Instala, actualiza y elimina las librerías JavaScript que usa un proyecto y ejecuta sus scripts.

npm install

Ver la lección →

null (nulo)

Valor que indica de forma intencionada que una variable no tiene ningún dato. En SQL, NULL representa un dato desconocido o ausente, que no equivale a cero.

Ver la lección →

O

Objeto (object)

Elemento que agrupa datos, llamados propiedades, y acciones, llamadas métodos, relacionados entre sí. Representa algo concreto, como un usuario o un coche.

{ nombre: "Ana", edad: 20 }

Ver la lección →

Operador (operator)

Símbolo que realiza una operación sobre uno o más valores, como sumar, comparar o combinar condiciones lógicas.

+, ===, &&

Ver la lección →

ORM (mapeo objeto-relacional)

Herramienta que permite trabajar con las tablas de una base de datos como si fueran objetos del lenguaje, sin escribir consultas SQL a mano.

P

Paquete (package)

Carpeta que agrupa clases o archivos relacionados para organizar un proyecto y evitar choques de nombres. También se llama así a una librería instalable.

package com.ejemplo;

Ver la lección →

Parámetro

Variable que una función declara entre paréntesis para recibir datos cuando se la llama. Los valores concretos que recibe se llaman argumentos.

function suma(a, b)

Ver la lección →

PDO (PHP Data Objects)

Extensión de PHP para conectarse a bases de datos de forma uniforme y segura, con soporte para consultas preparadas que evitan inyecciones SQL.

Ver la lección →

Petición (request, solicitud)

Mensaje que un cliente envía a un servidor para pedir algo, como una página o unos datos. Incluye un método HTTP, una dirección y, a veces, información adicional.

GET /contacto

Ver la lección →

PHP

Lenguaje de programación que se ejecuta en el servidor y genera páginas web dinámicas. Se usa mucho junto a bases de datos MySQL y está detrás de WordPress.

<?php echo "Hola"; ?>

Ver la lección →

pip

Gestor de paquetes de Python. Descarga e instala librerías desde el repositorio público PyPI para poder usarlas en tus programas.

pip install requests

Ver la lección →

Polimorfismo

Capacidad de que objetos de distintas clases respondan al mismo método cada uno a su manera, de modo que se pueden tratar de forma uniforme.

Ver la lección →

Promesa (promise)

Objeto de JavaScript que representa el resultado futuro de una operación asíncrona, que puede terminar bien o con error, y sobre el que se encadena código.

fetch(url).then(...)

Ver la lección →

Propiedad (property, atributo de objeto)

Dato con nombre guardado dentro de un objeto. Se accede a él con un punto o con corchetes.

usuario.nombre

Ver la lección →

Prototipo (prototype, herencia prototípica)

Objeto del que otros heredan propiedades y métodos en JavaScript. Es el mecanismo de herencia interno del lenguaje y sobre él se apoyan las clases.

Ver la lección →

Pseudoclase (pseudo-class)

Palabra clave de CSS, precedida de dos puntos, que selecciona un elemento según su estado o posición, como al pasar el ratón por encima o ser el primero de una lista.

a:hover

Ver la lección →

Pseudocódigo

Descripción de un algoritmo en lenguaje casi natural, con estructuras parecidas a las de programar pero sin sintaxis estricta. Sirve para planificar antes de escribir código.

Ver la lección →

Puerto (port)

Número que identifica un servicio concreto dentro de un equipo conectado a la red. Por ejemplo, la web usa el 80 para HTTP y el 443 para HTTPS.

localhost:3000

Python

Lenguaje de programación interpretado, de sintaxis clara y legible, muy usado para aprender, automatizar tareas, analizar datos y crear aplicaciones web.

print("Hola")

Ver la lección →

R

Recursividad (recursión, función recursiva)

Técnica en la que una función se llama a sí misma para resolver un problema dividiéndolo en versiones más pequeñas, hasta llegar a un caso base que detiene el proceso.

Ver la lección →

Refactorizar (refactorización, refactoring)

Reorganizar y limpiar el código existente para que sea más claro y fácil de mantener, sin cambiar lo que hace el programa.

Registro (fila, row, tupla de base de datos)

Cada una de las filas de una tabla de base de datos, que reúne todos los datos de un elemento, como un cliente concreto.

Ver la lección →

Relación (relacional)

Vínculo entre dos tablas de una base de datos, normalmente mediante una clave foránea. Puede ser de uno a uno, de uno a muchos o de muchos a muchos.

Ver la lección →

Repositorio (repo)

Carpeta de proyecto gestionada por Git que contiene los archivos y todo su historial de cambios. Puede estar en tu equipo o alojado en plataformas como GitHub.

git clone url

Responsive (diseño adaptable, diseño responsivo)

Forma de diseñar una web para que se vea y funcione bien en cualquier tamaño de pantalla, desde un móvil hasta un monitor grande.

Ver la lección →

Respuesta (response)

Mensaje que un servidor devuelve tras recibir una petición. Contiene un código de estado, cabeceras y, normalmente, el contenido pedido, como HTML o JSON.

Ver la lección →

Restricción (constraint)

Regla que se define en una tabla de base de datos para limitar los valores permitidos, como que un campo no sea nulo, sea único o cumpla una condición.

NOT NULL, UNIQUE

Ver la lección →

S

Sanear (sanitizar, sanitize)

Limpiar los datos que llegan del usuario, eliminando o transformando caracteres peligrosos, antes de mostrarlos o guardarlos. Se complementa con la validación.

Ver la lección →

Sass (SCSS)

Preprocesador de CSS que añade variables, anidación, funciones y módulos. El código Sass se compila a CSS normal que entienden los navegadores.

$color: #333;

Ver la lección →

Selector (selector CSS)

Parte de una regla de CSS que indica a qué elementos de la página se aplicarán los estilos: por etiqueta, clase, identificador o relación.

.boton

Ver la lección →

SEO (posicionamiento en buscadores)

Conjunto de técnicas para que una web aparezca mejor posicionada en los resultados de buscadores como Google, con buen contenido, estructura clara y velocidad de carga.

Ver la lección →

Servidor (server)

Ordenador o programa que está siempre disponible para responder a las peticiones de los clientes, por ejemplo enviando páginas web o datos de una base de datos.

Ver la lección →

Sesión (session)

Mecanismo para recordar quién es un usuario durante varias peticiones seguidas. El servidor guarda los datos y el navegador conserva solo un identificador.

$_SESSION["user"]

Ver la lección →

Sintaxis

Conjunto de reglas que indican cómo hay que escribir el código de un lenguaje para que sea válido. Un fallo de sintaxis impide ejecutar el programa.

Ver la lección →

SPA (aplicación de una sola página, single page application)

Aplicación web que carga una única página y va actualizando su contenido con JavaScript sin recargarla entera, lo que da sensación de aplicación nativa.

SQL (lenguaje de consulta estructurado)

Lenguaje estándar para crear, consultar y modificar datos en bases de datos relacionales mediante instrucciones como SELECT, INSERT, UPDATE y DELETE.

SELECT * FROM usuarios;

Ver la lección →

SQLite

Base de datos relacional ligera que se guarda en un único archivo y no necesita servidor. Es útil para aprender, hacer pruebas y aplicaciones pequeñas.

Ver la lección →

Subconsulta (subquery, consulta anidada)

Consulta SQL escrita dentro de otra, cuyo resultado se usa como dato en la consulta principal, por ejemplo para filtrar según un valor calculado.

WHERE id IN (SELECT ...)

Ver la lección →

T

Tabla (table)

Estructura de una base de datos relacional que guarda datos en filas y columnas. Cada columna es un tipo de dato y cada fila, un elemento.

Ver la lección →

Tailwind CSS (Tailwind)

Framework de CSS basado en clases utilitarias pequeñas, como flex o p-4, que se combinan directamente en el HTML para dar estilo sin escribir CSS aparte.

class="p-4 bg-blue-500"

Ver la lección →

Template literal (plantilla de cadena, cadena con plantilla)

Cadena de JavaScript escrita con acentos graves que permite insertar variables o expresiones con ${} y ocupar varias líneas.

`Hola ${nombre}`

Ver la lección →

Terminal (línea de comandos, consola de comandos, CLI)

Programa en el que se escriben órdenes de texto para manejar el ordenador y ejecutar herramientas, sin usar el ratón ni ventanas.

cd proyecto

this

Palabra clave de JavaScript que hace referencia al objeto sobre el que se está ejecutando el código. Su valor depende de cómo se llama a la función.

Ver la lección →

Tipado dinámico (dynamic typing)

Característica de los lenguajes en los que una variable puede cambiar de tipo durante la ejecución, y los tipos se comprueban al ejecutar el programa.

Ver la lección →

Tipo de dato (tipo)

Clase de valor que puede guardar una variable, como número, texto o booleano. Determina qué operaciones se pueden hacer con él.

number, string, boolean

Ver la lección →

Token (JWT, JSON Web Token)

Cadena de caracteres que se entrega tras autenticarse y que el cliente envía en las peticiones siguientes para demostrar su identidad sin repetir la contraseña.

Transacción (transaction, COMMIT, ROLLBACK)

Grupo de operaciones de una base de datos que se ejecutan como una unidad: o se completan todas o no se aplica ninguna. Sirve para no dejar datos a medias.

BEGIN; ... COMMIT;

Ver la lección →

Transición (transition)

Efecto de CSS que cambia gradualmente un estilo, como el color o el tamaño, durante un tiempo, en vez de hacerlo de golpe.

transition: color 0.3s;

Ver la lección →

Tupla (tuple)

Colección ordenada de valores que no se puede modificar en Python, o de longitud y tipos fijos en TypeScript. Sirve para agrupar datos relacionados.

(40.4, -3.7)

Ver la lección →

TypeScript (TS)

Lenguaje que amplía JavaScript con tipos estáticos. Se comprueba antes de ejecutar y se compila a JavaScript normal, lo que ayuda a detectar errores pronto.

let edad: number = 20;

Ver la lección →

U

Unión de tipos (union type)

Tipo de TypeScript que permite que un valor sea de uno entre varios tipos posibles, separados por una barra vertical.

string | number

Ver la lección →

URL (dirección web, enlace web)

Dirección completa de un recurso en internet. Indica el protocolo, el dominio, la ruta y, opcionalmente, parámetros o un fragmento.

https://ejemplo.com/blog

Ver la lección →

V

Validación (validar)

Comprobación de que los datos cumplen las reglas esperadas, como un correo con formato correcto. Debe hacerse en el navegador y, sobre todo, en el servidor.

Ver la lección →

Variable (variable)

Espacio con nombre en la memoria donde un programa guarda un dato que puede usar y cambiar más adelante.

let edad = 20;

Ver la lección →

Variable CSS (custom property, propiedad personalizada)

Valor reutilizable definido con dos guiones, que se declara una vez y se usa con var() en cualquier parte, y facilita cambiar colores o tamaños en todo el sitio.

var(--color-primario)

Ver la lección →

Vista (view)

Consulta de SQL guardada con un nombre que se usa como si fuera una tabla. Sirve para simplificar consultas complejas o mostrar solo ciertos datos.

CREATE VIEW ...

Ver la lección →

W

WHERE (filtrar)

Cláusula de SQL que filtra las filas y deja solo las que cumplen una condición, tanto al consultar como al modificar o borrar datos.

WHERE edad > 18

Ver la lección →

X

XSS (cross-site scripting)

Ataque que consigue que una web muestre código JavaScript malicioso a otros usuarios, por ejemplo a través de un comentario. Se evita escapando lo que se muestra.

<script>alert(1)</script>

Ver la lección →

Z

z-index (capas)

Propiedad de CSS que controla el orden de apilamiento de los elementos posicionados: los que tienen un valor mayor se dibujan por encima de los demás.

z-index: 10;

Ver la lección →