Bestes Web-Framework auf hohem Niveau, PHP bevorzugt

8

Ich fange an, eine ziemlich komplexe Webanwendung zu entwerfen. Die Implementierung wird wahrscheinlich in PHP erfolgen, aber wenn es überzeugende Gründe gibt, eine andere Umgebung zu wählen, könnte ich davon überzeugt sein.

Ich habe mir Tools wie Symfony und CakePHP angeschaut. Das Problem ist, dass es sich für eine moderne Web 2.0-Anwendung relativ niedrig anfühlt. Sie behandeln die grundlegenden Dinge wie MVC und Scaffolding, aber nicht die fortgeschrittenen UI-Elemente, nach denen ich suche. Hier sind einige meiner Anforderungen:

  • Einzelseitenarchitektur. Mit geringen Ausnahmen sollte keine Seitenaktualisierung durchgeführt werden. Alle Aktionen werden über Ajax ausgeführt, so wie es in Google Mail und in geringerem Maße in Facebook geschieht.
  • Ajax-Layout und Widget-Handhabung. Nicht nur die Anwendung aktualisiert die Seite nicht, sondern der Entwickler kann das Layout festlegen und verschiedene Widgets in verschiedene Teile der Seite laden. Dies ist etwas wie iGoogle, sollte aber besser integriert werden.
  • Unterstützt sowohl auf der Clientseite als auch auf der Serverseite für AJAX-Widgets. Es sollte trivial sein, das Ergebnis einer SELECT-Anweisung in einer AJAX-Tabelle / einem Array wie Ссылка anzuzeigen. Dies sollte auch für andere Widgets gelten
    • Bäume
    • Menüs
    • Formulare
  • Apropos Formulare: Es sollte eine einfache Integration mit clientseitiger Validierung
  • geben
  • Anmeldung / Authentifizierung / Autorisierung. Einschließlich aller Haushalt Dinge wie vergessen mein Passwort, CAPTCHAs, etc.

Es gibt noch mehr, aber ich denke, ich habe genug Details angegeben, damit Sie eine Vorstellung davon bekommen, wonach ich suche. Im Grunde möchte ich eine moderne Web 2.0-App entwickeln und das Schreiben, Testen und Debuggen von Dingen überspringen, die die meisten Webanwendungen benötigen. Und ja, ich weiß, ich kann YUI oder jQuery nehmen und es auf eine der regulären Plattformen schlagen, aber dann müsste ich den ganzen Klebstoff schreiben. Nun, wenn es Module gibt, die das tun, wäre das interessant. Also, wenn Sie sagen, nehmen Sie Symfony + Module xyz + jQuery und da ist Ihre Antwort, ich würde mich freuen, das zu hören.

Was schließlich die Priorität betrifft, suche ich nach etwas, das skalierbar, zuverlässig, ausgereift ist und mehr als etwas, das einfach zu erlernen und einzusetzen ist.

    
Ben 09.09.2010, 02:44
quelle

11 Antworten

2

Da du nach allem AJAX suchst, warum versuchst du nicht GWT? Es ist nicht PHP Ich stimme zu, aber es macht das Schreiben von AJAX-Anwendungen für Entwickler einfach.

    
vikmalhotra 09.09.2010 03:05
quelle
2

Ich stimme @Iznogood zu. Was du suchst, ist kein Framework, sondern ein Talent. Du kannst jedes Framework als "igoogle-ish" definieren, wenn du weißt, was du tust.

Ich schlage vor, einen Rahmen mit einer großen und aktiven Community wie CI, Cake und Jquery zu suchen. Suche / frage die Community nach den spezifischen Dingen, die du brauchst. Stecken Sie es ein und Presto!

Aber ich fürchte, Sie müssen etwas davon schreiben.

    
sheeks06 09.09.2010 03:08
quelle
2

Wenn es Ihnen nichts ausmacht, Java zu verwenden, gibt es ZK:

Ссылка

Ich würde es vorziehen, dies über GWT zu verwenden.

    
NullUserException 09.09.2010 03:21
quelle
2

In php sollten Sie Cjax Ссылка berücksichtigen.

Es ist MVC-orientiert und hat eine sehr generische API, mit voller Unterstützung für die Anpassung, einschließlich der Entwicklung von Plugins (Es gibt eine vollständige Plugin-API zur Verfügung, einschließlich Dokumentation, Plugins können in PHP und JavaScript in Kombination gebaut werden) siehe uploadify und validate plugins).

Es kann auf alle JavaScript-Funktionen, Objekte und Eigenschaften sowie Elementeigenschaften und Funktionen von PHP-Server-Seite mit einer Codezeile zugreifen.

In Cjax,

Sie können Ajax-Aktionen, innerhalb von Controllern (Ajax-Anfragen) ausführen - ohne eine Zeile JavaScript. Dadurch können Sie vollständig arbeiten, ohne die Seite zu aktualisieren. Sie können auch auf alle Js-Objekte von PHP zugreifen. Ein gutes Beispiel, das dies widerspiegelt, ist die "rekursive Ajax-Anfrage", siehe Demo. Die API kann beim Laden der Seite, beim Laden der Seite und bei jeder einzelnen Ajax-Anfrage verwendet werden.

Sehen Sie sich die Dokumentation und die mehr als 20 Demos an, und Sie werden nirgends eine einzige Zeile JavaScript sehen. Es erlaubt Ihnen, Elemente, Container zu manipulieren, Ajax anzufordern, Ajax-Formulare zu senden, Overlays zu erstellen, Dateien über Ajax hochzuladen, alles von der Server-Seite. Werfen Sie einen Blick auf die API-Tabelle.

Es hat sowohl serverseitige Ajax- als auch clientseitige Unterstützung (siehe Plugins-JavaScript-Dokumentation)

