Rechtliche Nachrichten Token-Verkäufe (ICO)

Die wahre Geschichte der Objektorientierung: Alan Kay hat die Objekte nicht erfunden

Rechtliche Nachrichten Token-Verkäufe (ICO)
Alan Kay Did Not Invent Objects (2019)

Ein tiefgehender Einblick in die Ursprünge der objektorientierten Programmierung und die Rolle von Alan Kay dabei. Die Entwicklung von Objekten, Klassen und Nachrichten sowie die unterschiedlichen Ansätze von Simula und Smalltalk werden beleuchtet, um Missverständnisse zu klären und den tatsächlichen Beitrag Kay's einzuordnen.

Die objektorientierte Programmierung (OOP) ist heutzutage eine der wichtigsten Paradigmen in der Softwareentwicklung und prägt zahlreiche moderne Programmiersprachen wie Java, C++, Python oder C#. Oft wird Alan Kay als der alleinige Erfinder des objektorientierten Konzepts dargestellt, insbesondere der sogenannten „Objekte“. Diese Sicht ist jedoch nicht korrekt und verkennt die vielschichtige Geschichte und Entwicklung der OOP. Tatsächlich stammen viele Grundideen, besonders das Konzept der Objekte, aus der Programmiersprache Simula, welche in den 1960er Jahren von Ole-Johan Dahl und Kristen Nygaard entwickelt wurde. Kay selbst hat in späteren Jahren eingeräumt, dass er nicht die Objekte erfunden hat, sondern eher den Begriff „Object-Oriented Programming“ geprägt hat.

Dieses Missverständnis hat sich bis heute hartnäckig in der Fachwelt, vor allem in der Entwickler-Community, gehalten. Es lohnt sich daher, genau hinzuschauen, wie OOP entstanden ist, welche Rolle Alan Kay wirklich spielte und wie seine Vision von OOP sich von der ursprünglichen Ausprägung bei Simula unterschied. Simula wurde in den 1960er Jahren hauptsächlich für Simulationsaufgaben entworfen. Hier ging es darum, komplexe Systeme und ihr Verhalten über die Zeit hinweg zu modellieren – beispielsweise die Ausbreitung einer Infektion in einer Population. Die Kernideen von Simula beinhalteten Klassen zur Strukturierung von Daten und Verhalten sowie Objekte als Instanzen dieser Klassen.

Nachrichten oder Kommunikationsmechanismen waren zwar vorhanden, standen jedoch eher im Dienste der Objekte, deren Verhalten und Interaktionen modelliert werden sollten. Simula definierte somit ein geschlossenes System mit einem festen Satz an Code, der ausgeführt wird, um die Simulationsergebnisse zu erhalten. Die Nachrichtenübermittlung im Sinne von flexibler Kommunikationssteuerung spielte eine untergeordnete Rolle im Vergleich zu anderen Aspekten der Sprache. Im Gegensatz dazu war Alan Kay geprägt von einer ganz anderen Vision und einem anderen Zusammenhang. Kay war ein Pionier in der Entwicklung des personalen Computers und hatte die Vorstellung, dass der Nutzer der Computerwelt unmittelbar – interaktiv und explorativ – begegnen sollte.

Seine Arbeit am Dynabook-Konzept und der darauf fußenden Programmiersprache Smalltalk spiegeln diese Überzeugung wider. In Smalltalk wurde das Ziel verfolgt, eine kohärente und vollständig objektorientierte Umgebung zu schaffen, in der jede Einheit, ob Zahlen, Klassen, Methoden oder Nachrichten, als Objekt behandelt wird. Dies bedeutete, dass es in Smalltalk keine primitiven Datentypen gab, die außerhalb des Objektmodells standen, was damals revolutionär war. Ein zentrales Element in Smalltalk war zudem das Messaging-System. Nachrichten waren das Mittel der Kommunikation zwischen Objekten und sollten nicht nur zur Methodeausführung dienen, sondern auch flexible Reaktionen ermöglichen – ähnlich wie eine Art System von Event-Handling.

Kleinere Unterschiede bei der Methode, die eine Nachricht nicht verstand, führten beispielsweise nicht unmittelbar zu einem Programmabbruch, sondern erlaubten das Senden einer speziellen Nachricht „doesNotUnderstand“, die wiederum je nach Objekt unterschiedlich behandelt werden konnte. Diese Form der Extensibilität und Laufzeit-Anpassbarkeit war eine wichtige Neuerung. Alan Kay prägte den Begriff „Object-Oriented Programming“ und betonte später immer wieder, dass OOP für ihn mehr um Messaging geht als um die Klassenhierarchien oder die Objekte selbst. In einem Interview und in einem Blogpost aus den späten 1990er Jahren rückte er die Bedeutung der Nachrichtenkommunikation hervor, welche er als das „große Thema“ hinter OOP ansah. Objekte, so erklärte er, seien nur eine Komponente oder sogar ein Nebenaspekt davon.

