Portada de On the Role of Abstraction in Program Development

On the Role of Abstraction in Program Development

por Ole-Johan Dahl · 1972

Ver sugerencias

Sinopsis

Un paper fundamental que discute la importancia de la abstracción como herramienta central para el desarrollo de software, explorando cómo la abstracción de datos y de control facilita la construcción de sistemas complejos.

Más de Ole-Johan Dahl

Ver autor →

Otras obras del mismo autor en el catálogo

Libros similares

Libros relacionados según distintos criterios de búsqueda

La metáfora y la metonimia en Saussure

Gilles Deleuze

1968·filosofia

Aunque no es un texto de informática, Deleuze explora la abstracción desde una perspectiva lingüística y filosófica, la forma en que los sistemas de pensamiento construyen jerarquías y similitudes, de manera análoga a cómo la informática utiliza la abstracción para modelar problemas complejos. La conexión radica en la comprensión de cómo los sistemas se estructuran a través de mecanismos conceptuales de reducción y representación en diferentes dominios.

Gödel, Escher, Bach: Un Eterno y Grácil Bucle

Douglas Hofstadter

1979·divulgacion

Este libro explora la recursividad, la auto-referencia y los sistemas formales desde múltiples ángulos artísticos y científicos. La abstracción en el desarrollo de programas es intrínsecamente recursiva y se basa en la capacidad de definir sistemas en términos de sí mismos, un concepto central en el libro de Hofstadter. La conexión se establece a través de los principios subyacentes de la construcción y comprensión de sistemas complejos mediante la abstracción.

Dijkstra es un pilar fundamental en la computación, y su trabajo en programación estructurada y verificación de programas complementa directamente la idea de abstracción. Propone que un buen diseño de programa es aquel que reduce la complejidad mental del programador, utilizando la abstracción como una herramienta para simplificar y razonar sobre el código, lo cual es el objetivo último de la abstracción en Dahl.

La noción de paradigma de Kuhn resuena con la forma en que los modelos de abstracción en programación actúan como marcos que guían el desarrollo de sistemas. Un cambio en la forma de abstraer un problema (por ejemplo, de la programación imperativa a la orientada a objetos) puede verse como un cambio de paradigma en la ingeniería de software, fundamentalmente alterando cómo se conceptualiza y se construye el software. La conexión se da en cómo los marcos mentales guían la construcción de sistemas, tanto científicos como computacionales.

Ole-Johan Dahl trabajó en la conceptualización de cómo se estructuran los programas. Georg Klaus, un filósofo de la antigua Alemania del Este, aborda la 'forma' en la informática desde una perspectiva ontológica y epistemológica, lo que ofrece una mirada académica profunda y menos conocida a la abstracción: cómo las estructuras de los programas reflejan o imponen una forma al pensamiento y la realidad que modelan. Su trabajo es una joya oculta de la filosofía de la computación.

La abstracción en el desarrollo de programas es, en esencia, la creación de modelos de sistemas. Bunge, un prolífico filósofo argentino, proporciona un marco profundo y sistemático para entender 'qué es un sistema' y cómo interactúan sus componentes, que es fundamental para cualquier persona que trabaje con abstracciones computacionales. Su tratamiento es exhaustivo y fundacional, pero raramente citado en contextos de ciencia de la computación anglosajona, lo que lo hace una conexión 'oscura' pero relevante.

Wirth es contemporáneo y comparte el mismo clima intelectual que Dahl. Su ensayo no solo aborda el mismo tema de la abstracción, sino que lo hace con un enfoque metodológico y estructurado muy similar, proporcionando técnicas concretas para aplicar la abstracción y la modularización en el diseño de programas, lo que refleja el 'cómo hacer' que complementa el 'por qué' de Dahl.

La construcción de un compilador

Alfred V. Aho

1977·divulgacion

La construcción de un compilador es el epítome de la aplicación práctica de la abstracción en la informática. Este libro estructuralmente desglosa un problema complejo (traducir un lenguaje de alto nivel a código máquina) en una serie de etapas bien definidas y abstractas (análisis léxico, sintáctico, semántico, generación de código). Esto se alinea con la idea de Dahl de usar la abstracción para gestionar la complejidad y estructurar un problema, mostrando cómo la abstracción facilita la construcción de sistemas de software complejos y autocontenidos.

Ayúdame a que yoleo sea sostenible