Es spielt gut mit jQuery - das Validierungs-Plugin in jQuery ist in PHP voll ausführbar ohne eine Zeile JavaScript (siehe Ссылка ohne eine benutzerdefinierte Zeile von Jquery innerhalb des Frameworks, es ist alles Plugin-Arbeit). Ajax-Antworten von Jquery werden auch automatisch von diesem Framework verarbeitet. Daher ist die Verwendung der Ajax-Funktion von Jquery API-ähnlich, als würden Sie die JavaScript-Ajax-Funktionen des Framework-Plugins verwenden.

Und Sie müssten sich nur die Zeit nehmen, mehr darüber zu erfahren, denn es gibt noch einige weitere Tools, die Sie sicherlich nützlich finden würden.

Derzeit gibt es zwei offizielle Veröffentlichungen, die generische Version und Es gibt eine offizielle Version von CodeIgnater für dieses Framework (und es ist die führende Ajax-Option für Codeignater) und funktioniert hervorragend in Verbindung mit anderen PHP-Frameworks und ohne sie.

  

Anmeldung / Authentifizierung / Autorisierung. Einschließlich aller Haushaltsführung   Dinge wie vergessen mein Passwort, CAPTCHAs, etc.

Dies ist etwas, das Sie in einem ajax-Controller erstellen können, das Framework selbst ist ein generisches "AJAX" -Framework. Wenn Sie also nach keinen ajax-Funktionen suchen, müssen Sie sie erstellen oder ein anderes PHP-Framework integrieren mit Cjax (wie Codeignater).

    
user1389386 12.06.2012 00:09
quelle
1

Ich weiß nicht, ob dies allen Ihren Kriterien entspricht oder ob Sie jemals eine finden werden. Allerdings mag ich das Zend Framework selbst.

    
Brad F Jacobs 09.09.2010 02:58
quelle
0

Was die UI- und AJAX-Portionen betrifft, spielt die serverseitige Technologie wenig eine Rolle, und es geht eher um browserseitige Technologie- und Interaktionsmechanismen sowie DOM-Manipulation.

jQuery ist mein Favorit dafür. Was das PHP-Backend anbelangt, tendiere ich dazu, es mit meiner eigenen Codebase zu entwickeln, die im Laufe der Jahre mit mir gewachsen ist.

Aber all das erfordert viel Übung, Wissen, Bildung, Forschung, Lesen und Posten von Fragen zu StackOverflow.com;)

    
jeffkee 09.09.2010 03:14
quelle
0

Ich würde das symfony PHP-Framework empfehlen, da es sehr gute Unterstützung für jedes Feature bietet, das Sie erwähnt haben, und es kann leicht in Zend Framework integriert werden - ab der Version 2.0, die in diesem Jahr kommt, würde es in das Paket integriert werden. Sie können Symfony einfach so einstellen, dass es AJAX-Anfragen bearbeitet, so dass es eine perfekte Server-Seite für die transparente Layer-Verarbeitung ist.

Wenn ich mir THAT heavy AJAX anschaue, würde ich empfehlen, nach einem guten JavaScript-Framework zu suchen, wie zB Ext.JS, das alle clientseitigen Funktionalitäten behandelt.

    
Tomasz Kowalczyk 09.09.2010 15:46
quelle
0

Für den Front-End-Teil Ihrer App möchten Sie vielleicht SproutCore ( Ссылка ) ansehen. Das Erstellen einer Webanwendung mit SproutCore ähnelt eher dem Konfigurieren von Komponenten als dem Schreiben von Code. Es gibt keinen Klebecode. Auf dem Backend müssen Sie nur JSON akzeptieren und ausgeben.

    
Toshio 10.09.2010 13:04
quelle
0

Hängt davon ab, auf welcher Ebene Sie sich befinden. Wenn du mit "Framework" so etwas wie Zend oder Symphony meinst, dann sind die Großen um ehrlich zu sein alle ungefähr so ​​gut wie einander. Sie alle haben starke und schwache Punkte, aber keiner wird Ihre Kriterien wirklich erfüllen.

Aber Ihre Frage impliziert, dass Sie nach etwas mehr als diesem Rahmen suchen. Vielleicht suchen Sie eine ausgewachsene CMS-Plattform wie Drupal, Joomla oder Wordpress?

In diesem Fall müssen Sie wiederum Ihre Bedürfnisse in Bezug auf die Fähigkeiten und Fallstricke jedes Systems abwägen.

Drupal zum Beispiel hat eine Menge Module, ist sehr leistungsfähig und einfach, um eigene Module zu schreiben, aber ist nicht objektorientiert und macht MVC nicht wirklich, also wenn das deine Tasche ist, dann kannst du es finden schwer zu verstehen. Wordpress ist viel einfacher, schnell in Gang zu kommen, ist aber weniger flexibel, wenn man sich erst einmal damit beschäftigt.

Aber wieder haben sie alle Stärken und Schwächen. Wenn man eindeutig der Beste wäre, wäre es eine einfache Wahl. Aber am Ende des Tages ist es vielleicht besser, mehrere gute Qualitätsoptionen zur Auswahl zu haben.

    
Spudley 10.09.2010 13:16
quelle
0

Sieh dir Ext JS an, es ist ziemlich gut. Wenn es sich um ein kommerzielles Projekt handelt, ist es nicht kostenlos, aber auch nicht zu teuer. Es hat auch eine GWT-Version, wenn Sie das bevorzugen. Dies ist nur für das Frontend, aber es ist nicht zu kompliziert, ein Backend zu verwenden, das json ausgeben kann.

    
einarmagnus 10.09.2010 13:23
quelle
-2

CakePHP ist ziemlich gut

    
Adam 09.09.2010 02:59
quelle

Tags und Links