Trotz dieser Klarstellung wurde und wird oft seiner Aussage falsch oder einseitig zitiert, wodurch die Legende entstand, er habe die Objekte allein erfunden. Die Geschichte zeigt hingegen, dass OOP stets ein Zusammenspiel verschiedener Ideen gewesen ist. Während Simula den Fokus auf die Strukturierung und Modellierung von Klassen und Objekten für geschlossene Systeme legte, arbeitete Smalltalk mit einem radikaleren Ansatz, der das gesamte System als Ansammlung von Objekten und Nachrichten verstand. Die Verschmelzung dieser beiden Ansätze führte zu dem, was wir heute als moderne objektorientierte Programmierung kennen, die wiederum von vielen anderen Wissenschaftlern und Entwicklern wie Adele Goldberg, Barbara Liskov, David Parnas, Bertrand Meyer oder Gul Agha weiterentwickelt wurde. Dieses komplexe Zusammenspiel der Ideen deutet auch darauf hin, dass die Frage, wer die objektorientierte Programmierung “richtig” oder “wirklich” erfunden hat, nicht sinnvoll ist.

Jedes Projekt entstand aus einem spezifischen Kontext mit eigenen Herausforderungen und Visionen. Kay zum Beispiel wollte eine offene, flexible Personal-Computing-Umgebung schaffen, in der Nutzer Kontrolle haben und Programme sich dynamisch verhalten können. Dahls und Nygaards Arbeiten hingegen dienten angewandten Simulationen mit eindeutig definiertem Ablauf und Ergebnis. Beide nutzten Objekte und Nachrichten, aber mit ganz unterschiedlichen Zielsetzungen und Methoden. Bemerkenswert ist, dass Smalltalk verdientermaßen als die erste echte objektorientierte Programmiersprache anerkannt wird, da sie im Gegensatz zu Simula keinerlei primitive Datentypen neben den Objekten kennt und sämtliche Systemelemente als Objekte behandelt.

Die Fähigkeit, Nachrichten an beliebige Objekte zu senden und diese dynamisch zu behandeln, war ein großer Fortschritt, der bis heute Bestand hat und Beispiel für viele moderne Systeme gab – selbst wenn die Konzepte inzwischen weiterentwickelt wurden. Auch die technische Innovation von Smalltalk in Bezug auf das separates Messaging-System beeinflusst moderne Programmieransätze, die auf lose gekoppelte Komponenten und Dienste setzen. Man stelle sich vor, Nachrichten könnten an Objekte gesendet werden, die in unterschiedlichen Programmiersprachen geschrieben sind, oder dass Objekte ihre Definitionen per Post erhalten und somit dynamisch erweitert werden können. Solche Ideen sind noch heute aktueller denn je in Bezug auf verteilte Systeme, Microservices oder mobile Anwendungen. Ein weiterer spannender Aspekt ist die Entstehung des Begriffs „Object-Oriented Programming“ selbst.

Neuere Forschungen legen nahe, dass Kay möglicherweise nicht einmal der Erste war, der den Begriff verwendet hat. Bereits 1976 tauchten ähnliche Bezeichnungen wie „Object-Oriented Language“ bei Douglas Ross und Barbara Liskov auf, noch bevor Smalltalk weite Verbreitung fand. Somit handelt es sich bei der Namensgebung um eine gemeinsame Entwicklung verschiedener Wissenschaftler. Zusammenfassend zeigt sich, dass die Geschichte der objektorientierten Programmierung ein komplexer Verlauf der Innovation ist, geprägt von unterschiedlichen Perspektiven, Zielen und technischen Lösungen. Die Idee der Objekte wurde nicht von Alan Kay erfunden, sondern stammt mit Simula aus den 1960er Jahren.

Kay trug wesentlich zur Entwicklung des heutigen Verständnisses von OOP bei, insbesondere durch die Prägung des Begriffs und die Weiterentwicklung des Messaging-Systems in Smalltalk. Die objektorientierte Programmierung als solche ist das Ergebnis einer kollektiven Evolution, die von vielen klugen Köpfen über Jahrzehnte gestaltet wurde. Wer die Wurzeln von OOP heute verstehen möchte, sollte Kay nicht als alleinigen Erfinder der Objekte betrachten, sondern als eine der wichtigen Figuren, die das Konzept weitergedacht und verbreitet haben. Das Verstehen der Unterschiede zwischen Simula und Smalltalk liefert wertvolle Einblicke für jeden Entwickler und Software-Architekten. Es zeigt auch, dass das „richtige“ OOP nicht ohne die komplexe Geschichte und den jeweiligen Anwendungskontext verstanden werden kann.

