Archiv

Artikel Tagged ‘ORM’

PDO vs Propel

21. Februar 2012 Keine Kommentare

Ok, das ist jetzt was für PHP Programmierer:

Das selbe Stück Code mit zwei Datenbankabfragen, einmal mit PDO, beim zweiten erfolgt eine der beiden DB-Abfrage über Propel. Da soll mir noch mal jemand erzählen, OO zusammen mit ORM – intelligent eingesetzt – führen nicht zu Spaghetticode. Aber lassen wir die Bilder sprechen, zuerst PDO:

PDO Callgraph

Und jetzt kommt Propel:

Propel Callgraph

Gut, ich habe mir jetzt ein paar Tage lang angesehen, welche Art des Datenbankzugriffs ich für die Refakturierung einer datenbankgestützten Webseite nehmen soll und ob ich nicht doch ein ORM nehmen soll. Die Bilder über den Programmfluss (und die Geschwindigkeit des Codes, er läuft mit Propel fast drei mal so lange) entscheiden: Nein, kein ORM. ORM ist von hinten durch die Brust ins Auge.

Diese hübschen und sehr aussagefähigen Grafiken malt xhprof. Dieser Profiler wurde von Facebook entwickelt und ist nun Teil von PHP. Auf Facebook muss ich jetzt aber nicht verlinken, oder?

Interessant dazu: Rasmus Lerdorf, der Erfinder von PHP, beklagt sich in seinem Blog über bloated Frameworks:

Many frameworks may look very appealing at first glance because they seem to reduce web application development to a couple of trivial steps leading to some code generation and often automatic schema detection, but these same shortcuts are likely to be your bottlenecks as well since they achieve this simplicity by sacrifizing flexibility and performance. Nothing is going to build your application for you, no matter what it promises.