Apuntes DAM
Volver al inicio

Glosario de DAM y DAW

231 términos del temario explicados en una o dos frases. Cada uno enlaza con el tema donde se estudia con ejemplos y ejercicios.

A

Acceso aleatorio
Lectura o escritura en cualquier posición de un fichero sin recorrer lo anterior (RandomAccessFile en Java). Manejo de Ficheros (Acceso Datos) →
ACID
Propiedades de las transacciones: atomicidad, consistencia, aislamiento y durabilidad. Modificación de Datos en SQL (BBDD) →
Activity
En Android, componente que representa una pantalla con la que interactúa el usuario. Tecnologías y Plataformas Móviles (Multimedia) →
Acumulador
Variable que va sumando (o multiplicando, concatenando…) valores en cada vuelta de un bucle. Bucles (Programación) →
Agregación
En MongoDB, cadena de etapas ($match, $group, $lookup…) que transforma y resume documentos. Bases de Datos Documentales (Acceso Datos) →
Algoritmo
Secuencia finita y ordenada de pasos que resuelve un problema. Se puede expresar en pseudocódigo, con diagramas de flujo o en un lenguaje de programación. Fundamentos de la Programación (Programación) →
API REST
Estilo de servicio web que expone recursos mediante URL y usa los métodos HTTP (GET, POST, PUT, DELETE) y códigos de estado. Desarrollo de Servicios en Red (Servicios) →
ARIA
Atributos que añaden información de accesibilidad (roles, estados, propiedades) cuando el HTML no basta. Accesibilidad Web (DIW) →
Arquitectura cliente-servidor
Modelo en el que los clientes piden servicios a través de la red y un servidor central los atiende y responde. Arquitecturas y Tecnologías del Servidor (DWES) →
Array
Estructura de tamaño fijo que guarda elementos del mismo tipo en posiciones consecutivas accesibles por índice, empezando en 0. Arrays (Programación) →
async/await
Sintaxis para escribir código asíncrono basado en promesas como si fuera secuencial. Asincronía, AJAX y Frameworks (DWEC) →
Ayuda contextual
Ayuda que aparece donde está el usuario: descripciones emergentes, la tecla F1 o enlaces a la sección del manual que corresponde a esa pantalla. Documentación de Aplicaciones (Interfaces) →

B

Base de datos documental
Base de datos NoSQL que guarda documentos (normalmente JSON/BSON) con estructura flexible, como MongoDB. Bases de Datos Documentales (Acceso Datos) →
Base de datos objeto-relacional
Base de datos relacional ampliada con tipos definidos por el usuario, herencia de tablas y colecciones, según SQL:1999. Por ejemplo, PostgreSQL u Oracle. BD Objeto-Relacionales y Orientadas a Objetos (Acceso Datos) →
Base de datos orientada a objetos
Guarda directamente los objetos del programa con sus referencias, sin traducirlos a tablas. Por ejemplo, ObjectDB o db4o. BD Objeto-Relacionales y Orientadas a Objetos (Acceso Datos) →
BEM
Metodología de nombres de clases CSS: bloque__elemento--modificador. Estilos Homogéneos: Variables, Sass y BEM (DIW) →
BOM
Modelo de objetos del navegador: window, location, history, navigator… para interactuar con el navegador. Objetos Predefinidos y BOM (DWEC) →
Bucle
Estructura que repite un bloque de instrucciones mientras se cumple una condición (while, do-while) o un número de veces (for). Bucles (Programación) →
Business Intelligence
Conjunto de técnicas y herramientas para analizar los datos de una empresa y apoyar la toma de decisiones. Gestión de la Información y BI (SGE) →
Búsqueda binaria
Algoritmo que busca en un array ordenado descartando la mitad en cada paso; necesita como mucho unas log₂ n comparaciones. Arrays (Programación) →
Bytecode
Código intermedio que genera javac y que ejecuta la máquina virtual de Java en cualquier sistema operativo. Desarrollo de Software (Entornos) →

C

