Über Abstraktionen wird in der Softwareentwicklung ja immer wieder geredet. Da soll von Details abstrahiert werden (Kapselung), es gibt abstrakte Klassen und man soll sich nicht von Konkretem, sondern von Abstraktem abhängig machen (DIP).
Klingt alles irgendwie sinnig - scheint mir jedoch am Ende doch nicht klar zu sein. Ich finde die Verwendung des Begriffs "Abstraktion" oft sehr pauschal und lückenhaft.
Mit zwei Artikeln versuche ich deshalb, das Dickicht zu lichten. Abstraktion ist nämlich nicht gleich Abstraktion.
* https://ralfw.de/2018/03/bequeme-abstraktion-ganz-konkret/ - eine Begriffsdifferenzierung
* https://ralfw.de/2018/04/all-together-now-schrittweise-abstrahieren/ - die schrittweise Nutzung von differenzierter Abstraktionen am Beispiel
Enjoy and discuss! :-)
-Ralf
http://ccd-school.de - Clean Code Development Training inhouse und online