die3sportarten

Triathlon and coding makes some fun

Tellerrand mit symfony und rails

without comments

Ich kriege es einfach nicht hin. Ich kann das symfony Framework in Php einfach auf eine anständige Art und Weise mit dem Rails Framework geschrieben in Ruby nicht miteinander vergleichen.
Hintergrund für diese Überlegung ist, dass ich mich bei einem Projekt für symfony entschieden hatte, weil es ‘rails like’ sein sollte, zumindest wurde es häufig so beschrieben.
Ich hatte damals gerade erfolgreich an einem Rails Projekt gearbeitet und wollte was neues altes machen, außerdem war ich der Überzeugung, dass man viel leichter einen PHP-Entwickler finden würde als einen Rails-Entwickler, auch ist Hosting bestimmt leichter.
Da ich gerade aus Interesse und Neugier mich mit Rails 3 auseinandersetzte, muss ich sagen, nur weil Rails und symfony beides Frameworks sind, die das MVC-Entwurfsmuster verwenden und beide noch eine Konsolenanbindung haben, heißt es noch lange nicht, dass sie ‘like’ sind.
Ich glaube auch nicht das Fabien Pontencier symfony jemals es selbst als ‘railslike’ bezeichnete.
Natürlich gibt es Ähnlichkeiten aber die Umsetzung ist sehr unterschiedlich und genau deshalb lohnt es sich sich immer wieder neues anzuschauen oder zu altem zurückzukehren, weil man so lernt und versteht, zumindest wenn man will.
Für mich ist Rails vergleichbar mit einer hypen Firma, die in einem Loftbüro arbeitet, alle Experten sind in einem Raum und man kann sie leicht erreichen, manchmal holt man sich durch Freiberufler
zusätzliches Wissen ins Haus.
Während symfony mehr eine Behörde ist. Viele Gänge und Räume, manchmal verwinkelt aber es ist alles in dem Gebäude was man braucht.
Vergleicht einfach mal die Ordnerstruktur der beiden. Rails hat sehr viel weniger Unterordner, alle Controller und Views sind z.B. in einem Ordner, während symfony die Contoller und Views jeweil s in einem Modul steckt.
Nehmen wir auch noch das Model, hierbei verwendet rails das Entwurfsmuster des ActiveRecord
und symfony verwendet entweder Propel oder Doctrine als ORM Entwurfsmuster.
Dadurch wirkt rails automatisch schlanker als symfony, weil man bei symfony die ORM generieren muss. In den generierten Dateien kann man dann auch sehen welche Getter/Setter es gibt während man ja bei rails darauf ‘vertraut’, dass etwas vorhanden ist.

Written by Henrico

November 5th, 2010 at 1:38 pm

Posted in Code