Caja blanca
Pruebas diseñadas a partir del código interno: caminos, decisiones y condiciones. Diseño y realización de pruebas (Entornos) →
Caja negra
Pruebas diseñadas a partir de la especificación, sin mirar el código: clases de equivalencia y valores límite. Diseño y realización de pruebas (Entornos) →
Campo calculado
Campo de un modelo de Odoo cuyo valor calcula un método decorado con @api.depends. Con store=True se guarda en la base de datos y se puede buscar por él. Desarrollo de Componentes ERP (SGE) →
Cardinalidad
Número de ocurrencias de una entidad que pueden relacionarse con una ocurrencia de otra (1:1, 1:N, N:M). Modelo Entidad-Relación (BBDD) →
Casting
Conversión explícita de un valor a otro tipo, como (int) 3.9, que trunca a 3. Con objetos, convierte una referencia a una subclase o interfaz. Introducción a Java (Programación) →
Ciclo de vida del software
Fases por las que pasa un programa: análisis, diseño, codificación, pruebas, implantación y mantenimiento. Desarrollo de Software (Entornos) →
Cifrado asimétrico
Cifrado con un par de claves pública y privada, como RSA; resuelve el intercambio de claves y las firmas digitales. Programación Segura en Java (Servicios) →
Cifrado simétrico
Cifrado que usa la misma clave para cifrar y descifrar, como AES; es rápido para grandes volúmenes. Programación Segura en Java (Servicios) →
Clase
Plantilla que define los atributos y métodos que tendrán los objetos creados a partir de ella. Clases y Objetos (Programación) →
Clase abstracta
Clase de la que no se pueden crear objetos; sirve de base y puede declarar métodos sin cuerpo que implementan las subclases. Herencia (Programación) →
Clave foránea
Columna que hace referencia a la clave primaria de otra tabla y garantiza la integridad referencial. Modelo Relacional (BBDD) →
Clave primaria
Atributo o conjunto de atributos que identifica de forma única cada fila de una tabla y no puede ser nulo. Modelo Relacional (BBDD) →
Closure
Función que recuerda las variables del ámbito donde se creó aunque se ejecute fuera de él. Funciones, Objetos y Clases (DWEC) →
Cobertura de código
Porcentaje del código (líneas, ramas) que ejecutan las pruebas. No garantiza que los resultados se comprueben bien. Pruebas con JUnit y Mockito (Entornos) →
Code smell
«Mal olor» del código: síntoma de un problema de diseño, como métodos largos, código duplicado o números mágicos. Optimización y Documentación (Entornos) →
Códec
Algoritmo que comprime y descomprime audio o vídeo, como H.264, AV1, AAC u Opus. Multimedia en Aplicaciones Móviles (Multimedia) →
Código de estado HTTP
Número de tres cifras que indica el resultado de una petición: 2xx éxito, 3xx redirección, 4xx error del cliente, 5xx error del servidor. Servicios Web y APIs REST (DWES) →
Compilador
Programa que traduce todo el código fuente a código objeto o máquina antes de ejecutarlo. Desarrollo de Software (Entornos) →
Complejidad ciclomática
Número de caminos independientes de un programa; para código estructurado, número de decisiones más uno. Diseño y realización de pruebas (Entornos) →
Componente visual
Elemento reutilizable de interfaz con propiedades y eventos propios (botón, calendario, tarjeta…). Creación de Componentes Visuales (Interfaces) →
Concurrencia
Varias tareas progresan en el mismo periodo, aunque se alternen en un solo núcleo; el paralelismo exige varios núcleos. Programación Concurrente (Servicios) →
Condición de carrera
Error que aparece cuando el resultado depende del orden en que se ejecutan hilos que acceden a datos compartidos. Hilos y Multithreading en Java (Servicios) →
Constructor
Método especial que se ejecuta al crear un objeto con new; se llama igual que la clase y no tiene tipo de retorno. Clases y Objetos (Programación) →
Contenedor
Proceso aislado que empaqueta una aplicación con sus dependencias y se ejecuta igual en cualquier máquina con Docker. Contenedores con Docker (Despliegue) →
Contenedor multimedia
Formato de archivo que agrupa pistas de audio, vídeo y subtítulos codificadas con distintos códecs, como MP4, MKV o WebM. Multimedia en Aplicaciones Móviles (Multimedia) →
Copia incremental
Copia de seguridad que solo guarda lo que ha cambiado desde la última copia de cualquier tipo. Sistemas de Ficheros y Copias de Seguridad (Sistemas) →
CORS
Mecanismo por el que un servidor indica qué otros orígenes pueden leer sus respuestas desde el navegador. Asincronía, AJAX y Frameworks (DWEC) →
Cortafuegos
Sistema que filtra el tráfico de red según reglas para permitir o bloquear conexiones. Servicios de Red, Recursos Compartidos y Seguridad (Sistemas) →
CPU
Unidad central de proceso: ejecuta las instrucciones de los programas. Sus características clave son núcleos, frecuencia y caché. Componentes Físicos (Sistemas) →
CRM
Sistema de gestión de la relación con los clientes: contactos, oportunidades, ventas y servicio posventa. Sistemas ERP-CRM (SGE) →
CSRF
Ataque que hace que el navegador de un usuario autenticado envíe una petición no deseada; se evita con tokens. Formularios, Sesiones y Seguridad (DWES) →
CSS Grid
Modelo de maquetación CSS en dos dimensiones con filas y columnas. Maquetación con Flexbox, Grid y Responsive (DIW) →
CSV
Formato de texto con un registro por línea y los valores separados por comas o punto y coma. Es el más usado para importar y exportar datos entre aplicaciones. Sistemas de Gestión de Información Empresarial (Marcas) →
Cursor
Mecanismo para recorrer fila a fila el resultado de una consulta dentro de un procedimiento. Programación en Bases de Datos (BBDD) →

D

