Abstracción

Definición - ¿Qué significa abstracción?

La abstracción es un principio fundamental en algunos tipos de informática. Es un aspecto clave del diseño de los lenguajes de programación orientados a objetos y las interfaces de programación de aplicaciones. También es una de las ideas menos comprendidas en programación, en parte por razones semánticas.

La abstracción se define comúnmente como la extracción de información relevante de un conjunto de datos más grande, donde la utilización de la abstracción permite a los ingenieros y otros simplificar una base de código.

Techinfo explica la abstracción

La razón por la que esto es confuso para muchas personas es que la abstracción no "suena" como lo que es, semánticamente. Suena como hacer algo más vago, porque así es como lo usamos en el lenguaje general.

Sin embargo, en ciencias de la computación, la abstracción generalmente significa simplificar y separar la señal del ruido para hacer la programación más eficiente y efectiva.

Programación orientada a objetos

Código

En uno de los ejemplos más destacados de abstracción informática, en la programación orientada a objetos, la abstracción a menudo funciona mediante el uso de objetos en código. Estos objetos, como contenedores portátiles de atributos y estructuras de código repetibles, abstraen la funcionalidad que de otro modo podría programarse de forma lineal.

En otras palabras, el vehículo para la abstracción son los objetos en el código, que toman un montón de código subyacente y lo hacen portátil y repetible.

Clase

Otro transportador de abstracción en la programación orientada a objetos es la clase. Las clases de objetos estratifican aún más el principio de uso repetible y proliferación de código automatizado.

Por ejemplo, en esta guía fácil de usar para los que no son expertos en tecnología en Stackify, el escritor habla sobre cómo una cafetera es un buen ejemplo de cómo la programación orientada a objetos usa la abstracción para eliminar gran parte del trabajo intensivo de la hombros del programador.

En lugar de crear un objeto virtual como una cafetera desde cero, programando cada línea de su funcionalidad a mano, los ingenieros pueden invocar el objeto "cafetera" y conectar "granos" y "tazas de café", etc., para obtener el mismo resultado con mucho menos trabajo.

De hecho, la abstracción que opera en la programación orientada a objetos es una forma excelente de mostrar cuán poderosamente estas ideas apoyan los "mundos" virtuales: cuando los programadores pueden hacer girar todo tipo de objetos virtuales con sus propios atributos, pueden modelar de manera más efectiva el mundo real, el mundo físico y, al mismo tiempo, optimizar la efectividad de la hora de trabajo de un programador.

Ambas son capacidades emocionantes que OOP trajo al mundo de la tecnología.

Interfaz de programación de aplicaciones

Otro excelente ejemplo moderno de abstracción se ilustra en la interfaz de programación de aplicaciones (API), que es tan frecuente en los sistemas multiplataforma.

La API es una forma clave de proporcionar esa información de abstracción para que los terceros externos no necesiten saber tanto sobre una base de código inherente. En un sentido muy simple, las API son "conectores": las partes utilizarán la API para conectar el código de una aplicación al código de otra aplicación, para enviar conjuntos de datos a través de un entorno multiplataforma y permitir que estos programas colaboren de manera automatizada.

La API, entonces, funciona como el vehículo clave de abstracción al incorporar esos principios orientados a objetos que muestran al "programa externo" lo que está haciendo el "programa interno".

Para concluir, la abstracción es simplemente el proceso de hacer que la información de la base de código sea más versátil al simplificar cómo se representa en sistemas externos. Sin embargo, eso ha llevado a avances tecnológicos masivos que preceden a otros tipos de cambios centrales, como el movimiento hacia la virtualización de redes.

Esta definición fue escrita en el contexto de la informática.