Aquí tienes una lista extendida y bien estructurada con 100 términos clave que abarcan todo el ciclo de vida del software, la gestión de proyectos, la infraestructura y las metodologías de desarrollo
Está pensada para que manejes el lenguaje técnico con total soltura tanto con desarrolladores como con clientes o entrevistadores.
1. Fundamentos de Programación y Paradigmas
Código fuente (Source Code): El conjunto de instrucciones escritas en un lenguaje de programación entendible por humanos.
Sintaxis: El conjunto de reglas gramaticales que definen cómo se debe escribir el código en un lenguaje determinado.
Variable: Un espacio reservado en memoria para almacenar un dato que puede cambiar durante la ejecución.
Constante: Un valor asignado que no cambia a lo largo de la ejecución del programa.
Algoritmo: Una secuencia finita y ordenada de pasos lógicos para resolver un problema o realizar una tarea.
Función / Método: Un bloque de código reutilizable diseñado para realizar una tarea específica.
Parámetro / Argumento: Valores que se le pasan a una función para que procese su lógica.
POO (Programación Orientada a Objetos): Paradigma basado en "objetos" que contienen datos (atributos) y código (métodos).
Clase: La plantilla o molde a partir del cual se crean los objetos en POO.
Instancia: El objeto concreto creado a partir de una clase.
Herencia: Capacidad de una clase de derivar propiedades y comportamientos de otra clase padre.
Polimorfismo: Capacidad de diferentes clases de responder al mismo mensaje o método de formas distintas.
Encapsulamiento: Ocultar los detalles internos de un objeto y exponer solo lo necesario hacia afuera.
Asincronía (Async/Await): Ejecución de tareas en segundo plano sin bloquear el flujo principal de la aplicación.
Callback: Función que se pasa como argumento a otra función para ser ejecutada cuando finalice una tarea.
Promesa (Promise): Un objeto que representa el resultado futuro de una operación asíncrona (éxito o fallo).
Recursividad: Una función que se llama a sí misma para resolver un problema dividiéndolo en casos más pequeños.
Compilador: Programa que traduce código fuente a lenguaje máquina antes de ejecutarlo.
Intérprete: Programa que lee y ejecuta el código línea por línea en tiempo real.
Librería (Library): Colección de código predefinido que el desarrollador llama cuando lo necesita.
Framework: Estructura o marco de trabajo que impone reglas sobre cómo organizar y construir la aplicación.
2. Desarrollo Frontend e Interfaz de Usuario
Frontend: La parte visible e interactiva de una aplicación web o móvil con la que interactúa el usuario.
UI (User Interface): Diseño visual de botones, pantallas, tipografías y elementos gráficos de la aplicación.
UX (User Experience): La experiencia, facilidad de uso y nivel de satisfacción del usuario al interactuar con el sistema.
Responsive Design: Diseño adaptativo que permite que una web se vea bien en celulares, tabletas y computadores.
DOM (Document Object Model): Representación en árbol de los elementos de una página web que el navegador procesa.
SPA (Single Page Application): Aplicación web que carga una sola página y actualiza el contenido dinámicamente sin recargar la pantalla.
SSR (Server-Side Rendering): Renderizado de la página web en el servidor antes de enviarla al navegador (mejora el SEO).
CSR (Client-Side Rendering): El navegador del usuario descarga el código JavaScript y construye la interfaz localmente.
Estado (State): Datos guardados en memoria que determinan cómo se debe ver y comportar la interfaz en un momento dado.
Componente: Pieza de interfaz independiente, modular y reutilizable (ej. un botón, un menú, un formulario).
CSS Grid / Flexbox: Herramientas de maquetación CSS para organizar elementos en filas y columnas de forma flexible.
Preprocesador CSS (ej. Sass): Herramienta que extiende CSS permitiendo variables, anidamiento y funciones avanzadas.
PWA (Progressive Web App): Aplicación web que ofrece una experiencia similar a una app nativa móvil (funciona offline, notificaciones push).
Hydration (Hidratación): Proceso en SSR donde el JavaScript se vincula al HTML estático enviado por el servidor para hacerlo interactivo.
3. Desarrollo Backend y APIs
Backend: La lógica del servidor, manejo de datos, seguridad y procesamiento detrás de escena.
API (Application Programming Interface): Interfaz que permite la comunicación entre dos sistemas o aplicaciones.
REST / RESTful: Estilo arquitectónico común para APIs web que utiliza métodos HTTP estándar.
Endpoint: La URL o ruta específica donde se realiza una petición a la API (ej. /api/v1/users).
Payload: Los datos útiles o cuerpo de la información enviada dentro de una petición HTTP.
Petición HTTP (Request): Mensaje enviado por el cliente al servidor solicitando un recurso o acción.
Respuesta HTTP (Response): Datos y estado que el servidor devuelve al cliente tras procesar la petición.
Códigos de Estado HTTP:
200 OK: Petición exitosa.
400 Bad Request: Error en los datos enviados por el cliente.
401 Unauthorized: No autenticado / requiere inicio de sesión.
403 Forbidden: No se tienen permisos para acceder a este recurso.
404 Not Found: El recurso solicitado no existe.
500 Internal Server Error: Ocurrió un fallo en el servidor.
GraphQL: Lenguaje de consultas para APIs que permite pedir exactamente los datos necesarios, ni más ni menos.
WebSocket: Protocolo de comunicación bidireccional en tiempo real entre cliente y servidor (ej. chats).
Middleware: Software intermedio que procesa o valida peticiones antes de llegar a la lógica final (ej. verificar un token).
Autenticación (Authn): Proceso de verificar la identidad de un usuario (¿quién eres?).
Autorización (Authz): Proceso de verificar qué permisos tiene un usuario (¿qué puedes hacer?).
JWT (JSON Web Token): Formato compacto y seguro para transmitir información autenticada entre partes.
OAuth: Protocolo estándar que permite autorizar el acceso seguro sin compartir credenciales (ej. "Iniciar sesión con Google").
Rate Limiting: Control que limita cuántas peticiones puede hacer un usuario en un período de tiempo para prevenir abusos.
CORS (Cross-Origin Resource Sharing): Mecanismo de seguridad del navegador que restringe las peticiones HTTP entre distintos dominios.
4. Bases de Datos y Gestión de Información
Base de Datos Relacional (SQL): Almacenamiento estructurado en tablas con filas y columnas vinculadas por claves (ej. PostgreSQL, MySQL).
Base de Datos No Relacional (NoSQL): Almacenamiento flexible sin esquemas rígidos, basado en documentos, grafos o clave-valor (ej. MongoDB, Redis).
ORM (Object-Relational Mapping): Herramienta que mapea las tablas de la BD a objetos del código.
Migración: Script que registra y ejecuta cambios en la estructura de la base de datos de manera controlada.
Índice: Estructura en la BD que acelera drásticamente las búsquedas de información a costa de espacio extra.
Query (Consulta): Solicitud formal de lectura, inserción, actualización o borrado de datos.
CRUD: Acrónimo de las 4 operaciones básicas en datos: Create, Read, Update, Delete.
Transacción (ACID): Grupo de operaciones en la BD que se ejecutan como un solo bloque: o se cumplen todas o ninguna se guarda.
Cache / Caching: Almacenamiento de datos temporales en memoria ultrarrápida (como Redis) para evitar consultas repetitivas a la BD.
5. Arquitectura, Infraestructura y Nube
Monolito: Arquitectura donde toda la lógica, la interfaz y el servidor están integrados en un solo proyecto de código.
Microservicios: Arquitectura donde la aplicación se divide en pequeños servicios independientes comunicados por red.
Serverless: Modelo de nube donde el proveedor gestiona los servidores dinámicamente y solo se paga por el tiempo de ejecución del código.
Docker: Plataforma de contenedorización para empaquetar aplicaciones con sus dependencias exactas.
Contenedor: Entorno aislado y liviano donde corre una aplicación sin importar el sistema operativo anfitrión.
Kubernetes (K8s): Sistema de orquestación para automatizar el despliegue, escalado y gestión de contenedores.
Servidor Web (ej. Nginx, Apache): Software que escucha peticiones HTTP entrantes y entrega sitios web o enruta tráfico a las APIs.
Proxy Inverso: Servidor intermedio que recibe tráfico externo y lo distribuye eficientemente entre servidores internos.
Balanceador de Cargas (Load Balancer): Dispositivo o software que distribuye el tráfico entre varios servidores para evitar colapsos.
DNS (Domain Name System): Sistema que traduce nombres de dominio entendibles (empresa.com) en direcciones IP (192.0.2.1).
Escalabilidad Horizontal: Añadir más máquinas o servidores al sistema para soportar mayor carga.
Escalabilidad Vertical: Añadir más potencia (CPU, RAM) a una misma máquina existente.
Entornos (Environments):
Local: La computadora del desarrollador.
Staging / QA: Servidor idéntico a producción donde se realizan pruebas internas.
Producción (Prod): El entorno en vivo donde interactúan los usuarios finales.
6. DevOps, Git y Metodologías de Trabajo
Git: Sistema distribuido de control de versiones de código.
Repositorio (Repo): Espacio digital donde se guarda todo el código, archivos e historial de cambios de un proyecto.
Rama (Branch): Línea independiente de desarrollo dentro de Git para trabajar en funciones sin alterar la rama principal (main / master).
Merge: Acción de fusionar los cambios de una rama secundaria a la rama principal.
Pull Request (PR) / Merge Request: Propuesta de cambios en el código enviada para ser revisada antes de integrarla al proyecto.
Conflict (Conflicto de Git): Ocurre cuando dos desarrolladores modifican las mismas líneas de un archivo y Git requiere resolución manual.
CI/CD (Continuous Integration / Continuous Deployment): Automatización del proceso de pruebas, compilación y despliegue del software.
Despliegue (Deploy): El acto de publicar una versión del código en un servidor para que sea accesible por los usuarios.
Rollback: Restaurar la aplicación a una versión anterior estable después de que un despliegue falle.
Refactorización: Reescribir código existente para hacerlo más limpio y eficiente sin cambiar lo que hace externamente.
Deuda Técnica (Technical Debt): El costo acumulado de elegir soluciones rápidas e imperfectas hoy, lo que dificulta el desarrollo futuro.
Agile (Agilidad): Filosofía de desarrollo basada en iteraciones rápidas, adaptación al cambio y colaboraciones constantes.
Scrum: Marco de trabajo ágil basado en entregas periódicas organizadas por ciclos fijos.
Sprint: Periodo de tiempo fijo (usualmente 1 a 4 semanas) en el que el equipo completa un bloque de trabajo acordado.
Backlog: Lista priorizada de tareas, mejoras o errores pendientes de desarrollo en un proyecto.
Kamban: Sistema visual de gestión de trabajo organizado en columnas de estado (ej. Por hacer, En progreso, Completado).
7. Pruebas, Calidad y Seguridad
Bug: Error, fallo o defecto en el software que produce un resultado inesperado.
Unit Test (Prueba Unitaria): Evaluación que verifica el correcto funcionamiento de un bloque pequeño e aislado de código (ej. una función).
Integration Test (Prueba de Integración): Evaluación que verifica que varios módulos o servicios funcionen correctamente al trabajar juntos.
E2E Test (End-to-End): Prueba que simula el flujo completo de un usuario real en la aplicación, desde la interfaz hasta la BD.
QA (Quality Assurance): Área o procesos enfocados en asegurar que el producto cumpla con los estándares de calidad antes de salir a la luz.
Inyección SQL: Vulnerabilidad de seguridad donde un atacante inserta código SQL malicioso en un formulario para manipular la BD.
XSS (Cross-Site Scripting): Vulnerabilidad que permite a un atacante inyectar código JavaScript malicioso en las páginas que ven otros usuarios.
Webhooks: Mecanismo de notificaciones en tiempo real donde un sistema envía datos a otro vía HTTP tan pronto ocurre un evento.
SDK (Software Development Kit): Conjunto de herramientas, documentación y librerías facilitadas para construir apps en una plataforma específica.
Logs / Logging: Registros detallados guardados en texto sobre los eventos, errores o actividad que ocurren en el servidor en tiempo real.