DAO
Patrón Data Access Object: una clase que concentra el acceso a los datos de una entidad, de modo que el resto del programa trabaja con objetos. Conexión a bases de datos (Programación) →
DDL
Lenguaje de definición de datos: sentencias SQL que crean y modifican la estructura (CREATE, ALTER, DROP). SQL: Definición de Datos (DDL) (BBDD) →
Delegación de eventos
Escuchar un evento en un elemento contenedor y averiguar con event.target qué hijo lo originó. DOM, Eventos y Formularios (DWEC) →
Despliegue continuo
Práctica de publicar automáticamente en producción cada cambio que supera las comprobaciones. Git, Documentación y CI/CD (Despliegue) →
DHCP
Protocolo que asigna automáticamente direcciones IP y configuración de red a los equipos. Configuración de Redes TCP/IP (Sistemas) →
Diagrama de clases
Diagrama UML que muestra las clases, sus atributos, métodos y relaciones (asociación, herencia, composición). Diagramas UML (Entornos) →
Diagrama de secuencia
Diagrama UML que muestra los mensajes que intercambian los objetos a lo largo del tiempo. Diagramas UML (Entornos) →
Dirección IP
Identificador numérico de un equipo en una red IP (IPv4 de 32 bits o IPv6 de 128 bits). Redes Informáticas (Sistemas) →
Disparador (trigger)
Código que la base de datos ejecuta automáticamente antes o después de un INSERT, UPDATE o DELETE. Programación en Bases de Datos (BBDD) →
Disponibilidad
Porcentaje del tiempo que un servicio funciona. Un 99,9 % permite unas 8,8 horas de caída al año. Arquitecturas de Despliegue y la Nube (Despliegue) →
DML
Lenguaje de manipulación de datos: INSERT, UPDATE, DELETE (y SELECT). Modificación de Datos en SQL (BBDD) →
DNS
Sistema de nombres de dominio: traduce nombres como apuntesdam.com a direcciones IP. FTP, DNS y Servicios de Directorio (Despliegue) →
DOM
Modelo de objetos del documento: representación en árbol de una página que JavaScript puede leer y modificar. JavaScript y el DOM (Marcas) →
Dominio de Odoo
Lista de condiciones, como [('state', '=', 'done')], que filtra registros en búsquedas, vistas, acciones y reglas de acceso. Usa notación polaca para combinar con | y &. Desarrollo de Componentes ERP (SGE) →
DTD
Definición de tipo de documento: gramática sencilla que indica qué elementos y atributos puede tener un XML. Validación de XML: DTD y XML Schema (Marcas) →

E

Encapsulación
Ocultar los atributos de un objeto (private) y dar acceso controlado mediante métodos que validan los cambios. Clases y Objetos (Programación) →
Entidad
En el modelo E/R, objeto del mundo real del que se guarda información, como Cliente o Pedido. Modelo Entidad-Relación (BBDD) →
Entidad débil
Entidad que no puede identificarse por sí sola y depende de otra, como las líneas de un pedido. Modelo Entidad-Relación (BBDD) →
ERP
Sistema de planificación de recursos empresariales que integra en una base de datos única ventas, compras, inventario, contabilidad y personal. Sistemas ERP-CRM (SGE) →
Escalado horizontal
Aumentar la capacidad añadiendo más servidores detrás de un balanceador de carga. El vertical, en cambio, usa un servidor más potente. Arquitecturas de Despliegue y la Nube (Despliegue) →
Espacio de nombres
Identificador (normalmente una URI) que evita conflictos entre elementos de distintos vocabularios XML. Validación de XML: DTD y XML Schema (Marcas) →
Especificidad
Peso de un selector CSS que decide qué regla gana cuando varias afectan al mismo elemento. Maquetación con Flexbox, Grid y Responsive (DIW) →
Estilo de párrafo
Conjunto de formatos con nombre (fuente, tamaño, espaciado) que se aplica a títulos y párrafos. Permite cambiar todo el documento a la vez y generar el índice automático. Documentación y Aplicaciones Ofimáticas (Sistemas) →
Excepción
Objeto que representa un error o situación anómala durante la ejecución; se lanza con throw y se captura con try-catch. Ficheros y Streams (Programación) →
Expresión regular
Patrón de texto que describe un conjunto de cadenas, usado para validar, buscar y reemplazar (por ejemplo, \d{8}[A-Z] para un DNI). Strings (Programación) →

F

Fetch
API del navegador para hacer peticiones HTTP que devuelve una promesa con la respuesta. Asincronía, AJAX y Frameworks (DWEC) →
Firma digital
Valor calculado con la clave privada que permite a cualquiera verificar, con la pública, el autor y la integridad de un documento. Programación Segura en Java (Servicios) →
Flexbox
Modelo de maquetación CSS en una dimensión (fila o columna) para alinear y repartir el espacio entre elementos. Maquetación con Flexbox, Grid y Responsive (DIW) →
Función de ventana
Función SQL (ROW_NUMBER, RANK, SUM … OVER) que calcula un valor para cada fila a partir de un conjunto de filas relacionadas sin agruparlas. Consultas SQL Avanzadas (BBDD) →
FXML
Lenguaje XML de JavaFX para describir la interfaz separada del código Java. Generación de Interfaces Gráficas (Interfaces) →

G

