FOL9000

f9 – noch ein neues PHP-Micro-Framework

von

Es ist ja schon ein paar Tage her, dass ich mich mit dem Thema Micro-Frameworks befasst habe. Obwohl: Eigentlich müsste man sagen, öffentlich befasst habe, denn in der Zwischenzeit hab ich mir durchaus das eine oder andere angesehen und ein bisschen was ausprobiert. Das Ergebnis war, dass mir eigentlich nichts so richtig gefiel. Vor allem aber habe ich mir irgendwann gedacht: Wenn ich schon rumprobiere und wenn mir schon nichts richtig gefällt, warum dann nicht den micro-Charakter der Frameworks ausnutzen und selbst Hand anlegen? Wenn das Framework wirklich micro ist, dann sind es eh nur ein paar Dateien und die eigenen Vorstellungen schnell eingebaut. Ich gehe dabei nicht davon aus, alles besser zu können. Aber jeder, der auch nur ein wenig programmieren kann weiß, dass man durch nichts besser lernt, als durch die Praxis. Mir ist auch klar, dass das Thema eigentlich schon fast wieder durch ist – aber ich will ja auch nicht den Markt aufrollen; es soll schlicht ein eigener Ansatz sein, sich dem Thema zu nähern.

Und so ist also f9 geboren – mein eigenes PHP-Micro-Framework. Der Name bedeutet schlicht und einfach gar nichts, er sollte nur kurz sein, so kurz wie das Framework klein.

Berücksichtigt werden sollen im Framework natürlich die Kriterien, die ich schon einmal für ein gutes Micro-Framework notiert hatte. Außerdem wollte ich das Rad nicht neu erfinden: Wo immer ich bei anderen Frameworks Ansätze gefunden habe, die mir gefielen, hab ich soviel wie möglich übernommen.

f9 besteht im Kern aus vier Komponenten:

  • einem Front-Controller,
  • einem Bean-Container,
  • Views bzw. einem ViewResolver, der Views findet und verwaltet
  • sowie einer Komponente für vereinfachten Datenbank-Zugriff

Hinzu kommen noch ein paar Kleinigkeiten für die Session-Verwaltung und das einfachere Handling von Modell- und View-Daten. Das alles – wie gesagt – nach den bereits formulierten Kriterien.

Mit all dem sollte sich bei kleinen bis mittleren Projekten ein Gutteil der Arbeit erledigen lassen.

Irgendwann in der näheren Zukunft möchte ich f9 nicht nur als Archiv, sondern auch auf GitHub zur Verfügung stellen – aber das ist erstmal noch Zukunftsmusik.

Das ganze möchte ich in der nächsten Zeit in loser Folge mit ein paar Artikeln vorstellen.

Downloads

Das komplette f9-Framework mit allen Klassen und Beispielen:
[download id=“12″]

Kommentare sind geschlossen.