pl: per Interace Datentyp definieren möglich?

Beitrag lesen

Welche Vorteile und Nachteile gegenüber einer einfache Klasse mit vordefinierten Eigenschaften siehst du bei deinem Vorschlag?

Die Anwendung greift direkt auf den abstrakten Datentyp während dieser, für den Anwender unsichtbar, Methoden eines Interfaces aufruft.

Anstatt also in der Anwendung bspw. eine Methode einer vorher erstellten Instanz aufzurufen die ein Insert Statement ausführt, greift die Anwendung ohne diesem Umweg direkt in ein Array: Aus der Sicht der Anwendung werden Daten in ein Array eingefügt, die an das Array gebundene Klasse jedoch fügt Daten in eine Datenbank ein.

Schichtenmodelle lassen sich auf diese Art und Weise recht einfach implementieren und auch anwenden. Das Array $_SESSION was jeder PHP Entwickler kennen dürfte ist ein Beispiel. Die Anwendung greift ins Array, die Persistierung jedoch ist komplett raus aus der Anwendung, d.h. um den Dateizugriff, Serialisierung usw. muss sich die Anwendung gar nicht kümmern. Praktisch implementiert $_SESSION ein Random Access File.

Etwas abgedreht war ein FTP Client den ich in Perl mal entwickelt habe. Da hast Du in der Anwendung nur noch ein $ftpclient = $file aufrufen müssen um die Datei auf den Server hochzuladen und ein $localfile = $ftpclient zum Download, gleichzeitig wurden Mails verschickt an einen konfigurierbaren Verteiler. Über die an $ftpclient gebundene Klasse war die diesbezügliche Konfiguration einschließlich Access Control komplett von der Anwendung getrennt.

Eine einfache Zuweisungsoperation kann also sehr komplexe Vorgänge auslösen deren diesbezüglicher Code aus der eigenen Anwendung raus ist und beispielsweise den Aufruf mehrerer Methoden innerhalb der Anwendung erspart.

MfG