Bei der Entwicklung von AJAX-Programmen machen viele Menschen einige häufige Fehler. Einige Fehler können die Funktionen und Leistung des AJAX-Programms gefährden und dazu führen, dass alle Vorteile des AJAX-Programms verloren gehen. Hier stellt Ihnen der Autor die sieben Todsünden vor, auf die Sie bei der Entwicklung von AJAX-Programmen achten müssen.
AJAX ist eine gute Sache, denn es ermöglicht Entwicklern, dynamischere Anwendungen schneller und effizienter zu erstellen. Aber es hat auch seine eigenen Mängel.
Auf den ersten Blick könnte es so aussehen, als ob ein bisschen gesunder Menschenverstand diese Fallstricke verhindern könnte, und bis zu einem gewissen Grad tut es das auch. Doch im Vergleich zu seinem Konkurrenten DHTML ist die Architektur des AJAX-Programms völlig anders. Ganz gleich, wie viel gesunden Menschenverstand Sie bei Ihren Bemühungen zur Anwendungsentwicklung an den Tag legen, Sie sollten aus den Lehren derer lernen, die vor Ihnen gekommen sind. In diesem Artikel bezeichnen wir diese Fehler als die „Sieben Todsünden“, sie sind jedoch nicht repräsentativ für alle Fehler.
Bevor wir etwas über die sieben fatalen Fehler bei der AJAX-Entwicklung erfahren, werfen wir einen Blick auf sieben weniger schwerwiegende Fehler. Jeder macht diese Fehler. Führen Sie eine Google-Suche durch und Sie werden sehen, wie häufig diese Fehler auftreten.
sieben Ordnungswidrigkeiten
1. Missbrauch der Zurück-Schaltfläche – Viele Menschen machen diesen Fehler und die Zurück-Schaltfläche ist in vielen Web-Experience-Programmen zu einem Muss geworden. Viele unerfahrene AJAX-Entwickler fügen aus verschiedenen Gründen die Zurück-Schaltfläche zu ihren AJAX-Programmen hinzu, stellen jedoch fest, dass die Zurück-Schaltfläche die Programmfunktionalität beeinträchtigt. Dies liegt vor allem daran, dass Javascript keine sehr benutzerfreundliche Programmiersprache ist. Zweitens müssen Entwickler die Entwicklungsideen von AJAX neu erlernen.
Für diejenigen, die AJAX noch nicht kennen, ist es nicht einfach, die Vorstellung zu akzeptieren, dass der Zurück-Button keine gute Lösung ist. Wenn wir uns am Aktualisierungspunkt der Seite befinden oder die Funktion „Rückgängig“ verwenden müssen, können wir die „Zurück-Taste“ in Betracht ziehen. Sie müssen jedoch vor dem Codieren zweimal überlegen, da es sonst leicht zu wiederholten Aktualisierungen kommt.
2. Den Benutzer nicht über die Ergebnisse des Vorgangs informieren – Ein Teil der Funktionsweise von AJAX besteht darin, dass es nicht den üblichen Web-Benutzeroberflächen-Loader verwendet. Daher müssen Sie einige visuelle Hinweise entwerfen, damit Benutzer verstehen, was passiert.
3. Übersehene Links – Dies ist ebenfalls ein Standard-AJAX-Fehler: das Weglassen eines URL-Links, den externe Benutzer ausschneiden und einfügen können. Wir alle haben schon einmal eine URL kopiert und an jemand anderen gesendet. Wenn wir AJAX verwenden, können wir Links nur durch reine manuelle Eingabe an andere weitergeben. Warum? Denn in AJAX-Anwendungen stellt der Server diese Seite nicht automatisch in Javascript generiert zur Verfügung. Übersehen Sie nicht diese häufigste Funktion in Web-Apps, an der Ihre Benutzer interessiert sein könnten. Bitte nehmen Sie sich einen Moment Zeit, um dem Benutzer die URL-Adresse mitzuteilen, da der Server keine bereitstellt.
4. Verwenden Sie Inhaltskontrolle anstelle von Seitenkontrolle – Wenn Sie nach dynamischer Inhaltskontrolle suchen, kann der Durchbruch der AJAX-Anwendung bei der traditionellen Client-Server-Interaktionsmethode ein großes Geschenk für Sie sein. Allerdings hat dies auch seine eigenen Nachteile: Sie haben zwar eine große Kontrolle über das Neuschreiben von Inhalten an einer bestimmten Stelle auf der Seite, um das Interaktionserlebnis des Benutzers anzupassen, am Ende kann es jedoch sein, dass die Seite unvollständig ist.
In vielen Fällen konzentrieren wir uns auf die Verarbeitung eines bestimmten Teils der Seite und vergessen, dass der Server die Seite nicht aktualisiert. Dies kann zu überfüllten Seiten und einer schlechten Benutzererfahrung führen: Wenn sie die Seite aufrufen, sehen sie möglicherweise eine veraltete Seite. Bitte behalten Sie die gesamte Seite im Auge; stellen Sie sicher, dass alle Seiten mit dynamischem Inhalt aktualisiert werden.
5. Müde Spider – Der Vorteil von AJAX liegt in der großen Textmenge, die der Seite ohne Neuinstallation bereitgestellt werden kann. Der Nachteil von AJAX liegt auch in der großen Textmenge, die der Seite ohne Neuinstallation bereitgestellt werden kann. Wenn eine App suchmaschinenfreundlich gestaltet ist, sollten Sie sich vorstellen können, was passieren könnte. Ganz gleich, was auf der Seite passiert, stellen Sie sicher, dass oben ausreichend Text steht, damit die Spinnen ihren Spaß haben.
6. Verstümmelte Zeichen – AJAX kann nicht mehrere Zeichensätze unterstützen. Dabei handelt es sich nicht um eine Einschränkung auf Leben oder Tod, aber wenn man dies vergisst, kann dies zu echten Problemen führen. Der einfachste Zeichensatz ist UTF-8. Egal welchen Zeichensatz Ihr Javascript sendet, vergessen Sie nicht, ihn richtig zu kodieren und den serverseitigen Zeichensatz basierend auf dem Inhalt festzulegen.
7. Für Benutzer, die Javascript nicht unterstützen, werden keine Eingabeaufforderungen bereitgestellt. Einige Browser unterstützen Javascript nicht und diese Benutzer können nicht verstehen, was vor sich geht. Bitte geben Sie ihnen ein paar Tipps.
Die oben genannten Fehler sind leicht zu finden. Die wirklichen Probleme werden leicht übersehen.
sieben Todsünden
1. Lassen Sie den Speicher überlaufen – Jeder, der sich schon lange mit der Entwicklung beschäftigt, weiß, was Zirkelverweise sind und versteht den Schaden, den Zirkelverweise für die Speicherverwaltung mit sich bringen. Das von AJAX verwendete Javascript ist eine Speicherverwaltungssprache. Mit anderen Worten: Javascript verfügt über eine integrierte Paketsammelfunktion, sodass es Variablen extrahieren kann, die nicht mehr von Referenzpfaden verwendet werden, und den von diesen Variablen verwendeten Speicher neu zuweisen kann.
Jeder, der schon lange in der Entwicklung tätig ist, weiß, was Zirkelverweise sind und welche Gefahren sie für die Speicherverwaltung mit sich bringen. Das von AJAX verwendete Javascript ist eine Speicherverwaltungssprache. Mit anderen Worten: Javascript verfügt über eine integrierte Paketsammelfunktion, sodass es Variablen extrahieren kann, die nicht mehr von Referenzpfaden verwendet werden, und den von diesen Variablen verwendeten Speicher neu zuweisen kann.
Hier kommt nun das Problem: Im Dateiobjektmodell kann jeder DOM-Knoten im Dateibaum von anderen im Baum vorhandenen Elementen referenziert werden, unabhängig davon, ob er von anderen Objekten referenziert wird! Daher muss jedes Objekt, das im Paketkollektor als von einem DOM-Knoten zurückverwiesen markiert ist, in dieser Richtung Null sein, andernfalls bleibt sein Speicher zugewiesen.
2. Verstehen Sie nicht, was „asynchron“ bedeutet – Das Wort „asynchron“ kann leicht dazu führen, dass Benutzer, die damit nicht vertraut sind, nervös werden. Aber wenn die Web-App, die Sie für diese Benutzer entwerfen, eine Desktop-App ist, werden sie nicht verärgert sein. Dies ist ein entscheidender Designpunkt. Die meisten Web-Apps funktionieren sehr ähnlich wie ihre Desktop-Pendants. Bei Webanwendungen erwarten Benutzer jedoch, dass diese Illusion dazu führt, dass sie völlig anders sind.
Benutzer haben im Umgang mit Webbrowsern ganz andere Vorurteile und Erwartungen als mit Desktop-Anwendungen. Während also häufige Antworten zwischen der Seite und dem Server nett und effizient wären, würde es dem Benutzer schwindelig machen, wenn sich die Seite gleichzeitig selbst überarbeitet. Daher müssen Sie zwei Regeln befolgen und jede Änderung berücksichtigen, die in den Sichtbereich des Benutzers gelangt: Wenn das Update für den Benutzer nicht dringend ist, dann machen Sie das Upgrade sanft und übertragen Sie es nicht Die Interaktion der Anwendung ist sehr wichtig, daher sollten Aktualisierungen klar und offensichtlich sein.
3. Machen Sie den Server blind – die Reduzierung der Kommunikation zwischen Client und Server ist ein großes Problem, was vorher nicht der Fall war. Früher wusste die serverseitige Anwendung alles und konnte alles sehen: Jede Ausnahme, jedes Neuladen, jedes Ereignis konnte gesehen und protokolliert werden, und natürlich wusste der Server auch, was auf dem Client passierte, weil der Server Was angezeigt wird auf dem Bildschirm wird aufgezeichnet.
Dies ist bei AJAX-Anwendungen nicht der Fall. Wenn Ereignisse auftreten, sind diese Ereignisse unabhängig vom Server. Das heißt, wenn auf dem Client ein Problem auftritt, weiß der Server nicht sofort Bescheid. Erkennen und protokollieren Sie clientseitige Ereignisse und Ausnahmen an einem Ort, der es dem Server ermöglicht, Probleme aufzuspüren, die ein Eingreifen erfordern.
4. Verwenden Sie GET, um faul zu sein. Die Funktion von GET besteht darin, Daten abzurufen. Die Funktion von POST besteht darin, GET einzurichten. Verwenden Sie GET nicht unangemessen und versuchen Sie es erst gar nicht, wenn Sie es für harmlos halten. GET-Aktionen ändern den Status, und Links, die den Status ändern, können Benutzer verwirren. Die meisten glauben, dass Links der Navigation und nicht der Funktionalität dienen.
5. Keine Überwachung von Datentypen – Javascript ist nicht Teil des .NET Frameworks. Auch wenn das ein wenig traurig ist, verdeutlicht es doch ein Problem, auf das wir möglicherweise stoßen: Sicherstellen, dass Javascript die Datentypen auf der Plattform versteht, auf der es ausgeführt wird, und umgekehrt für .NET oder andere. Möglicherweise gibt es mehrere Konvertierungen, die Sie nacheinander durchführen müssen. Beispielsweise stellt die Ajax.NET Pro-Bibliothek Konverter bereit, die .NET- und Javascript-Objektnotationen konvertieren.
6. Einige Programme können nicht geschlossen werden – die dynamische Generierung von Inhalten ohne Aktualisierung der Seite wäre sehr schlecht, wenn es keine Schließzeit gibt. Wie viele Webseiten haben Sie gesehen, die länger als Hansard of Congress sind? Wenn die Webseite auf unbestimmte Zeit erweitert wird, wird es zweifellos ein Albtraum für Benutzer sein. Denken Sie nur daran, was Benutzer von Anwendungen halten, die niemals aufhören. Gestalten Sie Ihre Web-App dynamisch, aber im Rahmen des Machbaren.
7. Machen Sie Javascript und DOM unabhängig voneinander. Denken Sie daran, dass AJAX auf der Struktur „Model-View-Controller“ (Model-View-Controller) basiert. Bitte nehmen Sie dies ernst. Javascript gehört zur Modellebene, DOM gehört zur visuellen Ebene und der Controller ist der Eheberater, der sie verbindet. Stellen Sie sicher, dass Ihre Webdateien unabhängig von Javascript sind (damit sie für Benutzer nützlicher sind, die kein Javascript unterstützen) – es sei denn, der Inhalt selbst ist nur für Benutzer von Bedeutung, die Javascript verwenden. Verwenden Sie in diesem Fall Javascript, um den Inhalt zu erstellen