Fluent Interface

Fluent Interfaces (fließende Schnittstellen) haben nichts mit den seit PHP5 bekannten Interfaces zu tun, so viel vorne weg.
Hinter diesem Begriff birgt sich die Möglichkeit aufeinander folgende Methodenaufrufe einer Klasse zu verketten. Dies erspart einerseits redundanten Code (wenn auch minimal) und erhöht zudem die Lesbarkeit. Ermöglicht wird dieses Vorgehen dadurch, indem die Methoden $this, also die eigene Instanz zurückgeben. Dies ist natürlich nur dann möglich, wenn es sich um Methoden handelt, welche sonst keinen Rückgabewert, also void zurückgeben (zum Beispiel Set-Methoden).

Slax - Linux für den USB Stick

Slax.org

Ich bin kürzlich auf die Slackware basierte Linux Distribution Slax gestoßen. Ein sehr nettes Spielzeug, für diejenigen, welche sich mal mit dem Thema Linux beschäftigen möchten, ohne sich das Betriebssystem gleich auf den Rechner installieren zu müssen.
Auf Slax.org gibts es ein ISO für eine bootbare CD oder ein .tar zur Erstellung eines bootbaren USB Sticks.

Command Pattern

Um Methoden nicht fest an eine Klasse zu binden, so dass diese zum Beispiel zur Laufzeit geholt oder ausgetauscht werden können, eignet sich das Command Pattern. Eine Aufgabe wird in einem Objekt gekapselt, um diese als Parameter zu übergeben oder in einer Queue zu registrieren.

Decorator Pattern

Das Decorator Pattern ermöglicht es ein Objekt zur Laufzeit zu erweitern oder dessen Methoden zu verändern. Dadurch erreicht man eine flexiblere Möglichkeit gegenüber statischer Vererbung, indem ein Objekt mit einem oder mehreren Dekorierern versehen wird.

Adapter Pattern

Ein Adapter im mechanischen Sinn dient der Verbindung zweier verschiedener Geräte. Diese Eigenschaft lässt sich auf Schnittstellen in der Programmierung ebenfalls anwenden. Das Adapter Pattern passt die API (Schnittstelle) einer gegebenen Klasse an die davon abweichende Erwartungen einer Implementierung an. Vorkommen könnte dies zum Beispiel beim Aufeinandertreffen zweier Bibliotheken von verschiedenen Autoren.

Observer Pattern

Ein Observer dient dazu, den Zustand einer Klasse zu überwachen und bestimmte Maßnahmen einzuleiten, falls sich dieser verändert. Im Beispiel geht es darum einen Wert einer Klasse auf das Überschreiten eines Limits hin zu observieren und entsprechende Meldungen auszugeben.

Template Method Pattern

Das Template Method Pattern hat nichts mit Templates im üblichen Sinne zu tun, soviel vorne weg. Es schreibt vielmehr den Ablauf eines Algorithmus vor, ohne dessen einzelne Komponenten zu implementieren. Die Bestandteile werden lediglich bedingt und in ihrer Reihenfolge festgelegt, können jedoch beliebig in den erbenden Klassen umgesetzt werden.

Auto Mobil International in Leipzig

AMI 23

Am Samstag habe ich der AMI auf dem neuen Messegelände in Leipzig mal einen Besuch abgestattet. Da ich jetzt nicht so das große Interesse für Autos hege, sollte ein "Feierabend Ticket" reichen.

Im großen und ganzen war es ganz nett die dortigen Schlitten mal in Augenschein zu nehmen. Leider befand sich der Großteil jenseits meines Budgets, so dass das einzig teure für mich an diesem Nachmittag der Hotdog in der Eingangshalle blieb... ;-)

Ein paar Bilder gibt es in der Galerie zu bestaunen.

benjaminradtke.com ist down, es lebe benjaminradtke.com =)

So, seit ein paar Minuten ist nun der Relaunch der Seite durch. Ich habe zwar noch nicht all meine Pläne, Wünsche und Ideen eingebracht, aber meine Geduld war mal wieder begrenzt... Die nächsten Tage werde ich, je nachdem wieviel Zeit dafür abfällt, weiter daran werkeln.

Probleme mit Drupal bei 1und1

Kürzlich habe ich ein Projekt auf das Content Management System Drupal (6.1) umgestellt. Leider erwies sich dies aufwendiger als erwartet. Da man ein einigen Rädchen und Schräubchen drehen musste, bis das Webpaket Homepage Perfect halbwegs tauglich war. Daher möchte ich meine Erfahrungen und Kenntnisse hier kurz festhalten.

Es begann damit, dass register_globals aktiviert und PHP mit einem sehr geringen memory_limit konfiguriert war. Beides lies sich recht einfach durch den Einsatz einer php.ini im Drupal Verzeichnis anpassen.

Syndicate content

Tags