Abstracción - Ocultar detalles de implementación, mostrar solo lo esencial

Acoplamiento - Grado de dependencia entre módulos (bajo acoplamiento es mejor)

Agregación - Relación “tiene-un” donde las partes pueden existir independientemente

Asociación - Relación entre clases donde una usa a la otra

Clase - Plantilla que define propiedades y comportamientos de objetos

Cohesión - Grado en que elementos de un módulo trabajan juntos (alta cohesión es mejor)

Command - Operación que modifica el estado del sistema

Composición - Relación “parte-de” donde las partes no existen sin el todo

Controlador - Componente que maneja requests HTTP y coordina respuestas

Dependencia - Relación donde una clase usa temporalmente a otra

DTO - Objeto que transporta datos entre procesos

Encapsulación - Agrupar datos y métodos, ocultando detalles internos

Entidad - Objeto con identidad única que persiste en el tiempo

Herencia - Clase hija adquiere propiedades de clase padre (relación “es-un”)

Instancia - Objeto específico creado a partir de una clase

Mock - Objeto simulado para testing

Objeto - Instancia de una clase con estado y comportamiento

Polimorfismo - Objetos de diferentes tipos responden a la misma interfaz

Query - Operación que lee datos sin modificar el estado

Refactoring - Reestructurar código sin cambiar comportamiento

Repositorio - Patrón que encapsula acceso a datos como colección en memoria