2009-03-10 7 views
9

Quelqu'un peut-il me dire quels modèles de conception (le cas échéant) ont été utilisés lors de la création de Gmail? Je comprends le concept qui la sous-tend: mettre en attente certaines requêtes, incrémenter la barre lorsque chacune se termine, initialiser l'affichage lorsque toutes sont désactivées, mais je suis particulièrement intéressé par un motif de dessin spécifique que je peux imiter.Modèles de conception utilisés dans le JavaScript de Gmail?

Répondre

1

J'ai eu un problème similaire et l'ai résolu comme ceci: Le préchargement des données fonctionne en envoyant des requêtes asynchrones au serveur. Lorsque la barre de progression est visible, j'incrémente un compteur pour chaque requête. La taille de la barre de progression == compteur. Puisque les demandes sont envoyées rapidement, l'utilisateur ne remarque jamais que la valeur maximale de la barre de progression change.

À la demande une réponse arrive, j'avance la barre de progression une fois à chaque fois. C'est tout. Lorsque la dernière demande arrive, le préchargement est terminé.

Cela semble mieux lorsque les réponses sont petites et arrivent en succession rapide, mais cela fonctionne dans tous les cas.

+0

Merci; Je comprends le concept derrière l'agrégation de données à travers plusieurs appels ajax. Ce qui m'intéresse plus, c'est s'il y a un «nom» pour le motif que je peux regarder plus loin. –

+0

Si vous utilisez AJAX vous n'avez pas besoin d'être au courant des attentes –

+0

@Phillip: Je ne suis pas sûr qu'il ait un nom distinct. Je l'appellerais "optimisation des performances". –

0

Un truc que j'ai utilisé avec succès est de preload Ajax data as JSON: Dans le cadre du chargement de la page initiale, j'envoie des données de départ utiles comme JavaScript en ligne.

Questions connexes