Game loop
Bucle principal de un juego que en cada fotograma lee la entrada, actualiza el estado y dibuja la escena. Desarrollo de Juegos 2D y 3D (Multimedia) →
Genéricos
Parámetros de tipo (como List<String>) que permiten escribir clases y métodos reutilizables con comprobación de tipos al compilar. Colecciones (Programación) →
Git
Sistema de control de versiones distribuido que guarda la historia de cambios de un proyecto en commits y permite trabajar con ramas. Optimización y Documentación (Entornos) →
GROUP BY
Cláusula SQL que agrupa las filas con el mismo valor para calcular funciones de agregado (COUNT, SUM, AVG) por grupo. Consultas SQL Avanzadas (BBDD) →

H

Hash
Función que convierte cualquier dato en un resumen de tamaño fijo, imposible de invertir; SHA-256 es un ejemplo. Programación Segura en Java (Servicios) →
HashMap
Colección de pares clave-valor con búsqueda, inserción y borrado inmediatos de media, sin orden garantizado. Colecciones (Programación) →
HAVING
Filtro que se aplica a los grupos después de GROUP BY, a diferencia de WHERE, que filtra filas antes de agrupar. Consultas SQL Avanzadas (BBDD) →
Herencia
Mecanismo por el que una clase (subclase) adquiere los atributos y métodos de otra (superclase) y puede añadir o redefinir comportamiento. Herencia (Programación) →
Herencia de vistas
Mecanismo de Odoo para modificar una vista existente con expresiones xpath (before, after, inside, replace, attributes) sin tocar el módulo original. Desarrollo de Componentes ERP (SGE) →
Heurísticas de Nielsen
Diez principios generales para evaluar la usabilidad de una interfaz, como la visibilidad del estado del sistema o la prevención de errores. Usabilidad y Accesibilidad (Interfaces) →
Hilo
Unidad de ejecución dentro de un proceso; los hilos de un proceso comparten su memoria. Hilos y Multithreading en Java (Servicios) →
Historia de usuario
Requisito descrito desde el punto de vista del usuario: «Como… quiero… para…», con criterios de aceptación. Desarrollo de Software (Entornos) →
Hoisting
Comportamiento de JavaScript por el que las declaraciones de var y de funciones se «elevan» al principio de su ámbito. Fundamentos de JavaScript (DWEC) →
HTML semántico
Uso de etiquetas HTML según su significado (header, nav, main, article, button) y no según su aspecto. Lenguajes de Marcas para la Web (Marcas) →
HTTP
Protocolo de petición y respuesta de la web: el cliente envía un método (GET, POST…), una ruta y cabeceras, y el servidor responde con un código de estado y un cuerpo. Arquitecturas y Tecnologías del Servidor (DWES) →
HTTPS
HTTP sobre TLS: cifra la comunicación y verifica la identidad del servidor con un certificado. Servidores Web: Apache y Nginx (Despliegue) →

I

IaaS, PaaS y SaaS
Modelos de servicio en la nube: alquilar infraestructura (máquinas virtuales), una plataforma gestionada donde subir el código, o usar una aplicación ya terminada. Arquitecturas de Despliegue y la Nube (Despliegue) →
IDE
Entorno de desarrollo integrado: aplicación que reúne editor, compilador, depurador y otras herramientas (IntelliJ, Eclipse, VS Code). Instalación y uso de IDEs (Entornos) →
Identificador externo
Clave estable que identifica un registro al importarlo en un ERP, de modo que volver a importar el fichero actualiza el registro en lugar de duplicarlo. Sistemas de Gestión de Información Empresarial (Marcas) →
Igualdad estricta (===)
Comparación de JavaScript que no convierte tipos: 1 === '1' es false, mientras que 1 == '1' es true. Fundamentos de JavaScript (DWEC) →
Imagen Docker
Plantilla de solo lectura, construida a partir de un Dockerfile, desde la que se crean contenedores. Contenedores con Docker (Despliegue) →
Índice
Estructura que acelera las búsquedas por una o varias columnas a costa de espacio y de inserciones algo más lentas. SQL: Definición de Datos (DDL) (BBDD) →
Informe
Documento generado a partir de datos, con agrupaciones, totales y gráficos, normalmente exportado a PDF. Informes (Interfaces) →
Inmutable
Objeto cuyo estado no puede cambiar después de crearse, como String o LocalDate. Las operaciones devuelven objetos nuevos. Strings (Programación) →
Instalador
Paquete que copia una aplicación y sus dependencias al equipo del usuario y la configura (MSI, DEB, DMG…). Distribución de Aplicaciones (Interfaces) →
Integración continua
Práctica de integrar los cambios con frecuencia y comprobarlos automáticamente (compilar, analizar, probar) en cada envío. Optimización y Documentación (Entornos) →
Interbloqueo (deadlock)
Situación en la que dos o más hilos esperan indefinidamente recursos que tiene el otro. Hilos y Multithreading en Java (Servicios) →
Interfaz
Contrato con los métodos que debe implementar una clase. Una clase puede implementar varias interfaces. Interfaces (Programación) →
Interfaz funcional
Interfaz con un único método abstracto, como Comparator o Predicate; se puede implementar con una lambda. Interfaces (Programación) →
Interfaz natural de usuario
Interfaz que se maneja con capacidades humanas como la voz, los gestos, la mirada o el tacto, en lugar de con teclado y ratón. Interfaces Naturales de Usuario (Interfaces) →
Intérprete
Programa que traduce y ejecuta el código instrucción a instrucción. Desarrollo de Software (Entornos) →
Inyección SQL
Ataque que introduce código SQL en los datos de entrada para alterar una consulta construida concatenando texto. Se evita con consultas parametrizadas. Consultas SQL Avanzadas (BBDD) →

