This is a test message to test the length of the message box.
Login
Modernisiere dein ABAP
Erstellt von Software-Heroes

Modernisiere dein ABAP

251

Was steckt hinter dieser etwas provokanten Aussage und wie kannst du Stück für Stück an das moderne ABAP kommen? Alles in diesem Artikel.

Werbung


ABAP ist eine historisch stark gewachsene Sprache und im Gegensatz zu anderen Programmiersprachen wurden bisher keine alten Sprachkonstrukte aus dem Wortschatz entfernt, sodass ABAP immer abwärtskompatibel ist. Doch solltest du daher noch so programmieren wie vor 20 oder 30 Jahren?

 

Einleitung

In ABAP gibt es über 1250 Schlüsselwörter, damit ist die Programmiersprache TOP 1 unter den Sprachen. Doch die Menge an Schlüsselwörtern ist eher kontraproduktiv, da sie Einsteiger am schnellen Lernen der Sprache hindern. Schauen wir uns einmal den Gebrauch von REFRESH, CLEAR und FREE an. Hier sind drei Statements, die ungefähr das gleiche machen, doch für welches soll man sich entscheiden und welches macht heute noch Sinn? Alte ABAP Hasen werden sich wahrscheinlich darüber streiten, doch eigentlich sollte man nur noch ein Statement verwenden und schon hat man sich zwei Andere gespart. 

 

Anfang

Wo sollte man anfangen, die Sprache zu reduzieren? Unserer Meinung nach vor allem in der Ausbildung von neuen ABAP Entwicklern. Hier wird der Grundstein für die Entwicklung gelegt und junge ABAP Entwickler sollten in erster Linie vor allem lernen, wie die neuen Dinge funktionieren. So bringt es ihnen wenig, wenn sie mit FORMS und Funktionsbausteinen beginnen. Später einmal über die technische Dokumentation Informationen zu alten Statements zu bekommen ist kein Problem, doch man sollte sie vor allem mit den neuen Statements vertraut machen.

Aktuelle Entwickler sollten vor allem damit beginnen, sich die neuen Statements anzuschauen und diese zu verwenden. In den meisten Fällen sind diese noch einmal besser performance-optimiert und lassen sich einfacher in Statements kombinieren.

 

Obsolet

Ein sehr guter Hinweis für nicht mehr zu verwendende Schlüsselwörter findet man in der ABAP Dokumentation. Solltest du dir einmal über einen Befehl nicht sicher sein, dann schau in die technische Dokumentation, dort findest du an erster Stelle Informationen zu obsoleten Statements:

 

Solche Statements kannst du direkt aus deinem Wortschatz der Programmiersprache streichen.

 

Nachfolger

Etwas schwieriger wird es bei der Ermittlung von Nachfolgern zu Schlüsselwörtern oder Best-Practices beim Entwickeln. Wichtige Informationen liefert der Clean ABAP Guide oder einfach über unsere Webseite, hier haben wir eine Liste mit Modern ABAP Statements zusammengestellt. Daneben findest du neben Neu und Alt, auch zahlreiche Blogs zum Thema Modern ABAP und wie du die neue Syntax nutzt.

 

ABAP Cloud

SAP hat damit begonnen, die Sprache etwas aufzuräumen, wenn es um die neuesten Codelines und Releases geht. Schauen wir uns das ABAP Environment etwas näher an, dann wird schnell auffallen, dass nicht mehr alles geht. Hier wurde bereits die Sprache stark eingeschränkt und nicht mehr alles ist möglich. Auch wenn das System im Hintergrund noch genauso funktioniert, wird über den Compiler die Sprachversion eingeschränkt. Dies hat zur Folge, dass ABAP automatisch eingeschränkt wird im Sprachumfang und Entwickler nur noch viele der neuen Statements verwenden können.

Hier geht SAP einen harten, aber richtigen Weg. Formbasierte Reports und Anwendungen gehören der Vergangenheit an und anders kann kein Wechsel Richtung Web und Fiori stattfinden. Doch wie man schnell und einfach Fiori Anwendungen mit Fiori Elements erstellt, passt besser in einen anderen Artikel auf unserem Blog.

 

