![Page 1: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/1.jpg)
Applications web 1
Applications web
Cours Web Services ISIMA 3F3
![Page 2: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/2.jpg)
Applications web 2
JavaScript
Inventé par Netscape ... sans rapport avec Java.
Standardisé par l’ECMA, spécification ECMA-262 : ECMAScript.http://www.ecma-international.org/publications/standards/Ecma-262.htm
Langage dynamique et faiblement typé, basé sur l’utilisation de prototypes.
Utilisé dans : Applications web, ActionScript (Flash, Flex), Adobe Acrobat, ...
![Page 3: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/3.jpg)
Applications web 3
Duck typing
« Si je vois un animal qui vole comme un canard, cancane comme un canard, et nage comme un canard, alors j'appelle cet animal un canard ».
![Page 4: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/4.jpg)
Applications web 4
![Page 5: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/5.jpg)
Applications web 5
Caractéristiques du langage
Un objet est soit simple (entier, chaine, etc) ou complexe (tableaux, maps).
Une propriété d'un objet complexe peut être une fonction !
Les objets ne sont jamais fermés : on peut toujours les étendre.
Supporte des éléments de programmation fonctionnelle (e.g., closures).
![Page 6: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/6.jpg)
Applications web 6
![Page 7: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/7.jpg)
Applications web 7
Implémentation de Javascript dans les navigateurs
Mozilla Firefox : JavaScript 1.8.1
Google Chrome : JavaScript
Microsoft Internet Explorer : JScript 5.8
Opera : ECMAScript
![Page 8: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/8.jpg)
Applications web 8
Frameworks JavaScript
jQuery, YUI, Prototype, Dojo…
Bibliothèques facilitant l'écriture de JavaScript :
• Gestion d'évènements
• Manipulation DOM
• Animations et composants
• Ajax
• Masque les différences d'implémentation entre browsers
... et plus encore.
![Page 9: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/9.jpg)
Applications web 9
AJAX
Asynchronous Javascript and XML
Permettre de construire des applications web a contenu dynamique
Javascript + CSS + DOM + XML/JSON + XMLHttpRequest
![Page 10: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/10.jpg)
Applications web 10
![Page 11: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/11.jpg)
Applications web 11
Objet XMLHttpRequest
Objet mis à disposition par le navigateur pour effectuer des requêtes GET et POST.
Inventé ... par Microsoft dans ActiveX !
Implémenté par les navigateurs modernes (> 2002).
Données transférables :
• Texte
• XML
• JSON
• Fragments HTML
![Page 12: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/12.jpg)
Applications web 12
AJAX et les librairies
Toutes les framework JavaScript offrent des facilités à l’utilisation de XMLHttpRequest
jQuery:
![Page 13: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/13.jpg)
Applications web 13
Communications et AJAX
![Page 14: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/14.jpg)
Applications web 14
![Page 15: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/15.jpg)
Applications web 15
![Page 16: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/16.jpg)
Applications web 16
Use case AJAX
Interface dynamique
Validation à la volée
Complétion de champs
Mashups
…
![Page 17: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/17.jpg)
Applications web 17
Composition de services, mashups, portails
Les services unitaires peuvent être intégrés
Par un navigateur : Mashup
Par un serveur pour du contenu web : Portail
Par une application pour offrir un service plus évolué : Composition
![Page 18: Applications web1 Cours Web Services ISIMA 3F3. Applications web2 JavaScript Inventé par Netscape... sans rapport avec Java. Standardisé par l’ECMA, spécification](https://reader036.vdocuments.net/reader036/viewer/2022062417/551d9dc7497959293b8e327e/html5/thumbnails/18.jpg)
Applications web 18
Principe du Mashup