Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
chrizz9988
Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
chrizz9988
In Klassen greift z.B. die Syntaxprüfung viel strenger. Außerdem werden auch beim Aufruf von Methoden die Parameter u. Typen der Parameter ordentlich geprüft, was man bei FuBas nicht sagen kann. Auch kann man Klassenattribute public (und natürlich Read-Only) machen-kein wichtiger Punkt. Aber man kann Ereignisse und Exceptions propagieren, was auch ein Vorteil ist, den man auch bei statischen Klassen nutzen kann.ralf.wenzel hat geschrieben:Ich würde die Frage ganz anders stellen: Warum OO, wenn man eh nur statische Klassen verwendet? Welchen Vorteil hat das Ganze dann noch? Dann kann man gleich Funktionsgruppen schreiben, oder?
Ich kann alles nachvollziehen nur o.g. kann man auch als Nachteil sehen: Läuft das Programm länger und ich habe eine sehr große statische Klasse mit vielen Methoden, so bleibt diese komplett bis zum Programmende im internen Modus geladen und benötigt ja auch Arbeitsspeicher. Ein Objekt belegt diesen nur so lange, wie ich es benötige.a-dead-trousers hat geschrieben:Man darf nicht außer acht lassen, dass auch eine Objekt-Instanzierung Laufzeit benötigt und wie du schon richtig bemerkt hast, müssen statische Methode nur einmal in den Speicher geladen werden.
Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
chrizz9988
Ja, aber man kann trotzdem das Coding in einer Klasse schreiben und im RFC-Fuba nur den Aufruf machen.black_adept hat geschrieben:Aber die Anmerkung von Ralf bzgl. Funktionsgruppen ist nicht von der Hand zu weisen, zumal du in deinem Originalposting von Konvertierungen zw. Fremd- und SAP-System gesprochen hast. Und nur FuBa sind RFC-fähig.
Weil man z.B. aus statischen Klassen instanzierbare Klasen machen kann. Aus Funktionsgruppen nicht.ralf.wenzel hat geschrieben:Ich würde die Frage ganz anders stellen: Warum OO, wenn man eh nur statische Klassen verwendet? Welchen Vorteil hat das Ganze dann noch? Dann kann man gleich Funktionsgruppen schreiben, oder?
Code: Alles auswählen.
Ergebnis = zcl_hilfsklasse=>compute( irgendwas ).
Code: Alles auswählen.
IF zcl_klasse=>check_irgendwas( eingabe ) is Initial.