Abstraction (computer science)

– John V. Guttag

In software engineering and computer science, abstraction is:

Abstraction, in general, is a fundamental concept to computer science and software development. The process of abstraction can also be referred to as modeling and is closely related to the concepts of theory and design. Models can also be considered types of abstractions per their generalization of aspects of reality.

Abstraction in computer science is also closely related to abstraction in mathematics due to their common focus on building abstractions as objects, but is also related to other notions of abstraction used in other fields such as art.

Abstractions may also refer to vehicles, features, or rules of computational systems or programming languages that carry or utilize features of or abstraction itself, such as:

Computing mostly operates independently of the concrete world: The hardware implements a model of computation that is interchangeable with others. The software is structured in architectures to enable humans to create the enormous systems by concentrating on a few issues at a time. These architectures are made of specific choices of abstractions. Greenspun's Tenth Rule is an aphorism on how such an architecture is both inevitable and complex.

This page was last edited on 15 June 2018, at 23:57 (UTC).
Reference: https://en.wikipedia.org/wiki/Abstraction_(computer_science) under CC BY-SA license.

Related Topics

Recently Viewed