J

JavaBean
Clase Java reutilizable con constructor sin parámetros, atributos privados accesibles mediante getters y setters, y que suele implementar Serializable. Componentes de Acceso a Datos (Acceso Datos) →
Javadoc
Herramienta que genera documentación HTML a partir de los comentarios /** … */ del código Java. Optimización y Documentación (Entornos) →
JavaScript
Lenguaje de programación de la web que se ejecuta en el navegador (y en el servidor con Node.js). Fundamentos de JavaScript (DWEC) →
JDBC
API de Java para conectarse a bases de datos relacionales, ejecutar sentencias SQL y recorrer sus resultados. Conexión a bases de datos (Programación) →
Jetpack Compose
Kit de Android para construir interfaces de forma declarativa con funciones Kotlin. Desarrollo de Aplicaciones Móviles (Multimedia) →
JOIN
Operación SQL que combina filas de dos o más tablas relacionadas; INNER JOIN solo devuelve las que coinciden y LEFT JOIN conserva todas las de la izquierda. Consultas SQL Avanzadas (BBDD) →
JPA
Especificación estándar de Java para ORM; Hibernate es su implementación más usada. Mapeo Objeto-Relacional (Hibernate/JPA) (Acceso Datos) →
JPQL
Lenguaje de consultas de JPA, parecido a SQL pero sobre entidades y sus atributos. Mapeo Objeto-Relacional (Hibernate/JPA) (Acceso Datos) →
JSON
Formato de texto para intercambiar datos basado en objetos y arrays de JavaScript. Servicios Web y APIs REST (DWES) →
JUnit
Framework de pruebas unitarias para Java basado en anotaciones como @Test y aserciones como assertEquals. Pruebas con JUnit y Mockito (Entornos) →

K

KPI
Indicador clave de rendimiento: métrica que mide el avance hacia un objetivo del negocio. Gestión de la Información y BI (SGE) →

L

Lambda
Función anónima escrita como (parámetros) -> expresión, que implementa una interfaz funcional. Interfaces (Programación) →
Lenguaje de marcas
Lenguaje que añade etiquetas a un texto para describir su estructura o presentación, como HTML o XML. Fundamentos de Lenguajes de Marcas (Marcas) →
localStorage
Almacenamiento del navegador que guarda pares clave-valor de texto sin fecha de caducidad para un origen. Objetos Predefinidos y BOM (DWEC) →

M

Manual de usuario
Documento que explica a quien usa la aplicación cómo realizar cada tarea paso a paso, con capturas y sin detalles técnicos. Documentación de Aplicaciones (Interfaces) →
Máquina virtual
Equipo simulado por software (hipervisor) que ejecuta su propio sistema operativo sobre un equipo real. Instalación de Sistemas Operativos (Sistemas) →
Markdown
Lenguaje de marcas ligero para escribir texto con formato (títulos, listas, enlaces, código) con símbolos sencillos. Es el formato habitual de los README. Documentación y Aplicaciones Ofimáticas (Sistemas) →
Máscara de subred
Valor que indica qué parte de una dirección IP identifica la red y qué parte el equipo. Configuración de Redes TCP/IP (Sistemas) →
Mashup
Aplicación que combina datos o servicios de varias fuentes externas, como un mapa con datos abiertos de un ayuntamiento. Aplicaciones Dinámicas e Híbridas (DWES) →
Media query
Regla CSS que aplica estilos solo cuando se cumplen ciertas condiciones del dispositivo, como el ancho de la pantalla. Maquetación con Flexbox, Grid y Responsive (DIW) →
Memoria RAM
Memoria principal, rápida y volátil, donde se cargan los programas y datos en uso. Componentes Físicos (Sistemas) →
Método
Bloque de código con nombre que realiza una tarea; puede recibir parámetros y devolver un valor. Métodos (Programación) →
Microservicios
Arquitectura que divide la aplicación en servicios pequeños e independientes que se despliegan por separado y se comunican por la red. Lo contrario es un monolito. Arquitecturas y Tecnologías del Servidor (DWES) →
Mock
Doble de prueba que sustituye a una dependencia real y permite programar sus respuestas y verificar cómo se usa. Pruebas con JUnit y Mockito (Entornos) →
Modelo OSI
Modelo de referencia de 7 capas que describe cómo se comunican los sistemas en red. Redes Informáticas (Sistemas) →
Motor de juegos
Entorno que proporciona renderizado, física, sonido y herramientas para crear videojuegos (Unity, Godot, Unreal). Motores de Juegos (Multimedia) →
MVC
Patrón modelo-vista-controlador que separa los datos, la presentación y la lógica que los conecta. POO y el Patrón MVC (DWES) →

