Algoritmo: Un conjunto finito y ordenado de instrucciones que resuelven un problema o logran una tarea específica.
Sintaxis (Syntax): Las reglas que definen cómo deben combinarse los símbolos de un lenguaje de programación para que sean válidos.
Variable: Un contenedor con nombre que almacena un valor que puede cambiar durante la ejecución del programa.
Función / Método: Un bloque de código reusable que realiza una tarea específica; se le puede llamar por su nombre.
Compilador: Programa que traduce el código fuente escrito por humanos a código máquina ejecutable.
Intérprete: Programa que ejecuta el código fuente línea por línea sin traducirlo previamente por completo.
Framework: Un esqueleto o estructura de soporte con herramientas y librerías predefinidas para desarrollar aplicaciones de manera más rápida.
Librería (Library): Una colección de funciones y rutinas preescritas que se pueden reutilizar en el código.
Repositorio (Repository / Repo): El directorio o lugar central donde se almacenan y gestionan todos los archivos del proyecto y su historial.
Commit: Una "captura" o punto de guardado de los cambios realizados en el código.
Branch (Rama): Una línea de desarrollo independiente dentro del repositorio para trabajar en nuevas funciones sin afectar el código principal.
Merge: La acción de combinar los cambios de una Branch (rama) de vuelta a la rama principal (ej. main o develop).
Pull Request (PR) / Merge Request (MR): Una solicitud formal para revisar los cambios hechos en una rama y fusionarlos con otra.
Clonar (Clone): Copiar un repositorio remoto a tu máquina local.
Bug: Un error o defecto en el código que hace que el programa funcione de manera incorrecta o inesperada.
Debugging: El proceso de encontrar, analizar y corregir los bugs en el código.
Refactorización (Refactoring): Reestructurar el código existente sin cambiar su comportamiento externo para mejorar su calidad y legibilidad.
Pruebas Unitarias (Unit Tests): Código que verifica que pequeñas partes de la aplicación (funciones, clases) funcionan de forma aislada y correcta.
Ambiente de Producción (Production Environment): El sistema real donde el software es utilizado por los usuarios finales.
Despliegue (Deployment): El proceso de mover la aplicación terminada desde el ambiente de desarrollo al ambiente de producción.
Agile: Un conjunto de metodologías (como Scrum) para el desarrollo de software que enfatizan la entrega continua y la adaptación al cambio.
Sprint: Un periodo de tiempo fijo (generalmente 1 a 4 semanas) en Scrum durante el cual se realiza un conjunto de trabajo.
Ticket / Ítem de Trabajo: Un registro formal en un sistema de gestión (como Jira) que representa un Bug, una Tarea o una Historia de Usuario pendiente.
Historia de Usuario (User Story): Una descripción de una funcionalidad desde la perspectiva del usuario.
Backlog: La lista priorizada de todas las funcionalidades, tareas, bugs y mejoras pendientes para el producto.
Estructura de Datos: Una forma particular de organizar los datos en una computadora para que puedan ser usados de manera eficiente (ej. Array, Lista, Hashmap).
Clase: Una plantilla o molde para crear objetos, especificando sus propiedades (atributos) y comportamientos (métodos).
Objeto: Una instancia de una Clase, que contiene datos y métodos que operan sobre esos datos.
Herencia (Inheritance): Un mecanismo por el cual una clase (subclase) hereda propiedades y métodos de otra clase (superclase).
API (Interfaz de Programación de Aplicaciones): Un conjunto de reglas que definen cómo dos piezas de software deben interactuar entre sí.