Perl/OOP-Notizen eines Webentwicklers
Allgemeine Notizen zum Perl-Framework und die Praxis objektorientierter Programmierung
- Abstrakte Datentypen transformieren (cast)
- In Perl sind beispielsweise Array oder Hash abstrakte Datentypen
- Aggregation, Delegation, Dependency Injection
- Entwurfsmuster die immer wieder missverständlich sind
- Asynchronous JavaScript and XML und Benutzerfreundlichkeit
- AJAX macht Anwendungen besonders benutzerfreundlich
- Ausführende Instanz für Remote Procedure Call ist die Framework-Instanz
- Per HTTP werden Methodname und Funktions-Argumente an den Server gesendet
- Byte-Semantic und Character-Semantic
- Zeichenorientiert oder Byteorientiert - Perl kann Beides
- Chat mit WebSocket Broadcast und Client-Identifikation
- Der Client muss bereis beim Aufbau der Verbindung eine Kennung mitsenden.
- Class Loading via Perl Factory
- Perls Class-Loader
- Code Vereinfachen in Methoden einer Factory
- Methoden die nicht ständig benötigt werden, liegen ausgelagert in eigenen Dateien
- Das Routing auf der letzten Meile übernimmt der Controller
- Maßgeblich ist das Zustand-Übergang-Modell für die Qualifikation einer Route
- Data::Dumper wird nur geladen wenn er gebraucht wird
- Warum Klassen automatisch laden
- Dateipfad von Modulen oder packages ermitteln
- Ausschlaggebend ist das @INC Array
- Daten, Klassen, Eigenschaften und Methoden
- Objektorientierung aus der Sicht der Daten
- Design Pattern Factory Method
- Die Factory Methode ist eine Methode im Sinne einer Vorgehensweise
- Die an einen URL gebundene Subklasse definiert das Template
- Genauer gesagt, definiert die Subklasse den Speicherort für das Template
- DynDNS Client mit Perl Programmieren
- DNS Einträge dynamisch aktualisieren, das braucht einen Service und einen Client
- Ein anderer Aspekt der Factory
- Die Fabrikmethode vermeidet redundanten Code
- Entity, Attribute, Value, abstrakte Datentypen und zyklische Strukturen
- Das EAV Muster ist genauso einfach wie vielfältig
- HTTP Response Header werden gepuffert, der Puffer ist ein Attribut
- Die Lebensdauer einer Framework-Instanz ist nach dem Senden der Response abgelaufen
- HTTP Response Status: 204 No Content
- Die elegante Möglichkeit, ein Neuladen der Seite zu verhindern
- INI-Dateien sind objektorientiert aufgebaut nach dem EAV-Muster
- Die Sektion ist der Name für ein Objekt und der abstrakte Datentype entspricht dem Muster Entity-Attribute-Value
- Konfigurationen nicht als JSON sondern als abstrakte Datentypen
- Über das direkte Laden von Code aus Dateien
- Link, Rel, Canonical führen Duplicate Content zu einem gemeinsamen Ursprung
- Eine Empfehlung führender Suchmaschinenbetreiber
- MVC-Kompaktklassen im Perl-Framework
- Kompaktklassen definieren das Template in derselben Datei
- Mehrfachverwendung an URLs gebundener Responseklassen
- Die Klassenbindung ist derart, dass nur noch die Konfiguration über den Inhalt entscheidet
- Mein Web-Application-Framework als Interface in Perl implementiert
- Das Grundgerüst meines Frameworks ist ein Interface
- Packages, Namespace, Scope oder Geltungsbereich von Symbolen
- Ohne Schlüsselworte gilt der aktuelle Namensraum
- Quasi Random Access File, Datei mit wahlfreiem Zugriff
- Der wahlfreie Zugriff wird über einen abstrakten Datentyp ermöglicht
- Templates in Methoden verwenden
- Templates vorteilhaft unterhalb __DATA__ Token notieren, die Factory machts möglich
- URL Routing mit dem Perl Framework über Subklassen
- Charakteristisch für das Framework ist die Klassenbindung an URLs
- Variablen oder Abstrakte Datentypen an eine Klasse binden
- Jeder Zugriff auf eine gebundene Variable ruft eine Methode auf
- Vererbung vermeidet redundanten Code
- Eigentlich ist das eine Binsenweisheit
- Warum überhaupt eine Klasse für die Daten?
- Ein etwas anderer Aspekt der Objektorientierten Programmierung.
- Wiederkehrende Abläufe schreien nach einem Interface
- Wenn immer dieselben abstrakten Abläufe gegeben sind, lohnt es sich über ein Interface nachzudenken
Datenschutzerklärung: Diese Seite dient rein privaten Zwecken. Auf den für diese Domäne installierten Seiten werden grundsätzlich keine personenbezogenen Daten erhoben. Das Loggen der Zugriffe mit Ihrer Remote Adresse erfolgt beim Provider soweit das technisch erforderlich ist. sos@rolfrost.de.