Ansicht
Dokumentation
ABENOBJ_ORIENTED_GDL - OBJ ORIENTED GDL
General Data in Customer Master SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3upDiese Dokumentation steht unter dem Copyright der SAP AG.
Objektorientierte Programmierung
Optimales objektorientiertes Design ist keine leichte Aufgabe und auch nicht Gegenstand dieser Programmierrichtlinien. Es lohnt sich in jedem Fall, hierzu die einschlägige Literatur zu Rate zu ziehen. Die vorliegenden Regeln beschränken sich auf wenige, grundsätzliche Empfehlungen, die geeignet sind, die Verständlichkeit und Wartbarkeit von Quelltext zu erhöhen, sowie auf Eigenheiten von ABAP bei der Arbeit mit globalen und lokalen Klassen.
Entwickler mit entsprechender Erfahrung auf dem Gebiet der objektorientierten Entwicklung in anderen Programmiersprachen sollten sich der grundsätzlichen Unterschiede zwischen ABAP Objects und beispielsweise Java bewusst sein:
- In Java werden alle höherwertigen Datenobjekte, also insbesondere Container-Variablen wie beispielsweise Strings, über Klassen modelliert. ABAP bietet im Gegensatz dazu sehr mächtige, eingebaute Typen. Neben den eingebauten ABAP-Strings werden auch interne Tabellen angeboten, die der strukturierten Ablage von Daten dienen und den mächtigsten ABAP-Typ darstellen. Die Implementierung eigener Container-Typen über ABAP-Klassen ist aus diesem Grund im Allgemeinen nicht sinnvoll.
- Java erreicht durch Optimierungen und JIT-Kompilierung eine hohe Verarbeitungsgeschwindigkeit für Methoden. In ABAP hingegen wird hohe Verarbeitungsgeschwindigkeit vor allem durch zum Teil sehr leistungsfähige und komplexe Einzelanweisungen erreicht. Auch aus diesem Grund ist die Implementierung eigener Container-Klassen im Allgemeinen nicht sinnvoll, da beispielsweise der Zugriff auf eine geeignete interne Tabelle stets schneller ablaufen wird als handgeschriebene Zugriffslogik in ABAP.
Algorithmen sowie die grobe Klassenstruktur lassen sich natürlich durchaus von einer in einer anderen objektorientierten Programmiersprache geschriebenen Anwendung auf ABAP übertragen. Mit zunehmender Tiefe werden jedoch die Unterschiede größer. Ein detailliertes Design in einer anderen Sprache lässt sich daher nicht ohne entsprechende Anpassungen erfolgreich auf ABAP Objects übertragen.
ABAP Short Reference ABAP Short Reference
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 3257 Date: 20240523 Time: 104929 sap01-206 ( 76 ms )