Abstracción (informática)


La esencia de la abstracción es preservar la información que es relevante en un contexto dado y olvidar la información que es irrelevante en ese contexto.

La abstracción, en general , es un concepto fundamental en la informática y el desarrollo de software . [4] El proceso de abstracción también puede denominarse modelado y está estrechamente relacionado con los conceptos de teoría y diseño . [5] Los modelos también pueden considerarse tipos de abstracciones por su generalización de aspectos de la realidad .

La abstracción en informática está estrechamente relacionada con la abstracción en matemáticas debido a su enfoque común en la construcción de abstracciones como objetos, [2] pero también está relacionada con otras nociones de abstracción utilizadas en otros campos como el arte . [3]

Las abstracciones también pueden referirse a objetos y sistemas del mundo real, reglas de sistemas computacionales o reglas de lenguajes de programación que llevan o utilizan características de abstracción en sí, tales como:

La informática opera principalmente de forma independiente del mundo concreto. El hardware implementa un modelo de computación que es intercambiable con otros. [ cita requerida ] El software está estructurado en arquitecturas para permitir a los humanos crear sistemas enormes concentrándose en unos pocos problemas a la vez. Estas arquitecturas están hechas de elecciones específicas de abstracciones. La décima regla de Greenspun es un aforismo sobre cómo tal arquitectura es inevitable y compleja.

Una forma central de abstracción en informática es la abstracción del lenguaje: se desarrollan nuevos lenguajes artificiales para expresar aspectos específicos de un sistema. Los lenguajes de modelado ayudan en la planificación. Los lenguajes de computadora se pueden procesar con una computadora. Un ejemplo de este proceso de abstracción es el desarrollo generacional de lenguajes de programación desde el lenguaje máquina hasta el lenguaje ensamblador y el lenguaje de alto nivel . Cada etapa se puede utilizar como trampolín para la siguiente etapa. La abstracción del lenguaje continúa, por ejemplo, en lenguajes de scripting y lenguajes de programación específicos de dominio .


Niveles de abstracción de datos de un sistema de base de datos