N

Normalización
Proceso de organizar las tablas siguiendo formas normales (1FN, 2FN, 3FN…) para eliminar redundancias y anomalías. Modelo Relacional (BBDD) →
NoSQL
Bases de datos no relacionales (documentales, clave-valor, columnares, de grafos) pensadas para esquemas flexibles o gran escala. NoSQL (BBDD) →

O

OAuth 2.0
Protocolo de autorización que permite iniciar sesión con otro servicio, como GitHub, o darle acceso a tus datos sin compartir la contraseña. Aplicaciones Dinámicas e Híbridas (DWES) →
Objeto
Instancia concreta de una clase, con sus propios valores en los atributos. Clases y Objetos (Programación) →
Odoo
ERP de código abierto modular, escrito en Python sobre PostgreSQL. Implantación de un ERP-CRM (SGE) →
Operador ternario
Expresión condicion ? a : b que devuelve a si la condición es verdadera y b si es falsa. Estructuras Condicionales (Programación) →
OQL
Object Query Language: lenguaje de consulta del estándar ODMG para bases de datos orientadas a objetos, con sintaxis parecida a SQL. Inspiró a lenguajes como JPQL. BD Objeto-Relacionales y Orientadas a Objetos (Acceso Datos) →
ORM
Mapeo objeto-relacional: técnica que traduce automáticamente entre objetos del programa y tablas de la base de datos. Mapeo Objeto-Relacional (Hibernate/JPA) (Acceso Datos) →

P

Parametrización
Adaptar un ERP a una empresa usando solo sus opciones de configuración, sin programar. Adaptación de un ERP-CRM (SGE) →
Partición
División lógica de un disco que el sistema operativo trata como una unidad independiente. Instalación de Sistemas Operativos (Sistemas) →
Patrón oscuro
Diseño que engaña al usuario para que haga algo que no quería, como esconder el botón de rechazar o suscribirle sin avisar. Usabilidad Web (DIW) →
PDO
Extensión de PHP para acceder a bases de datos con una interfaz común y consultas preparadas. Acceso a Datos con PDO (DWES) →
Permisos
Reglas que indican qué usuarios y grupos pueden leer, escribir o ejecutar cada fichero o carpeta. Administración de Sistemas Operativos (Sistemas) →
PHP
Lenguaje de programación del lado del servidor muy usado para generar páginas web dinámicas. Fundamentos de PHP (DWES) →
Pirámide de pruebas
Modelo que recomienda muchas pruebas unitarias, menos de integración y pocas de extremo a extremo, porque estas últimas son más lentas y frágiles. Pruebas de Interfaces (Interfaces) →
Polimorfismo
Capacidad de tratar objetos de distintas clases a través de un tipo común; en tiempo de ejecución se llama a la versión del método del objeto real. Herencia (Programación) →
Pool de conexiones
Conjunto de conexiones a la base de datos abiertas y reutilizables, que evita el coste de abrir una por petición. Conectores JDBC (Acceso Datos) →
PreparedStatement
Sentencia SQL precompilada con parámetros (?) que evita la inyección SQL y se puede reutilizar. Conexión a bases de datos (Programación) →
Problema N+1
Rendimiento pobre de un ORM que lanza una consulta para la lista y otra por cada elemento; se evita con JOIN FETCH. Mapeo Objeto-Relacional (Hibernate/JPA) (Acceso Datos) →
Procedimiento almacenado
Programa guardado en la base de datos que agrupa sentencias SQL y lógica, y se ejecuta con CALL. Programación en Bases de Datos (BBDD) →
Proceso
Programa en ejecución con su propia memoria, recursos y estado. Programación Concurrente (Servicios) →
Promesa
Objeto que representa el resultado futuro de una operación asíncrona: pendiente, cumplida o rechazada. Asincronía, AJAX y Frameworks (DWEC) →
Propiedad ligada
Propiedad de un JavaBean que avisa a los oyentes registrados (PropertyChangeListener) cada vez que cambia su valor. Componentes de Acceso a Datos (Acceso Datos) →
Prototipo
Objeto del que otro hereda propiedades en JavaScript; las clases son una sintaxis sobre los prototipos. Funciones, Objetos y Clases (DWEC) →
Proxy inverso
Servidor que recibe las peticiones de los clientes y las reenvía a uno o varios servidores internos. Servidores Web: Apache y Nginx (Despliegue) →
Prueba A/B
Experimento que muestra dos versiones de una página a grupos distintos de usuarios para medir cuál consigue mejor resultado. Usabilidad Web (DIW) →
Prueba de extremo a extremo
Prueba que recorre la aplicación completa como lo haría un usuario, desde la interfaz hasta la base de datos. Por ejemplo, con Playwright o TestFX. Pruebas de Interfaces (Interfaces) →
Prueba de regresión
Volver a ejecutar las pruebas tras un cambio para comprobar que no se ha roto lo que ya funcionaba. Diseño y realización de pruebas (Entornos) →
Punto de ruptura
Marca en una línea de código en la que el depurador detiene la ejecución para inspeccionar las variables. Instalación y uso de IDEs (Entornos) →