Die Lehren daraus prägen bis heute die Softwareentwicklung und geben Impulse für neue Paradigmen und Innovationen.

Automatischer Handel mit Krypto-Geldbörsen Kaufen Sie Ihre Kryptowährung zum besten Preis

Als Nächstes
Data Engineering and Analytics Latest Trends
Mittwoch, 11. Juni 2025. Aktuelle Trends in Data Engineering und Analytics: Innovationen, Tools und Zukunftsperspektiven

Ein umfassender Überblick über die neuesten Entwicklungen im Bereich Data Engineering und Analytics, einschließlich innovativer Technologien, strategischer Akquisitionen und praktischer Anwendungsszenarien, die Unternehmen helfen, datengetriebene Entscheidungen effektiver zu treffen.

Minomize: Speeding up videos through sentiment analysis
Mittwoch, 11. Juni 2025. Minomize: Wie Sentiment-Analyse die Videobeschleunigung revolutioniert

Erfahren Sie, wie Minomize durch den Einsatz von Sentiment-Analyse die Geschwindigkeit von Videos intelligent anpasst und dabei ein verbessertes Nutzungserlebnis schafft. Lernen Sie die Technologie hinter Minomize kennen und entdecken Sie die Vorteile für Bildung, Marketing und Unterhaltung.

Sequential consistency without borders: D1 implements global read replication
Mittwoch, 11. Juni 2025. Globale Lesereplikation mit D1: Nahtlose sequenzielle Konsistenz über alle Grenzen hinweg

Erfahren Sie, wie Cloudflares D1-Datenbank durch globale Lesereplikation und das Sessions-API eine weltweit verteilte, performante und dennoch konsistente Datenbanklösung ermöglicht. Entdecken Sie die technischen Hintergründe, Anwendungsbeispiele sowie Vorteile für moderne Anwendungen.

UnitedHealth, Amedisys reach new deal to sell home health and hospice locations if merger approved
Mittwoch, 11. Juni 2025. UnitedHealth und Amedisys schließen neuen Deal zum Verkauf von Home-Health- und Hospizstandorten bei Fusion

UnitedHealth und Amedisys haben eine neue Vereinbarung getroffen, um ausgewählte Home-Health- und Hospizstandorte zu verkaufen. Diese Maßnahme zielt darauf ab, regulatorische Bedenken bezüglich ihrer geplanten Fusion zu adressieren und den Zusammenschluss zu ermöglichen.

KPMG rolls out AI-powered tool for mitigating tariff risks
Mittwoch, 11. Juni 2025. KPMG revolutioniert Handelsrisiken: KI-gestütztes Tool zur Minderung von Zollrisiken im globalen Handel

KPMG präsentiert eine innovative, KI-basierte Lösung zur Bewältigung komplexer Handelszölle und schafft neue Möglichkeiten für Unternehmen, ihre Lieferketten gegen tarifliche Unsicherheiten abzusichern. Dieses zukunftsweisende Tool unterstützt Firmen dabei, Zollrisiken präzise zu analysieren und fundierte Handelsstrategien zu entwickeln.

Simon Willison vs. Steve Yegge: Can Vibe Coding Mean Production Grade?
Mittwoch, 11. Juni 2025. Simon Willison vs. Steve Yegge: Bedeutet Vibe Coding Produktionsreife Software?

Ein tiefgehender Vergleich der Definitionen und Anwendungen von ‚Vibe Coding‘ anhand der Positionen von Simon Willison und Steve Yegge. Dabei wird geklärt, ob Vibe Coding tatsächlich mit produktionsreifen Softwareprojekten vereinbar ist oder ob es ein Konzept für experimentelle, eher informelle Programmieransätze bleibt.

Merz's government decree gives German digital ministry extensive powers
Mittwoch, 11. Juni 2025. Digitaler Neustart: Merz stärkt Deutschlands Zukunft mit neuem Digitalministerium

Die Bundesregierung unter Kanzler Friedrich Merz startet eine umfassende Digitaloffensive. Ein neu gegründetes Digitalministerium übernimmt zentrale Aufgaben aus sechs verschiedenen Ressorts, um Digitalisierung in Deutschland effektiv voranzutreiben und digitale Souveränität sicherzustellen.