PHP-Framework für Webapplikationen - Beispiel Adressverwaltung.
von benedikt Rookie vor ca einem Jahr
Ich möchte meine Adressverwaltung, die bisher über eine Access-Datenbank läuft – neu programmieren. Dazu schwebt mir eine Server-basierte Lösung auf PHP/MySQL-Basis vor. Ich habe bereits mit dem MVC-Ansatz gearbeitet, und möchte diesen auch hierzu verwenden. Allerdings fehlt mir noch das geeignete Framwork.
Welches ist da geeignet – es sollte intuitiv zu erlernen sein und den Codeaufwand möglichst gering halten. Wichtig wäre mir eine Datenversionierung.
Nachträglich bearbeitet am 10.07.10 15:09
- Tags:
- php 42
9 Antworten
von rbq. Nerd vor ca einem Jahr
symfony wäre meine persönliche Präferenz. Das Projekt hat eine hervorragende Dokumentation inkl. einiger Bücher. In deutscher Sprache lässt es etwas nach, es gibt aber trotzdem ausreichend Material. Es gibt Generatoren für ein einfaches CRUD-Interface als Ausgangsbasis (oder ein fertiges, aber nicht so gut modifizierbares, Admin-Interface) und für Propel ein Plugin, das einem Model Versionsierung als Verhalten hinzufügt (sfPropelVersionableBehaviorPlugin). Der Nachteil ist evtl., dass symfony recht stark auf Professionalität und Best-Practices abzielt, man sollte z. B. keine Scheu vor der Shell mitbringen und Zugriff auf den Server haben.
Zend Framework ist gut dokumentiert und außerdem durch Veröffentlichungen diverser Verlage auch in deutscher Sprache prima abgedeckt. Vorteil ist, dass dieses Projekt am ehesten einem Industriestandard nahe kommt, so dass das Erlernen auf jeden Fall eine gute Investition ist. Nachteil könnte sein, dass es von den genannten am wenigsten “frameworkig” ist. Die losere Koppelung der Komponenten bedeuten einerseits mehr Freiheit, andererseits ist evtl. mehr Hirnschmalz zum Entwurf von Dingen nötig, die bei den anderen Tools vorgegeben sind.
CakePHP ist wohl das “Joomla” unter den Frameworks, am ehesten für Hobbyisten geeignet und sollte problemlos auf dem Webspace vom Massenhoster laufen. Mit CodeIgniter verhält es sich ähnlich. Ich gebe allerdings zu, dass ich bei diesen Kandidaten mehr Vorurteile als Wissen habe.
Eine sinnvolle Option wäre in einigen Projekten vllt. noch Silverstripe. Die Dokumentation ist eher bescheiden, und das einzige erhältliche Buch glänzt auch nicht gerade durch einen logischen Aufbau. Dafür gehen Modellierung und Templating flott von der Hand und man bekommt ein CMS drum herum für lau.
Nachträglich bearbeitet am 07.07.10 08:54
TEAM
2 Punkte
von t.quensen Geek vor ca einem Jahr
Ein relativ leicht zu lernendes Framework ist CodeIgniter, eine mächtigere Alternative wäre Symfony… hier ist der Einstieg vergleichsweise kompliziert, die spätere Arbeit dafür sehr schnell und einfach.
Versionisierung können beide mit Hilfe von Doctrine (ist bei Symfony Standard, und kann bei CodeIgniter leicht nachinstalliert werden)
In deinem Fall würde ich dir erstmal CodeIgniter empfehlen, auch weil dein Projekt recht simpel aussieht!
Wenn du dafür allerdings viel Zeit hast solltest du dir (auch) Symfony anschauen – wenn manns erstmal beherrscht will man nicht mehr Ohne ;)
Nachträglich bearbeitet am 06.07.10 16:44
von ludwig99 Nerd vor ca einem Jahr
symfony wäre auch meine Empfehlung, wir haben damit u.a. auch eine Adressverwaltung realisiert. Das Framework ist modern und gut dokumentiert!
Nachträglich bearbeitet am 06.07.10 16:44
von tacker Geek vor ca einem Jahr
Schau dir mal CakePHP an.
Nachträglich bearbeitet am 07.07.10 13:03
Links
von virtualmachine Geek vor ca einem Jahr
Ich würde ebenfalls Symfony empfehlen. Der Einstieg ist ein wenig komplex, aber das Projekt hat eine sehr umfangreiche Dokumentation.
von benedikt Rookie vor ca einem Jahr
Vielen Dank für euern Input. Ich werde mich wohl mit Symfony beschäftigen.
Silverstripe verwende ich bereits für ein Webseiten-Projekt, für eine Webapplikation ist es meines Erachtens aber zweite Wahl. – Du hast recht, rbq, wenn du sagst, es sei schlecht dokumentiert, aber für Webseiten ist es bestens geeignet und erfordert nur wenig Einarbeitung. Es gibt halt viele Features, die man nur entdeckt, wenn man sich mal in den Chat oder ins Forum begibt und dort liest und mitschreibt.
von hirngerichtet Newbie vor ca einem Jahr
Ich empfehle weiter noch das yii-Framework oder auch KohanaPHP. Letzteres wäre ein CodeIgniter fork.
cheers
von fcool Newbie vor ca einem Jahr
In Deutschland noch weitestgehend unbekannt, aber ein absolut überzeugendes Framework ist:
QCubed
http://qcu.be
Es erinnert stark an Symfony, nutzt jedoch statt eines auf Meta-Programmierung-basierenden Ansatz einen Codegenerator, der aus den eigenen Tabellen einen wunderschönes Klassenmodell generiert.
Ich kann jedem wärmstens empfehlen mal einen Blick in die Screencasts zu werfen. Ich selbst habe mit Symfony begonnen. Seit dem ich qcu.be kenne, konnte ich mich mit keinem Framework mehr anfreunden.
Aus meiner Sicht ist das absolute Alleinstellungsmerkmal, dass die üblichen Anforderungen von “Webprogrammierung” (Cookies, Requests, etc) so gut gekapselt werden, dass man tatsächlich einfach eine Anwendung schreibt und Ereignisse definiert. Dabei bleibt es in all meinen bisherigen Anwendungszenarien performant und gut wartbar.
Viel Erfolg!
von fcool Newbie vor ca einem Jahr
Kurzer Nachtrag:
Besonders zu bemerken ist auch, dass es sich zum Beispiel nahtlos mit anderen Frameworks kombinieren lässt. Ich habe sehr gute Erfahrungen gemacht, einzelne Funktionen aus dem ZendFramework oder ezComponents zu integrieren.
Antwort schreiben
Um eine Antwort schreiben zu können, sollest du dich zuvor anmelden.









100.000+ Community-User. Mach mit!
Unser neuestes Video auf YouTube:
Weitere Videos findest in unserem t3n-YouTube-ChannelCloud Coding, Google+ für iPhone und Facebook App Center [TechnikLOAD 83]
Unsere RSS-Feeds
Wer steckt hinter t3n?
Welche Köpfe stecken hinter t3n und wie kannst du ihnen bei Facebook, Google+ oder Twitter folgen? Wirf doch mal einen Blick auf unsere Teamseite.
Das t3n-Team