2009-03-10 9 views
9

Kann mir jemand sagen, welche Designmuster (wenn überhaupt) beim Erstellen von Google Mail verwendet wurden? Ich verstehe das Konzept dahinter - einige Anfragen in die Warteschlange stellen, die Balken nach jedem Schritt inkrementieren, die Anzeige starten, wenn alle nicht funktionieren -, aber ich bin speziell interessiert, ob es ein bestimmtes Designmuster gibt, mit dem ich die Features nachahmen kann.Entwurfsmuster, die in Google Mail-JavaScript verwendet werden?

Antwort

1

Ich hatte ein ähnliches Problem und löste es so: Das Vorladen von Daten funktioniert, indem asynchrone Anfragen an den Server gesendet werden. Wenn der Fortschrittsbalken sichtbar ist, inkrementiere ich einen Zähler für jede Anfrage. Die Größe des Fortschrittsbalkens == counter. Da die Anforderungen schnell gesendet werden, bemerkt der Benutzer niemals, dass sich der Maximalwert der Fortschrittsleiste ändert.

Als Antwort kommt Antwort, ich schalte den Fortschrittsbalken jedes Mal vor. Das ist alles. Wenn die letzte Anfrage eintrifft, ist das Vorladen beendet.

Dies sieht besser aus, wenn die Antworten klein sind und schnell hintereinander ankommen, aber es funktioniert in allen Fällen.

+0

Danke; Ich verstehe das Konzept hinter der Aggregation von Daten durch mehrere Ajax-Aufrufe. Was mich mehr interessiert, ist, ob es einen "Namen" für das Muster gibt, auf den ich näher eingehen kann. –

+0

Wenn Sie AJAX verwenden, müssen Sie die Wartezeiten nicht kennen –

+0

@Phillip: Ich bin nicht sicher, dass es einen eindeutigen Namen hat. Ich würde es "Leistungsoptimierung" nennen. –

0

Ein Trick, den ich erfolgreich verwendet habe, ist preload Ajax data as JSON: Als Teil der ersten Seite Laden, sende ich nützliche Seed-Daten als Inline-JavaScript.

Verwandte Themen