Microframeworks Pro und Contra
Kommentare

Matthew Weier O’Phinney hat in einer breiten Studie mehrere PHP-Microframeworks verglichen und eine Liste von Stärken und Schwächen zusammengetragen. Mit Phlyty stellt er außerdem ein ZF2-basiertes,

Matthew Weier O’Phinney hat in einer breiten Studie mehrere PHP-Microframeworks verglichen und eine Liste von Stärken und Schwächen zusammengetragen. Mit Phlyty stellt er außerdem ein ZF2-basiertes, eigenes Microframework vor. Dabei sah er, dass sich Microframeworks auf zwei Kernprobleme fokussieren:

  • Was sind die spezifischen Einstiegspunkte (URI) für die Anwendung?
  • Was muss an jedem Einstiegspunkt gemacht werden?

Wie funktioniert also Routing, und wie verfährt man im Controller? Hier erkannte er oft eine Anlehnung an Sinatra und Ruby und kam unterm Strich zu folgenden Use Cases für Microframeworks:

PHP Microframeworks eignen sich für Prototyping, da sie sehr einfach gestaltet sind; besonders im Anfangsstadium, wenn Websites sehr wenige Seiten haben, die jeweils über Templates gerendert werden sollen und nur wenige Abweichungen voneinander aufweisen.

Eine weitere Stärke von Microframeworks sind APIs, da deren Funktionalität klar definiert ist. Die benötigte Logik wird meist schon in fertigen Business-Objekten gekapselt. Der Application Layer muss sich dann nur noch um Filtering und Representation kümmern.

Kleine, überwiegend statische Seiten profitieren vom geringen Overhead, den Microframeworks mit sich bringen.

Eine große Schwäche von Microframeworks hingegen sei die Wartbarkeit: O’Phinney hat beobachtet, dass sie eine sehr deklarative Natur aufweisen, die die Wiederverwendung von Code erschwert. Hinzu kommt, dass Routes und Controller willkürlich organisiert werden können, da es keine festen Richtlinien dazu gibt.

Außerdem lässt sich der Workflow der Anwendung schwer kontrollieren: Viele Microframeworks setzen auf Hooks, Events oder Middleware. Diese sind in ihrem Scope eingeschränkt und können oft nicht wiederverwendet oder gestapelt werden.

Abschließend erstellt O’Phinney nach dem Vorbild von Limonade und Slim eine Testsuite für ein eigenes Microframework mit äquivalenten ZF2-Komponenten. Es lässt sich simpel über Composer erweitern, was er sehr befürwortet:

[…]microframeworks are trivially easy to write, particularly if you follow the principals of MicroPHP, and re-use existing code. Just because code comes from a framework or a third-party library does not make it suspect or inferior; in fact, whenever possible, you should leverage such code so you can focus on writing awesome applications.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -