Pläne für den neuen Blog
Seit einiger Zeit gab es keine neuen Artikel
von mir, was einerseits an Zeitmangel lag und andererseits daran, dass
mir einige Aspekte meines Blogs nicht gefallen. Ohne allzu sehr auf
diese Aspekte einzugehen, möchte ich einige Ideen vorstellen, die ich
mir für meinen Blog vorstellen kann.
Ich beginne mit einer Aufnahme der Aspekte, die das neue Konzept
enthalten sollte oder könnte, womit [...]
- Weiterlesen
- Kommentare (0)
- Tags: blog, web
Mehrseitige Formulare
Mehrseitige Formulare werden in vielen
komplexen Webanwendungen benötigt und werden häufig als statische
Verkettung von verschiedenen Controllern implementiert. Es gibt
allerdings eine einfache Alternative unter Nutzung von Entwurfsmustern, namentlich Zuständigkeitskette (engl. Chain of Responsibility) und Datentransferobjekt.
Mithilfe der Zuständigkeitskette komponieren wir mehrere eigenstä[...]
- Weiterlesen
- Kommentare (0)
- Tags: algorithmen, entwurfsmuster, oop, php, web
Biphrost: Application
Bei der Application-Klasse handelt es sich um das Herzstück jeder Bifrost-Applikation. Die Funktionalitäten sind schnell beschrieben:
- Die Verwaltung von Pfaden (Templates, Einstiegspunkte, Applikationscode).
- Verwaltung und Wahl eines geeigneten Dispatchers (i.d.R. aufbauend auf dem Pfad der Einstiegspunkte).
- Verwalten eines prototypischen Transfer-Objekts.
- Transfer-Objekte vorbereiten und nachber[...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Biphrost: Template
Wie fast jedes Framework verfügt auch Bifrost über eine Template-Engine. Im Gegensatz zu vielen anderen Entwicklungen stellt die Template-Klasse aus Bifrost lediglich einen leichtgewichtigen Wrapper für PHP-Templates dar. Ziel ist es nicht, möglichst viele Funktionalitäten bereitzustellen, sondern einen Container anzubieten, der in den Einstiegspunkten mit Daten gefüllt wird und am Ende der [...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Biphrost: Dispatcher
Der Dispatcher wurde, wie der Name bereits suggeriert, zum Abfertigen von Anfragen entworfen. Dazu benötigt er den Einstiegspunkt-Algorithmus, der in einer iterativen Variante implementiert wurde und somit verständlicher ist als die rekursive Variante und sich in der Methode findEntrance befindet:
$components = ($uri == '/' ? array('index') : array_filter(explode('/', $uri)));
$dir = $this->[...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Biphrost: Transfer
Die eigentliche Aufgabe der
Transfer-Komponente besteht im Transport von Daten zwischen
verschiedenen Schichten, weshalb die die Transfer-Klasse das Data-Transfer-Object-Entwurfsmuster
implementiert. Ein wesentlicher Aspekt dieses Entwurfsmusters ist das
Fehlen jeglicher Funktionalität, wenn man vom Zugriff und dem Halten
der Daten absieht.
Nebeneffekt dieses Konzepts ist das Vermeiden von g[...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Biphrost: Überblick
Dieser Artikel soll einen kurzen Überblick über die wesentlichsten Aspekte von Bifrost liefern. Es handelt sich dabei um folgende Themen:
- Ordnerstruktur
- Komponenten
- Abarbeitung von Anfragen
Nach dem Entpacken des Bifrost-Archivs erscheint folgende Ordnerstruktur:
- application: Sammelordner für eine bestimmte Applikation.
- application/code: Code für die Applikation und Bibliotheken sind Inhalt [...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Mit Biphrost die Brücke schlagen
Bei Biphrost (eigentlich Bifröst) handelt es sich um die konsequente Weiterentwicklung des Algorithmus aus dem letzten Blog-Artikel. Der Name entstammt der nordischen Mythologie und beschreibt die dreistrahlige Regenbogenbrücke zwischen Midgard und Asgard und damit die Verbindung zwischen "Himmelsreich" und "Erdenwelt", übertragen stellt es die Brücke zwischen den Benutzern und der Applikation dar[...]
- Weiterlesen
- Kommentare (0)
- Tags: biphrost, php, projekt, web
Einstiegspunkte (in Webapplikationen)
Dieses Mal geht es um Einstiegspunkte und eine fast schon triviale Idee, um diese Einstiegspunkte zu strukturieren.
Einstiegspunkte sind die Punkte, an denen die Applikation anfängt, eine
Abfrage abzuarbeiten. Das ist vor allem, wenn auch nicht
ausschließlich, bei Webapplikationen notwendig. Jeder, der bereits mit
PHP gearbeitet hat, dürfte dieses Konzept kennen, denn eine (von außen
sichtb[...]
- Weiterlesen
- Kommentare (0)
- Tags: algorithmen, php, web
Gedanken zu Googles AppEngine
Vor einigen Tagen wurde ich durch einen Heise-Artikel auf Googles AppEngine aufmerksam. Selbsterklärtes Ziel ist die Bereitstellung von Googles Infrastruktur, was heißt, dass Entwickler dort ihre Projekte hosten können und sich keine Sorgen um Skalierbarkeit machen müssen. Da Google wohl über eine der besten, wenn nicht gar die beste Infrastruktur verfügt, kann man daraus durchaus Vorteile zi[...]