מושגי ליבה
Wir stellen eine Taxonomie von Objekten für die streng formale objektorientierte Programmiersprache EO vor, die nach Prinzipien wie Nicht-Redundanz und Einfachheit entworfen wurde. Diese Taxonomie soll EO-Programmierern als Navigationskarte dienen und kann auch als Richtlinie für Designer anderer objektorientierter Sprachen oder Bibliotheken hilfreich sein.
תקציר
Der Artikel führt eine Taxonomie von Objekten für die streng formale objektorientierte Programmiersprache EO ein. Diese Taxonomie wurde mit Prinzipien wie Nicht-Redundanz und Einfachheit entworfen.
Die Taxonomie umfasst folgende Kategorien von Objekten:
- Primitive Datentypen (Bytes, Ganzzahlen, Gleitkommazahlen, Zeichenketten)
- Tupel
- Fehlerbehandlung
- Kontrollflussabstraktionen (Sequenz, Verzweigung, Iteration, Sprünge)
- Zahlen mit nicht-standardmäßiger Bitbreite
- Speicherabstraktionen (Arbeitsspeicher, Käfige)
- Mathematische Funktionen und Algorithmen
- Zeichenkettenmanipulationen
- Strukturen (Listen, Mengen, Abbildungen)
- Ein-/Ausgabeströme
- Dateisystemabstraktionen
- Netzwerksockets
- HTTP-Anfragen und -Antworten
- Synchronisation in Multithreading-Umgebungen
Für jede Kategorie werden die wichtigsten Objekte und deren Attribute beschrieben. Dabei wird versucht, Redundanzen zu vermeiden und eine möglichst einfache und konsistente Schnittstelle zu schaffen.
סטטיסטיקה
"Wir tendieren dazu, den globalen Gültigkeitsbereich zu minimieren und die Anzahl globaler Objekte auf das absolut Notwendige zu beschränken."
"Wo immer möglich, müssen Objekte in EO implementiert werden, anstatt Atome zu sein."
"Es sollte keine Funktionalität geben, die zwei- oder mehrmals im gesamten Taxonomie-Baum implementiert ist."
"Objektnamen dürfen nicht abgekürzt werden und müssen, wenn sie über Punktnotation verwendet werden, einen englischen Satz bilden."
ציטוטים
"Jedes objektorientierte Programmierspracheangebot seine eigene Menge von Objekten, Klassen, Typen, Funktionen, Konstanten, Traits, Templates usw., die Programmierer verwenden können, um ihre spezifischen Anwendungsfälle zu modellieren."
"Wir schlagen unsere eigene Taxonomie von Objekten für EO1, eine streng formale [16] objektorientierte Programmiersprache mit einer absichtlich reduzierten Featuremenge [5], vor."
"Ein Objekt in EO ist entweder eine Komposition anderer Objekte oder ein Atom, das eine Schnittstelle zu einer niedrigeren Laufzeitumgebung wie beispielsweise der JVM oder Assembly darstellt."