Glosario de ciencias de la computación - Enciclopedia

Este glosario de ciencias de la computación es una lista de definiciones de términos y conceptos utilizados en las ciencias de la computación, sus subramas y campos relacionados, incluyendo términos relevantes para el software, la ciencia de datos y la programación informática.


A

tipo de datos abstracto (ADT)
Un modelo matemático para tipos de datos en el que un tipo de datos se define por su comportamiento (semántica) desde el punto de vista de un usuario del datos, específicamente en términos de valores posibles, operaciones posibles sobre datos de este tipo y el comportamiento de estas operaciones. Esto contrasta con las estructuras de datos, que son representaciones concretas de datos desde el punto de vista de un implementador en lugar de un usuario.

método abstracto
Uno que solo tiene una firma y sin cuerpo de implementación. Se utiliza a menudo para especificar que una subclase debe proporcionar una implementación del método. Los métodos abstractos se utilizan para especificar interfaces en algunos lenguajes de programación.

abstracción
1. En la ingeniería de software y las ciencias de la computación, el proceso de eliminar detalles físicos, espaciales o temporales o atributos en el estudio de objetos o sistemas con el fin de prestar una atención más cercana a otros detalles de interés; también es muy similar en naturaleza al proceso de generalización.
2. El resultado de este proceso: un concepto-objeto abstracto creado manteniendo características o atributos comunes a varios objetos o sistemas de estudio.

arquitectura de agente
Un plano para los agentes de software y los sistemas de control inteligente que depicta la disposición de los componentes. Las arquitecturas implementadas por los agentes inteligentes se denominan arquitecturas cognitivas.

modelo basado en agentes (ABM)
Una clase de modelos computacionales para simular las acciones e interacciones de agentes autónomos (entidades individuales o colectivas, como organizaciones o grupos) con el fin de evaluar sus efectos en el sistema en su conjunto. Combina elementos de la teoría de juegos, sistemas complejos, emergencia, sociología computacional, sistemas de múltiples agentes y programación evolutiva. Se utilizan métodos de Monte Carlo para introducir aleatoriedad.

función agregada
En la gestión de bases de datos, una función en la que se agrupan los valores de múltiples filas para formar un solo valor de significado o medición más importante, como una suma, un conteo o un máximo.

desarrollo de software ágil
Un enfoque de desarrollo de software en el que los requisitos y las soluciones evolucionan a través del esfuerzo colaborativo de equipos autoorganizados y multifuncionales y sus clientes / usuarios finales. Defiende la planificación adaptativa, el desarrollo evolutivo, la entrega temprana y la mejora continua, y fomenta una respuesta rápida y flexible a los cambios.

algoritmo
Una especificación inequívoca de cómo resolver una clase de problemas. Los algoritmos pueden realizar tareas de cálculo, procesamiento de datos y razonamiento automatizado. Son omnipresentes en las tecnologías de la información.

diseño de algoritmos
Un método o proceso matemático para la resolución de problemas y la ingeniería de algoritmos. El diseño de algoritmos es parte de muchas teorías de solución de la investigación operativa, como la programación dinámica y la división y conquista. Las técnicas para diseñar e implementar diseños de algoritmos también se denominan patrones de diseño de algoritmos, como el patrón de método de plantilla y el patrón de decorador.

eficiencia algorítmica
Una propiedad de un algoritmo que se relaciona con el número de recursos computacionales utilizados por el algoritmo. Se debe analizar un algoritmo para determinar su uso de recursos, y la eficiencia de un algoritmo se puede medir basándose en el uso de diferentes recursos. La eficiencia algorítmica se puede considerar como análoga a la productividad de ingeniería para un proceso repetitivo o continuo.

código de intercambio de información americano (ASCII)
Un estándar de codificación de caracteres para comunicaciones electrónicas. Los códigos ASCII representan texto en computadoras, equipos de telecomunicaciones y otros dispositivos. La mayoría de los esquemas de codificación de caracteres modernos se basan en el ASCII, aunque admiten muchos caracteres adicionales.

interfaz de programación de aplicaciones (API)
Un conjunto de definiciones de subrutinas, protocolos de comunicación y herramientas para la construcción de software. En términos generales, es un conjunto de métodos de comunicación claramente definidos entre varios componentes. Una buena API