Beispiele

Schauen wir uns einmal ein paar Beispiele an und wie wir Sprache für alle etwas einfacher machen können.

 

APPEND vs. INSERT

Bereits in einem Artikel, haben wir die beiden Statements miteinander verglichen. APPEND wird nicht mehr benötigt und kann ebenfalls vergessen werden. INSERT arbeitet immer wie man es erwartet und verursacht auch keine Probleme, wenn man den Datentyp ändert. So sparst du dir Zeit beim beseitigen der Fehler und Ändern der Statements.

" Old
APPEND ls_structure TO lt_table.

" New
INSERT ls_structure INTO TABLE lt_table.

 

Vergleichsoperatoren

Wer kennt es nicht vom lernen von ABAP, was macht gleich noch LE oder GT? Diese Ausdrücke für Vergleichsoperatoren werden im Umfeld der SELECT-OPTIONS benötigt, doch kann man damit auch Vergleiche in IF Statements durchführen. Allerdings wird hier die Lesbarkeit leiden, da diese Operatoren erst interpretiert werden müssen. Bei der Modellierung von CDS Views kann man sie nicht mehr einsetzen, was wiederum einen Bruch in der Entwicklung verursacht und zu unschönen Vermischungen führt.

" Old
IF ld_number GE 10.
ENDIF.

" New
IF ld_number >= 10.
ENDIF.

 

Jüngere Entwickler schauen sich meist auch noch andere Programmiersprachen an oder entwickeln als Full-Stack Developer im Bereich Fiori. Da hier die alten Vergleichsoperatoren nicht funktionieren, wird es früher oder später zu einem Bruch kommen. Hier lohnt es sich als Angewohnheit, gleich die Standard Vergleichsoperatoren zu nutzen.

 

Initialisieren

Am Anfang haben wir die drei Statements REFRESH, CLEAR und FREE angesprochen. Refresh ist bereits obsolet und sollte nicht mehr verwendet werden. Hier sollte klar auf CLEAR gegangen werden, da es intuitiv auch viel besser zum Bereinigen von Variablen genutzt werden kann. FREE wurde vor allem zum Aufräumen von Tabellen und Objekten genutzt, der Unterschied zu CLEAR ist aber nur minimal und kann vernachlässigt werden.

" Old
REFRESH: lt_table, ld_variable.

" New
CLEAR: lt_table, ld_variable.

 

Fazit

Modernes ABAP ist nicht schwer, es erfordert ein wenig Hilfe und Umgewöhnung, doch so kann man sich Schritt für Schritt an einen besseren Stil heranwagen. Unsere Empfehlung an dich, wenn du dir nicht sicher bist, verwende immer den neuesten Ausdruck bei der Entwicklung.


Enthaltene Themen:
SAPABAPModern ABAP
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


Wie viel Fiori brauchen ABAP Developer?

Kategorie - ABAP

Die Learning Roadmap ist gut gefüllt mit neuen Themen, wie sieht es nun mit der Frontend Entwicklung für den ABAP Developer aus?

22.10.2024

DSAG Jahreskongress 2024

Kategorie - ABAP

Der DSAG Jahreskongress in Leipzig ist zu Ende, das haben wir aus dem Bereich SAP und ABAP mitgenommen.

18.10.2024

SAP TechEd 2024 - Behind the Scenes

Kategorie - Allgemein

In diesem persönlichen Blog möchte ich ein paar Einblicke hinter die Kulissen der SAP TechEd 2024 geben und wie mein Vortrag so lief.

14.10.2024

SAP TechEd 2024 - Recap für ABAP

Kategorie - ABAP

Wie geht es mit dem Thema ABAP weiter und welche Hilghlights nehmen wir von der SAP TechEd 2024 dieses Jahr mit? Hier erfährst du mehr.

13.10.2024

ABAP Tools - Arbeiten mit Eclipse (SAP GUI Sprache)

Kategorie - ABAP

Du hast die falsche SAP GUI Sprache, wenn du in den ABAP Development Tools die GUI startest? Hier findest du die Lösung.

10.09.2024