Tutoriel ExtJS N°2 : votre première application ExtJS

////Tutoriel ExtJS N°2 : votre première application ExtJS

=/tutoriel-extjs-n1-premiere-application-extjs-6/


promo-formation-extjs-paris-lyon-2.png Découvrez simplement avec Objis les arguments qui font d’ExtJS 4 un framework augmentant la productivité des développeurs d’écrans web professionnels. Créez votre première application ExtJS 4.

Prérequis

 Installation ExtJS

Objectifs

 comprendre le squelette d’une application ExtJS 4

 identifier valeur ajoutée ExtJS

Liens utiles

 Installation plugin Eclipse ‘spKet’ pour AutoCompletion javascript ->http://www.scribd.com/doc/43810349/Tutorial-Spket-Setting-Up-Eclipse-IDE-for-Ext-JS-and-JQuery-Development] ([étapes)

 Spket et ExtJS 4

 Exemple de build (creation de votre .jsb3 à importer dans spket) ->http://existdissolve.com/2011/08/extjs-4-my-first-build/] ([demo helloExtJS

ext_logo.gif

Programme

 Préparation répertoire librairies ExtJS

 Déploiement ‘Hello ExtJS’ avec ExtJS 3

 Déploiement ‘Hello ExtJS’ avec ExtJS 4

 Analyse du rendu visuel

 Analyse du code source

 Optimisation / Refactoring de code

Durée

 30min

Préparation librairies Ext 3 et Ext 4

Nous allons ci-dessous créer une application ‘Hello ExtJS’ et la tester avec ExtJS 3.3 et ExtJS 4.

Nous avons installé les 2 versions du framework dans un répertoire ‘lib’ créé dans le répertoire ‘www’ de wamp :

tutoriel-extjs-hello-arborescence-wamp-1

Afin de ne pas avoir à modifier le code source pour préciser le framework cible (que nous référencerons par /lib/extjs), nous serons amenés à renomer l’un ou l’autre de ces répertoire.

En particuliers, lorsque nous testerons le code avec ExtJS 3.3.3, l’arborescence sera la suivante (répertoire extjs-3.3.3 renommé en extjs)

tutoriel-extjs-hello-arborescence-wamp-3

et lorsque nous testerons le code avec ExtJS 4.0.0, l’arborescence sera la suivante (répertoire extjs-4.0.0 renommé en extjs)

tutoriel-extjs-hello-arborescence-wamp-2

Déploiement projet cible avec ExtJS 3.3.3

 Crééez un répertoire ‘formationextjs’ à la racine de votre serveur web.

 Téléchargez le document suivant qui contient l’unique fichier du projet

Tutoriel2_helloextjs

 Dézippez-le dans le répertoire ‘formationextjs’ créé ci-dessus. vous obtenez ceci .

tutorie-extjs-hello-extjs

 Renommez le répertoire /lib/etxjs-3.3.3 en /lib/estjs

Rendu avec code ExtJS3 / Librairie ExtJS 3

 démarrez votre serveur web et pointez celui-ci vers l’url : http://localhost/formationextjs/Tutoriel2_helloextjs/ . Vous obtenez l’écran suivant :

tutoriel-extjs-hello-extjs-rendu

Déploiement projet cible avec ExtJS 4

Rendu avec code ExtJS3 / Librairie ExtJS 4

 Renommez le répertoire /lib/etxjs en /lib/estjs-3.3.3

 Renommez le répertoire /lib/etxjs-4.0.0 en /lib/estjs

 attaquez à nouveau l’url http://localhost/formationextjs/Tutoriel2_helloextjs/ . Le rendu est le suivant

tutoriel-extjs-hello-extjs-rendu-extjs4

Nous allons commenter cet écran dans la section suivante.

Analyse du rendu

QUESTION 1 : Que se passe t’il lorsque vous approchez la souris de l’en tête de la boîte de dialogue ?

