Astuce incolore : Ce téléchargement a été corrigé, merci de retélécharger cette version chinoise du tutoriel. Désolé pour le désagrément causé!
Partie 1 Repenser les applications Web Chapitre 1 Une nouvelle approche de la conception Web
1.1 Pourquoi avez-vous besoin d'un client riche Ajax ?
1.1.1 Comparaison de l'expérience utilisateur
1.1.2 Retard du réseau
1.1.3 Interaction asynchrone
1.1.4 Modèles d'utilisation exclusifs ou transitoires
1.1.5 Oubliez le Web
1.2 Quatre principes de base d'Ajax
1.2.1 Les applications, et non le contenu, se trouvent dans le navigateur
1.2.2 Le serveur délivre des données plutôt que du contenu
1.2.3 L'interaction avec l'utilisateur devient fluide et continue
1.2.4 Programmation disciplinée et sérieuse
1.3 Clients riches Ajax dans le monde réel
1.3.1 Situation actuelle
1.3.2 Google Maps
1.4 Alternatives à Ajax
1.4.1 Solution basée sur Macromedia Flash
1.4.2 Java Web Start et technologies associées
1.5 Résumé
1.6 Ressources Chapitre 2 Débutants en Ajax
2.1 Éléments clés d'Ajax
2.2 Utiliser JavaScript pour améliorer l'expérience utilisateur
2.3 Utilisez CSS pour définir l'apparence de votre application
2.3.1 Sélecteurs CSS
2.3.2 Propriétés des styles CSS
2.3.3 Exemple CSS simple
2.4 Organiser les vues avec DOM
2.4.1 Utiliser JavaScript pour manipuler le DOM
2.4.2 Rechercher des nœuds DOM
2.4.3 Créer des nœuds DOM
2.4.4 Ajouter des styles aux documents
2.4.5 Raccourci : Utiliser l'attribut innerHTML
2.5 Chargement asynchrone des données grâce à la technologie XML
2.5.1 IFrame
2.5.2 Objets XMLDocument et XMLHttpRequest
2.5.3 Envoyer la demande au serveur
2.5.4 Surveiller les requêtes à l'aide des fonctions de rappel
2.5.5 Cycle de vie complet
2.6 En quoi l'Ajax est-il différent ?
2.7 Résumé
2.8 Ressources Chapitre 3 Mettre Ajax en ordre
3.1 Du chaos à l'ordre
3.1.1 Modèles : créer un vocabulaire commun
3.1.2 Refactorisation et Ajax
3.1.3 Maintenir l'équilibre
3.1.4 Reconstruction du combat réel
3.2 Quelques études de cas de petites refactorisations
3.2.1 Incohérence entre navigateurs : modes Façade et Adaptateur
3.2.2 Fonction de traitement des événements de gestion : mode observateur
3.2.3 Réutiliser les fonctions de traitement des opérations utilisateur : mode commande
3.2.4 Conserver une référence unique à une ressource : modèle Singleton
3.3 Modèle-Vue-Contrôleur
3.4 MVC côté serveur Web
3.4.1 Serveur Web Ajax sans modèles
3.4.2 Reconstruire le modèle de domaine
3.4.3 Séparer le contenu de la présentation
3.5 Bibliothèques et frameworks tiers
3.5.1 Bibliothèques multi-navigateurs
3.5.2 Composants d'interface utilisateur et suites de composants d'interface utilisateur
3.5.3 Cadre d'application
3.6 Résumé
3.7 Ressources Partie 2 Technologie de base Chapitre 4 Pages en tant qu'applications
4.1 Un type différent de MVC
4.1.1 Répétition du modèle MVC à différentes échelles
4.1.2 Appliquer MVC côté navigateur
4.2 Vues dans les applications Ajax
4.2.1 Séparer la logique des vues
4.2.2 Gardez les vues et la logique séparées
4.3 Contrôleurs dans les applications Ajax
4.3.1 Fonctions traditionnelles de gestion des événements JavaScript
4.3.2 Modèle d'événement du W3C
4.3.3 Implémentation d'un modèle d'événement flexible en JavaScript
4.4 Modèles dans les applications Ajax
4.4.1 Modélisation de domaines métiers à l'aide de JavaScript
4.4.2 Interagir avec le serveur
4.5 Générer des vues à partir de modèles
4.5.1 Réflexion des objets JavaScript
4.5.2 Travailler avec des tableaux et des objets
4.5.3 Ajout d'un contrôleur
4.6 Résumé
4.7 Ressources Chapitre 5 Le rôle du serveur
5.1 Travailler avec le serveur
5.2 Écriture de code côté serveur
5.2.1 Langages d'implémentation populaires
5.2.2 Architecture à N niveaux
5.2.3 Maintenir les modèles de domaine côté client et côté serveur
5.3 Vue d’ensemble : conception universelle côté serveur
5.3.1 Codage simple du serveur Web sans utiliser de frames
5.3.2 Utilisation du cadre de workflow Model2
5.3.3 Utilisation de frameworks basés sur des composants
5.3.4 Utilisation d'une architecture orientée services
5.4 Détails : échange de données
5.4.1 Interaction client uniquement
5.4.2 Présentation de l'exemple du navigateur de planète
5.4.3 Penser du point de vue d'une page Web : interaction centrée sur le contenu
5.4.4 Penser en termes de plug-ins : interaction centrée sur les scripts
5.4.5 Penser du point de vue de l'application : les interactions centrées sur les données
5.5 Écrire des données sur le serveur
5.5.1 Utilisation de formulaires HTML
5.5.2 Utilisation de l'objet XMLHttpRequest
5.5.3 Gérer efficacement les mises à jour des utilisateurs
5.6 Résumé
5.7 Ressources Partie 3 Ajax de niveau professionnel
Chapitre 6 Expérience utilisateur
6.1 Faites ce qu'il faut : développer des applications de haute qualité
6.1.1 Réactivité
6.1.2 Robustesse
6.1.3 Cohérence
6.1.4 Simplicité
6.1.5 Mettez-le en pratique
6.2 Tenir les utilisateurs informés
6.2.1 Traitement des réponses à vos propres demandes
6.2.2 Gestion des mises à jour soumises par d'autres utilisateurs
6.3 Conception d'un système de notification pour Ajax
6.3.1 Notifications de modélisation
6.3.2 Définir les exigences de l'interface utilisateur
6.4 Mettre en œuvre le cadre de notification
6.4.1 Afficher l'icône de la barre d'état
6.4.2 Afficher des informations de notification détaillées
6.4.3 Intégration
6.5 Utiliser le cadre de notification pour gérer les requêtes réseau
6.6 Représentation de l'actualité des données
6.6.1 Définir un format de surbrillance simple
6.6.2 Mise en évidence avec la bibliothèque d'effets Scriptaculous
6.7 Résumé
6.8 Ressources Chapitre 7 Sécurité et Ajax
7.1 JavaScript et sécurité du navigateur
7.1.1 Introduction de la politique du serveur source
7.1.2 Considérations liées à Ajax
7.1.3 Problèmes de sous-domaine
7.1.4 Sécurité multi-navigateurs
7.2 Communication à l'aide de services distants
7.2.1 Service à distance de l'agent
7.2.2 Utilisation des services Web
7.3 Protection des données confidentielles
7.3.1 Intermédiaires
7.3.2 Utiliser HTTP sécurisé
7.3.3 Chiffrement des données à l'aide de JavaScript sur HTTP simple
7.4 Stratégie d'accès au flux de données Ajax
7.4.1 Conception d'une couche Web sécurisée
7.4.2 Restreindre l'accès aux données Web
7.5 Résumé
7.6 Ressources Chapitre 8 Performances
8.1 Qu'est-ce que la performance ?
8.2 Vitesse d'exécution de JavaScript
8.2.1 Mesurer le temps d'application à la dure
8.2.2 Utilisation de l'analyseur de performances Venkman
8.2.3 Optimiser la vitesse d'exécution des applications Ajax
8.3 Utilisation de la mémoire JavaScript
8.3.1 Éviter les fuites de mémoire
8.3.2 Considérations particulières pour l'Ajax
8.4 Concevoir en pensant aux performances
8.4.1 Mesure de l'utilisation de la mémoire
8.4.2 Exemple simple
8.4.3 Résultats : Comment réduire l'utilisation de la mémoire de 150x
8.5 Résumé
8.6 Ressources Partie 4 Étude de cas Ajax Chapitre 9 Fonction de double combinaison dynamique
9.1 Script de double combinaison
9.1.1 Limites des solutions clients
9.1.2 Limites des solutions côté serveur
9.1.3 Solutions basées sur Ajax
9.2 Architecture cliente
9.2.1 Formulaire de conception
9.2.2 Conception des interactions client/serveur
9.3 Implémentation de VB.NET côté serveur
9.3.1 Définir le format de réponse XML
9.3.2 Écriture du code côté serveur
9.4 Afficher les résultats
9.4.1 Parcours de documents XML
9.4.2 Application de CSS
9.5 Problèmes avancés
9.5.1 Autoriser les requêtes à sélection multiple
9.5.2 Développer la combinaison double en une combinaison triple
9.6 Refactorisation
9.6.1 Net.ContentLoader nouveau et amélioré
9.6.2 Création de composants composites doubles
9.7 Résumé Chapitre 10 Invites de pré-saisie
10.1 10.1 Examiner l'application des invites de pré-saisie
10.1.3 10.1.1 Caractéristiques communes des invites de pré-saisie
10.1.4 10.1.2 Suggestion Google
10.1.3 Développement pratique des invites de pré-saisie Ajax
10.2 Framework côté serveur : C#
10.2.1 Serveur et base de données
10.2.2 Test du code côté serveur
10.3 Cadre client
10.3.1 HTML
10.3.2 JavaScript
10.3.3 Accéder au serveur
10.4 Fonctionnalité ajoutée : plusieurs éléments contenant différentes requêtes
10.5 10.5 Refactorisation
10.5.1 Jour 1 : Plan de jeu pour le développement du composant TextSuggest
10.5.2 Jour 2 : Création de TextSuggest – clair et configurable
10.5.3 Jour 3 : Activer Ajax
10.5.4 Jour 4 : Gestion des incidents
10.5.5 Jour 5 : interface utilisateur de la boîte de dialogue d'invite
10.5.6 Rapport de reconstruction
10.6 Résumé Chapitre 11 Portail Web Ajax amélioré
11.1 Le portail évolutif
11.1.1 Portail traditionnel
11.1.2 Portails dotés d'interfaces utilisateur riches
11.2 Architecture du portail Ajax utilisant Java
11.3 Connexion Ajax
11.3.1 Tableau des utilisateurs
11.3.2 Code de connexion côté serveur : implémenté en Java
11.3.3 Cadre de connexion client
11.4 Implémenter la fenêtre DHTML
11.4.1 Base de données de la fenêtre du portail
11.4.2 Code côté serveur pour les fenêtres du portail
11.4.3 Ajouter une bibliothèque JS externe
11.5 Ajouter la fonction de sauvegarde automatique Ajax
11.5.1 Modifier le code de la bibliothèque
11.5.2 Enregistrer automatiquement les informations dans la base de données
11.6 Refactorisation
11.6.1 Définir le constructeur
11.6.2 Modifier la bibliothèque AjaxWindows.js
11.6.3 Spécifier la commande protal
11.6.4 Exécution du traitement Ajax
11.6.5 Rapport de refactorisation
11.7 Résumé Chapitre 12 Recherche dynamique à l'aide de XSLT
12.1 Comprendre la technologie de recherche
12.1.1 Examen de la recherche traditionnelle
12.1.2 Inconvénients des approches Frame et Popup
12.1.3 Enquêter sur la recherche dynamique à l'aide d'Ajax et XSLT
12.1.4 Envoyer les résultats au client
12.2 Code client
12.2.1 Configuration du client
12.2.2 Démarrage du processus de recherche
12.3 Code PHP côté serveur
12.3.1Création de documents XML
12.3.2 Création de documents XSLT
12.4 Fusion de documents XSLT et XML
12.4.1 Utilisation de Microsoft IE
12.4.2 Utiliser Mozilla
12.5 Recherche complète
12.5.1 Application de feuilles de style en cascade
12.5.2 Améliorer la recherche
12.5.3 Décider d'utiliser XSLT
12.5.4 Surmonter les lacunes de la prise en charge des signets Ajax
12.6 Refactorisation
12.6.1 XSLTHelper
12.6.2 Composant de recherche dynamique
12.6.3 Rapport de refactorisation
12.7 Résumé Chapitre 13 Utilisation d'AJAX pour créer des applications autonomes
13.1 Lecture d'informations de l'extérieur
13.1.1 Recherche de flux XML
13.1.2 Structure RSS
13.2 Créer des interfaces utilisateur riches
13.2.1 Processus
13.2.2 Cadres HTML sans tableaux
13.2.3 Utiliser la méthode CSS pour la composition
13.3 Chargement des flux RSS
13.3.1 Portée mondiale
13.3.2 Fonction de préchargement Ajax
13.4 Ajouter des effets de dégradé riches
13.4.1 Règles d'opacité entre navigateurs
13.4.2 Implémentation de dégradés de fondu entrant/sortant
13.4.3 Intégration du minuteur JavaScript
13.5 Fonctions supplémentaires
13.5.1 Insérer des flux supplémentaires
13.5.2 Fonctions de saut et de pause intégrées
13.6 Éviter les contraintes du projet
13.6.1 Surmonter les limitations de sécurité de Mozilla
13.6.2 Modifier le champ d'application
13.7 Refactorisation
13.7.1 Modèle de lecteur RSS
13.7.2 Affichage du lecteur RSS
13.7.3 Contrôleur de lecteur RSS
13.7.4 Rapport de refactorisation
13.8 Résumé Annexe A Boîte à outils Ajax
A.1 Choisissez le bon ensemble d'outils pour travailler plus intelligemment
A.1.1 Obtenir les bons outils
A.1.2 Créez vos propres outils
A.1.3 Boîte à outils de maintenance
A.2 Éditeurs et IDE
A.2.1 Quelles fonctionnalités sont nécessaires dans un éditeur de code
A.2.2 Outils actuels
A.3 Débogueur
A.3.1 Pourquoi utiliser un débogueur
A.3.2 Débogueur JavaScript
A.3.3 Débogueur HTTP
A.3.4 Créez votre propre console de sortie multi-navigateurs
A.4 Inspecteur DOM
A.4.1 Utilisation de l'inspecteur DOM de Mozilla
A.4.2 Inspecteur DOM d’IE
A.5 Installer l'extension Firefox
A.6 Ressources Annexe B JavaScript pour les programmeurs orientés objet
B.1 JavaScript n'est pas Java
B.2 Objets en JavaScript
B.2.1 Créer un objet qui fonctionne immédiatement (ad hoc)
B.2.2 Constructeurs, classes et prototypes
B.2.3 Extension des classes intégrées
B.2.4 Héritage des prototypes
B.2.5 Réflexion des objets JavaScript
B.2.6 Interfaces et "duck typing"
B.3 Méthodes et fonctions
B.3.1 Les fonctions sont des citoyens de premier ordre
B.3.2 Attacher des fonctions à des objets
B.3.3 Emprunter des fonctions à d'autres objets
B.3.4 Gestion des événements Ajax et contexte de fonction
B.3.5 Fermetures en JavaScript
B.4 Résumé
Développer