AJAX ist ein Schmerz in den Arsch, weil es im Wesentlichen bedeutet, dass Sie zwei Sätze ähnlichem Code schreiben müssen: einen für Browser mit aktiviertem JavaScript und solche ohne.
Nicht nur das, sondern Sie müssen JavaScript-Ereignisse verbinden, um sich in Ihre Modelle einzuklinken und die Ergebnisse anzuzeigen.
Und wenn all das nicht schlimm genug war, müssen Sie eine Adressänderung mit der Anfrage senden, sonst wird der Benutzer nicht in der Lage sein, "richtig zurück zu klicken" (wenn verwirrt, schauen Sie, was mit der Adressleiste passiert wann Sie klicken auf Links in Google Mail).
Wir suchen nach etwas, das die Vorausschau und die Designziele mit all diesen Bedenken berücksichtigt.
Leistung und Sicherheit sind auch offensichtliche Hauptanliegen.
Wir lieben auch config-basierte Systeme, wo Sie nicht viel Code schreiben müssen, sondern einfach in ein einfach zu lesendes Konfigurationsformat legen.
Es ist wie nach dem heiligen Gral fragen, richtig?
Ja, das NOLOH PHP Framework (die Seite selbst wurde in NOLOH geschrieben) ist dieser heilige Gral. NOLOH wurde von Grund auf entwickelt, um diese Probleme anzugehen. Sie entwickeln in einer einzigen Sprache auf der Server-Seite und es kümmert sich um den Rest. Sie müssen sich keine Sorgen um AJAX machen oder Probleme mit dem Browser lösen. NOLOH gibt es seit 2005 und wird in verschiedenen großen und kleinen Unternehmen eingesetzt. Es übertrifft den Leistungswettbewerb aufgrund seines geringen Gewichts und seiner On-Demand-Leistung deutlich.
NOLOH hat vor kurzem bei Confoo einen Vortrag gehalten. Die wichtigsten Teile dieser Präsentation auf Ihre Frage sind die Live-Beispiele und das grundlegende Coding .
Wenn Sie neugierig auf die Macht von NOLOH sind, können Sie sich auch diese Steve Jobs ansehen, wie noch eine Sache Demonstration des kommenden automatischen Comet.
Disclaimer: Ich bin Mitbegründer von NOLOH.
Viel Spaß.
Hast du Pyjamas
angeschaut?Zitat von der Website
Warum sollte ich es benutzen?
Sie können Webanwendungen in schreiben Python - eine lesbare Programmierung Sprache - statt in HTML und Javascript, die beide werden schnell unlesbar für gerade mittelgroße Anwendungen. Ihre Das Design der Anwendung kann davon profitieren High - Level - Konzepte kapseln Klassen und Module (anstatt zu versuchen um so viel HTML wie möglich zu gestalten auf einer Seite); Sie können wiederverwenden - und Import - Klassen und Module.
Auch die AJAX-Bibliothek kümmert sich darum die gesamte Browser-Interoperabilität Probleme in Ihrem Namen, Sie verlassen frei, sich auf die Anwendung zu konzentrieren Entwicklung statt alles zu lernen die "üblichen" Browser-Inkompatibilitäten.
Zwei Ansätze für dieses Problem allgemein. Eines ist für das Framework, das alles versucht, wie Microsoft ASP.NET mit seinem Ajax-Toolkit. Dies umfasst serverseitige Steuerelemente, die Ajax-Funktionalität mit allen für Sie generierten Client- und Server-Code erzeugen. Zum Beispiel ermöglicht ihr UpdatePanel-Steuerelement teilweise Seitenaktualisierungen über einen Ajax-Aufruf. Es ist jedoch nicht allgemein beliebt als Rahmen im Allgemeinen, weil ihre Page- und Control-Modelle manchmal als zu schwergewichtig und überbläht angesehen werden.
Ein zweiter, "schlankerer" Ansatz wäre, die Bedenken zu trennen. Lassen Sie jQuery oder eine ähnliche Bibliothek browserübergreifende Inkonsistenzen und die Client-Seite des Ajax-Aufrufs behandeln und verwenden Sie ein einfaches serverseitiges Web-Framework wie Groovy on Grails oder Microsoft ASP.NET MVC (es gibt andere wie I '). Ich bin sicher, die Leute werden darauf hinweisen). Jedes anständige Framework sollte in der Lage sein, entweder JSON- oder XML-Daten als Reaktion auf einen Ajax-Aufruf einfach zu erzeugen.
Wie für Browser mit deaktiviertem JavaScript - das ist das einundzwanzigste Jahrhundert. Müssen Sie wirklich für sie sorgen?
Der jQuery BBQ: Zurück Button & amp; Query Library zielt darauf ab, mit Ajax "Zurück Button" Problem zu helfen. Sie können es überprüfen, wenn Sie jQuery für Ihre Ajax-Funktionalität in Betracht ziehen.
Tags und Links python .net php ajax frameworks