applications web1 cours web services isima 3f3. applications web2 javascript inventé par...

18
Applications web 1 Applications web Cours Web Services ISIMA 3F3

Upload: athanase-josse

Post on 04-Apr-2015

111 views

Category:

Documents


0 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Applications web 18

Principe du Mashup