tutoriel-extjs-hello-glisser-deposer

— > vous pouvez faire un glisser-déposer de la boîte de dialogue !

QUESTION 2 : Que se passe t’il lorsque vous approchez la souris de la croix de fermeture ? Et lorsque vous cliquez sur la croix ?

tutoriel-extjs-hello-rollover-icone-fermeture

 Expliquer

QUESTION 3 : Que se passe t’il lorsque vous approchez la souris du bouton OK ? Et lorsque vous cliquez sur le bouton ?

tutoriel-extjs-hello-rollover-bouton-ok

 Expliquer

QUESTION 4 :: en faisant un glisser-déposer de la boîte, possible de ‘sortir’ la boîte de la zone du navigateur ?

tutoriel-extjs-hello-bord-fenetre

 Expliquer

QUESTION 5 :: est-il possible pour l’utilisateur de modifier la taille de la boite de dialogue ?

Analyse du code source

Nous allons analyser le code source du fichier index.html . Ce code source a été créé pour le framework ExtJS 3.3, dont l’arborescence est la suivante :

arborescence-extjs-3

Remarque : nous avons vu plus haut que le code ‘tourne’ aussi bien avec le framework ExtJS 4.0.0

tutoriel-extjs-source

— 1 : le fichier /resources/css/ext-all.css (présent dans ExtJS 3 et ExtJS 4) concatène tous les css de tous les composants visuels d’ExtJS. Sans la présence de ce fichier, voici à quoi ressemble l’écran.

tutoriel-extjs-rendu-sans-css

INFO : Si vous souhaiter modifier le look d’un composant avec ExtJS 3, il est recommandé d’ajouter à APRES ce css un css spécifique qui va surcharger ce dernier.

INFO : ExtJS 4 fournir une couche supplémentaire pour la modification de thème, et ce à l’aide des frameworks Compass & Saas.

— 2 : extjs-base.js contient les fonctionalités centrales d’ExtJS , et fournit une interface pour communication avec le navigateur. Ce fichier changerait si on voulait intégrer JQuery ou Prototype avec ExtJS

REMARQUE : le répertoire ‘adapter’ n’existe pas sous ExtJS 4.

— 3 : ext-all-debug.js/ext-all.js (présent auussi dans ExtJS 4): les composants visuels sont là ! mode debug lors du développement.

— 4 : ExtJS utilise en interne une image de 1*1 pixel pour assurer fonctionnalité de compatibilité CSS inter navigateur.

— 5 : C’est ici , en une ligne, que nous créons notre boîte de dialogue . Nous utilisons la fonction alert de l’objet Ext.Msg , qui prend en paramêtre une fonction.

Notre fonction anonyme sera appelée par ExtJS aussitôt que tous les objets DOM de la page seront chargés. C’est là un service rendu par Ext.onReady .

— 6 : Notre page est vide.

Optimisation / Refactoring

Comment rendre notre code plus modulaire, plus maintenable, plus évolutif ?

technique 1

tutoriel-extjs-hello-refactoring-1

 Expliquer.

technique 2

tutoriel-extjs-hello-refactoring-2

 Expliquer.

Code 100% ExtJS 4

Analysez et mettez en oeuvre le code suivant :

demo-extjs4-cours

Expliquez .

Quelles différences / similitudes avec le code ExtJS 3 ?

Conclusion

Ce tutoriel vous a permis de voir ExtJS en action.

Il nous a suffit d’une seule ligne de code pour créer notre application. ExtJS a géré beaucoup de choses pour nous (glisser-deposer , fermeture fenêtre, thème graphique par défaut…).

Correction

Tutoriel2_helloextjs_corrige

Prochaine formation ExtJS

promo-formation-extjs-paris-lyon-2.png

2018-01-31T14:19:00+01:00

Contactez nous

241 rue DUGUESCLIN, 69003 Lyon

Web : Objis : spécialiste formation Java