R

RAID
Combinación de varios discos para ganar rendimiento, redundancia o ambas (RAID 0, 1, 5, 10). Sistemas de Ficheros y Copias de Seguridad (Sistemas) →
README
Fichero en la raíz de un proyecto (normalmente README.md) que explica qué es, cómo instalarlo, cómo usarlo y cómo contribuir. Documentación de Aplicaciones (Interfaces) →
Realidad aumentada
Superpone objetos virtuales sobre la imagen real de la cámara en tiempo real, anclados a superficies del entorno. En Android se programa con ARCore. Interfaces Naturales de Usuario (Interfaces) →
Reconocimiento de voz
Conversión de la voz en texto. En Android se usa SpeechRecognizer o el intent RecognizerIntent. Interfaces Naturales de Usuario (Interfaces) →
Record
Tipo de clase de Java (desde Java 16) para datos inmutables que genera automáticamente constructor, métodos de acceso, equals, hashCode y toString. Clases y Objetos (Programación) →
Recursividad
Técnica en la que un método se llama a sí mismo para resolver versiones más pequeñas del problema hasta llegar a un caso base. Métodos (Programación) →
Refactorización
Cambiar la estructura interna del código sin cambiar su comportamiento externo, para hacerlo más legible y mantenible. Optimización y Documentación (Entornos) →
Restricción CHECK
Regla que deben cumplir los valores de una columna, como CHECK (precio >= 0). SQL: Definición de Datos (DDL) (BBDD) →
Room
Biblioteca de Android para usar SQLite con objetos y comprobación de consultas al compilar. Desarrollo de Aplicaciones Móviles (Multimedia) →
RSS
Formato XML para publicar contenidos actualizados (noticias, entradas de blog) que los lectores pueden suscribir. Sindicación de contenidos: RSS y Atom (Marcas) →

S

Sal (salt)
Valor aleatorio que se añade a una contraseña antes de calcular su hash para que dos contraseñas iguales den hashes distintos. Programación Segura en Java (Servicios) →
Sass
Preprocesador CSS que añade variables, anidamiento, mixins y módulos. Estilos Homogéneos: Variables, Sass y BEM (DIW) →
Scrum
Marco ágil que organiza el trabajo en sprints de duración fija, con un product owner, un scrum master y un equipo autoorganizado. Desarrollo de Software (Entornos) →
Serialización
Convertir un objeto en una secuencia de bytes para guardarlo o enviarlo, y reconstruirlo después. Ficheros y Streams (Programación) →
Servidor de aplicaciones
Entorno que ejecuta aplicaciones del servidor (como Tomcat para Java) y gestiona sus recursos. Servidores de Aplicaciones (Despliegue) →
Servidor web
Software que atiende peticiones HTTP y sirve páginas y recursos, como Apache o Nginx. Servidores Web: Apache y Nginx (Despliegue) →
Sesión
Mecanismo para conservar datos de un usuario entre peticiones HTTP, identificado por una cookie. Formularios, Sesiones y Seguridad (DWES) →
SGBD
Sistema gestor de bases de datos: software que almacena, consulta y protege los datos (MySQL, PostgreSQL, Oracle…). Sistemas de Almacenamiento (BBDD) →
Sistema de ficheros
Forma en que se organizan y guardan los ficheros en un dispositivo (NTFS, ext4, FAT32…). Sistemas de Ficheros y Copias de Seguridad (Sistemas) →
Sistema operativo
Software que gestiona el hardware y ofrece servicios a las aplicaciones: procesos, memoria, ficheros y dispositivos. Sistemas Operativos (Sistemas) →
Sobrecarga
Definir varios métodos con el mismo nombre y distintos parámetros (en número o tipo) en la misma clase. Métodos (Programación) →
Socket
Extremo de una conexión de red identificado por una dirección IP y un puerto. Sockets en Java (Servicios) →
SPA
Aplicación de una sola página: carga una vez y cambia el contenido con JavaScript sin recargar. Arquitecturas y Tecnologías del Cliente (DWEC) →
srcset
Atributo de img que ofrece varias versiones de una imagen para que el navegador elija la más adecuada al dispositivo. Multimedia y Animación en la Web (DIW) →
static
Modificador que hace que un atributo o método pertenezca a la clase en lugar de a cada objeto. Clases y Objetos (Programación) →
Stream
Secuencia de elementos sobre la que se encadenan operaciones (filter, map, collect) sin modificar la colección original. Colecciones (Programación) →
StringBuilder
Clase de Java para construir textos modificando un único búfer, mucho más eficiente que concatenar String dentro de un bucle. Strings (Programación) →
Subconsulta
Consulta escrita dentro de otra, en WHERE, FROM o SELECT. Consultas SQL Avanzadas (BBDD) →
SUS
System Usability Scale: cuestionario de 10 preguntas que da una puntuación de usabilidad de 0 a 100. Por encima de 68 se considera aceptable. Pruebas de Interfaces (Interfaces) →
synchronized
Palabra clave de Java que garantiza que solo un hilo a la vez ejecuta un bloque o método sobre el mismo objeto. Hilos y Multithreading en Java (Servicios) →

