Abstraction

An abstraction represents the key characteristics of something without its concrete realities.


There's no doubt that abstractional thinking is the hallmark of science and greatness, not to mention language, social values and even hype. Indeed all thought consists of abstractions, because none of it is real. Surprise - we are all abstractionists. :-)

When you can describe an idea with many words and waving of the hands, you have an abstraction. When you can use a phrase or single word, you have an easily communicated abstraction. The latter is far more valuable.

Choose your abstraction identifiers with extreme care.

Abstractions can be captured in more than words. In Software Engineering the best example of an abstraction is a class. Of course, it better be a "good" class. :-)

Why are abstractions so important? That's sweet and simple. One abstraction can point to or represent many concrete realities.

For example the outstanding example of a software abstraction is a class. A class exploits the concept of abstraction to the hilt by representing one or more concrete realities, each of which is an instance.

Use abstractions to more efficiently manage your concrete realities.