T

Tabla dinámica
Herramienta de las hojas de cálculo que resume una tabla de datos agrupando y totalizando por los campos que elijas, sin escribir fórmulas. Documentación y Aplicaciones Ofimáticas (Sistemas) →
Tasa de bits
Cantidad de datos por segundo de un audio o vídeo, en kbps. A más tasa de bits, más calidad y más tamaño. Multimedia en Aplicaciones Móviles (Multimedia) →
TCP
Protocolo de transporte orientado a conexión que garantiza la entrega ordenada y sin duplicados. Sockets en Java (Servicios) →
TDD
Desarrollo guiado por pruebas: escribir primero una prueba que falla, después el código mínimo para que pase y luego refactorizar. Pruebas con JUnit y Mockito (Entornos) →
Teorema CAP
En un sistema distribuido con particiones de red, hay que elegir entre consistencia y disponibilidad. NoSQL (BBDD) →
Test de usabilidad
Prueba en la que usuarios reales intentan hacer tareas con la web mientras se observa dónde dudan o se equivocan. Usabilidad Web (DIW) →
Tipo primitivo
Tipo de dato básico de Java que guarda directamente el valor (int, long, double, boolean, char…), a diferencia de los objetos, que se manejan por referencia. Introducción a Java (Programación) →
Transacción
Conjunto de operaciones que se ejecutan todas o ninguna (atomicidad), confirmadas con COMMIT o deshechas con ROLLBACK. Modificación de Datos en SQL (BBDD) →
try-with-resources
Forma de try que cierra automáticamente los recursos declarados (ficheros, conexiones) aunque se produzca una excepción. Ficheros y Streams (Programación) →

U

UDP
Protocolo de transporte sin conexión, ligero, que no garantiza la entrega ni el orden. Sockets en Java (Servicios) →
UML
Lenguaje unificado de modelado: notación estándar de diagramas para describir la estructura y el comportamiento del software. Diagramas UML (Entornos) →
Usabilidad
Facilidad con la que un usuario aprende a usar una aplicación y consigue sus objetivos con eficacia y satisfacción. Usabilidad y Accesibilidad (Interfaces) →
UX
Experiencia de usuario: todo lo que siente y percibe una persona al usar un producto. Planificación y Diseño Visual (DIW) →

V

Valores límite
Técnica de prueba que comprueba los valores justo en las fronteras de cada clase de equivalencia y justo fuera de ellas. Diseño y realización de pruebas (Entornos) →
Variable
Espacio de memoria con un nombre y un tipo que guarda un valor que puede cambiar durante la ejecución. Introducción a Java (Programación) →
ViewModel
Clase de Android que guarda el estado de la interfaz y sobrevive a cambios de configuración como girar la pantalla. Desarrollo de Aplicaciones Móviles (Multimedia) →
Vista
Consulta guardada con nombre que se usa como si fuera una tabla. SQL: Definición de Datos (DDL) (BBDD) →
VLAN
Red local virtual: separa lógicamente el tráfico de distintos grupos de equipos en la misma infraestructura física. Configuración de Redes TCP/IP (Sistemas) →

W

WCAG
Pautas de accesibilidad para el contenido web del W3C, con niveles A, AA y AAA. Accesibilidad Web (DIW) →
Webhook
Petición HTTP que un servicio envía automáticamente a una URL tuya cuando ocurre un evento, como un pago completado. Aplicaciones Dinámicas e Híbridas (DWES) →
Wireframe
Boceto esquemático de una pantalla que muestra la distribución del contenido sin detalles visuales. Planificación y Diseño Visual (DIW) →

X

XML bien formado
Documento XML que cumple las reglas de sintaxis: un único elemento raíz, etiquetas cerradas y bien anidadas, atributos entre comillas. Fundamentos de Lenguajes de Marcas (Marcas) →
XML Schema (XSD)
Lenguaje para validar documentos XML con tipos de datos, restricciones, claves y referencias. Validación de XML: DTD y XML Schema (Marcas) →
XPath
Lenguaje para seleccionar nodos de un documento XML mediante rutas y predicados. XPath y XSLT (Marcas) →
XQuery
Lenguaje de consulta para colecciones de documentos XML, con expresiones FLWOR (for, let, where, order by, return). Almacenamiento de XML y XQuery (Marcas) →
XSLT
Lenguaje de transformación que convierte documentos XML en otros documentos (HTML, texto, otro XML) mediante plantillas. XPath y XSLT (Marcas) →
XSS
Cross-site scripting: ataque que inyecta código JavaScript en una página; se evita escapando la salida. Formularios, Sesiones y Seguridad (DWES) →