Introduction aux Technologies Web élaborée par Marouan OMEZZINE

48
Introduction aux technologies WEB M. Marouan OMEZZINE Elève ingénieur JuniorENSI & E.N.S.I. http://www.junior-ensi.org http://www.slideshares.net/marouan.omezzine 1 Version 1.2070208 Last update : 07-Fév-2008

description

Une introduction / ébauche aux technologies Web (Web, évolution, web 2.0, php, ajax...) faite dans le cadre des formations inter-membres du club Junior ENSI (http://www.junior-ensi.org/) de l'école nationale des sciences de l'informatique (http://www.ensi.rnu.tn/).

Transcript of Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Page 1: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Introduction aux technologies WEB

M. Marouan OMEZZINE

Elève ingénieurJuniorENSI & E.N.S.I.http://www.junior-ensi.orghttp://www.slideshares.net/marouan.omezzine

1

Version 1.2070208 Last update : 07-Fév-2008

Page 2: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Plan

•Introduction à la techno. (démystification).

•Le Web 2.0.•PHP•Ajax

2

Page 3: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Introduction L’Internet est la fondation sur laquelle

est construit le Web. Le Web est le service qui offre sur

l’Internet une interface graphique permettant par simple pointage d’accéder à des documents sur le réseau.

L’accès aux documents se fait en utilisant un logiciel de consultation (browser, aussi appelé navigateur).

3

Page 4: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Client – serveur : modèle statique

4

Client

Serveur Web

Dans ce modèle le Client va demander une page web statique.Le Serveur Web lui transmet la page demandée telle quelle est sauvegardée sur son disque.

Une forme de dynamisme peut être introduite par du JavaScript (peut présenter une incompatibilité avec les navigateurs).

le client demande la page ma_page.html

le serveur transmet la page au client

Page 5: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Les pages web statiques

• Adaptée pour des sites web de petite taille, les sites vitrines, les pages persos au contenu permanent ou rarement mis à jour.

• Ne sont pas adaptées pour des sites dont les informations font l'objet de modifications fréquentes(e-business) , les sites communautaires , les blogs …

• Pour modifier une page web statique, on utilise des éditeurs html (Dreamweaver, Ms FrontPage, Notepad++…):

5

Page 6: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Le contenu d’une page web statique• HTML - HyperText Markup Language est un

langage balisé permettant de décrire la structure et la présentation des documents pour le Web .

• CSS - Cascading Style Sheets . Il permet de :▫Le partage de Feuilles de Style entre plusieurs

documents HTML (modularité , charte commune sur un ensemble des documents …)

▫Avoir plusieurs présentations pour un même contenu (format papier , lecture sur écran …)

▫…

6

Page 7: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Le contenu d’une page web statique

7

• XHTML 1.0 est une simple reformulation de HTML 4 en application de XML 1.0. Il s'agit donc uniquement d'un changement de syntaxe, aucune fonctionnalité n'ayant été ajoutée ou retirée. ▫ Exemple :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>Exemple XHTML 1.0</title></head><body><h1> bonjour</h1></body></html>

• XML, microcodes . . .

Page 8: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Client – serveur : modèle dynamique

8

Client Serveur Web

Serveur d’applications

2211

3344

1 -le Client demande la page ma_page.php1 -le Client demande la page ma_page.php2-le Serveur Web sollicite le Serveur d’applications (plateforme PHP, .Net, etc.)2-le Serveur Web sollicite le Serveur d’applications (plateforme PHP, .Net, etc.)3-le Serveur d’application exécute la requête et transmet le résultat au Serveur Web3-le Serveur d’application exécute la requête et transmet le résultat au Serveur Web4 -le Serveur Web transmet la page au Client4 -le Serveur Web transmet la page au Client

Page 9: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Les pages web dynamique

•Page dynamique : construite à la demande (On the fly) par le serveur, en fonction de critères spécifiques.▫Exemple : le nombre de visiteurs, une

opération de calcul, extraire une information de la base de données…etc.

•Présentation et contenu adaptés de manière interactive, en fonction des produits, des internautes, des langues, etc.

9

Page 10: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Intérêt d’un langage dynamique• Accès aux bases de données

• Assemblage et transformation de différents morceaux de pages réutilisables en fonction des besoins

• Reconnaissance de certaines caractéristiques du visiteur (cookie ou session par exemple)

• Fonctionnalités diverses : formulaires, envoi de mails automatiques, la création de graphiques, la protection de certaines pages par mot de passe, la production de fichiers à divers formats (PDF, texte, …), la gestion automatique des hyperliens, RSS, etc.

• XML et ses possibilités infinies.

10

Page 11: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Exemple de plateforme, langage et Framework pour développer un contenu web dynamique.

• .Net (asp.net)• J2EE •PHP•Ruby On Rails•…

11

Page 12: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Le Web 2.0

12

Page 13: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Web 2.0

13

Le concept Web 2.0 désigne la transition que vit actuellement le World Wide Web. Internet passe en effet aujourd’hui d'une collection de sites Web à une plate-forme informatique à part entière, fournissant des applications Web aux utilisateurs.

C’est quoi le Web 2.0 ? Est-ce qu’il y a des versions du Web

!!?

Page 14: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Caractéristiques générales

•le site ne doit pas être un jardin secret, c'est-à-dire qu'il doit être aisé de faire rentrer ou sortir des informations du système.

• l'utilisateur doit rester propriétaire de ses propres données.

• le site doit être entièrement utilisable à travers un navigateur standard.

• le site doit présenter des aspects de réseaux sociaux.

14

Page 15: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Caractéristiques techniques (1)

•HTML (ou XHTML se faisant passer pour du HTML puisque Internet Explorer n'accepte pas de documents XHTML se déclarant comme tels).

•Un sous ensemble de CSS 2.0 supporté par Internet Explorer. CSS 3.0 est sortie depuis déjà quelques temps.

•Javascript.

15

Page 16: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Caractéristiques techniques (2)

•XML.•Syndication Atom ou RSS (RSS a été créé

par Netscape en 1999).•Protocole HTTP.•REST (thèse publiée en 2000).

▫http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

•Services web (les premières API XML-RPC pour Javascript ont été publiées en 2000).

16

Page 17: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Les Buzzwords

17

Page 18: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Web 2.0

18

Web 1.0Web 2.0

Page 19: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Web 2.0 (Infographie)

•Vibrant, high contrast colours•‘Special offer’ badges•Gloss / sheen•Bevelled edges•Gradients•Diagonal lines•Soft-focus effects (subtle outer glow)

19

What do people

consider tobe the “Web 2.0 Look”?

Destroy The “Web 2.0 Look” by Elliot Jay Stocks

Page 20: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Web 2.0 (Infographie)

20

Page 21: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

21

Page 22: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

22

Page 23: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Conclusion

23

Page 24: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Le Langage PHP

24

Page 25: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

PHP

25

PHP (PHP Hypertext Preprocessor), créé en 1994 par Rasmus Lerdorf, est un langage de scripts libre principalement utilisé pour être exécuté par un serveur HTTP, mais il peut fonctionner comme n'importe quel langage interprété de façon locale, en exécutant les programmes en ligne de commande.

Page 26: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Applications

•Forums•Recherche•Blogs•Chat•Génération de graph, courbe, image

dynamique.•Web Services•… la liste est trop longue !.

26

Page 27: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Simple

•Fidèle au principe KISS (Keep It Simple & Stupid).

• Fidèle au principe RAD (Rapid Application Development).

•Le manuel officiel est très claire et complet permettant ainsi de développer rapidement des applications PHP complètes.

•PHP est langage « communautaire » Les tuts, les exemples … sont abondant sur le net.

27

Page 28: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Portable•PHP est un langage interprété et non pas

compilé.• Conséquence directe : PHP est hautement

portable et peut fonctionner sur une variété de système ; UNIX, Microsoft Windows, Mac OS, and OS/2.

•Exemple d’exploitation de cette caractéristique : On développe notre application sous Windows et puis on déploie sous Linux. (le code fonctionne généralement sans aucune modification)

28

Page 29: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Open Source

•PHP est un langage open source; c.-à-d. que son code source est disponible sur le net sans aucune restriction d’utilisation ni d’installation.

•Avantages :▫Des prix compétitifs d’hébergement de

sites Web développé en PHP.▫Intégration rapide des nouvelles

technologies dans le cœur du langage.▫Faster bug fixes.

29

Page 30: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Extensible

•PHP possède une architecture extensible Evolutif selon les besoins.

•Exemple des add-on modules :▫Création dynamique de fichiers PDF,

fichiers SWF (des fichiers flash), connexion au IMAP and POP3 servers, interfaçage avec un très grand nombre de base de données (MySQL , Oracle, SQLite , DB2 …)

30

Page 31: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Exemple

31

Exemple d’un code PHP (imbriqué dans du code html) permettant d’avoir la date du système.

L'affichage que génère ce code est : On est le 07-02-2008

Page 32: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

PHP et le Job Trends ?!

32

Réponse

Page 33: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Ajax

33

Page 34: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Ajax

34

On ne parle pas d’un produit de nettoyage.

On ne parle pas de Ajax l’ancienne équipe

de Hatem Trabelsi.Asynchronous JavaScript And

XML

Page 35: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Rappel du modèle classique

35

La machine cliente envoie une requête au serveur.

Le serveur envoie sa la réponse à la requête au machine cliente.

Page 36: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Modèle Ajax

36

•Pour le modèle Ajax , les données sont transférées discrètement entre le client et le serveur.•Le serveur n’a plus besoin d’envoyer la page entière. Une expérience utilisateur plus riche : Un feedback plus rapide, plus de continuité dans les traitement (contrairement au start-stop momentum du web traditionel).

Page 37: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Ajax

•Ajax n’est pas une nouvelle technologie•Ajax est un ensemble de technologies.•Ajax est une architecture.

37

Page 38: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Ajax : A set of technologies

•(X)HTML et CSS: présentation visuelle •DOM (Document Object Model): page

découpée en objets .•Javascript et en particulier le fameux

objet XMLHTTPRequest pour manipuler des requêtes et des réponses.

38

Page 39: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Ajax : The architecture

39

Page 40: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

En pratique (exemple e-commande)

Exemple d’une procédure de paiement en ligne. Elle est souvent décomposée en plusieurs pages web :

1. Une pour rentrer nos coordonnées postales.

2. Une pour valider notre commande.3. Une pour saisir nos coordonnées

bancaires.4. Une dernière pour valider

définitivement.

40

Avec AJAX, l’idée serait de se dire : pourquoi faire 4 pages nécessitant 4 rechargements alors que seule une partie de la page a besoin d’être rechargée ?

Page 41: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Comment il fonctionne ?• Introduction d’un médiateur entre le

client et le serveur : le moteur AJAX.

• Il se charge du rendu de l’interface, de la communication avec le serveur et de toute réponse à une action de l’utilisateur qui ne requiert pas un transport avec le serveur.

• Il permet une interaction avec l’utilisateur de manière asynchrone.

41

Page 42: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Asynchronous Vs synchronous

42

Page 43: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Exemple de l’utilisation d’Ajax !

43

Autosuggest / Autocomplete with Ajax

http://www.ajaxdaddy.com/demo-bsn-autocomplete.html

Page 44: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Exemple de l’utilisation d’Ajax !

44

Css Dock Menu

http://www.ajaxdaddy.com/demo-css-dock-menu.html

Page 45: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Exemple de l’utilisation d’Ajax !

45

Google Maps

Page 46: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Contact• Email / msn : [email protected]• Skype : marouan.omezzzine• Slides :

http://www.slideshare.net/marouan.omezzine

46

Page 47: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Références1. Développer un site Web de qualité plateformes, standards et ergonomie.2. Destroy The “Web 2.0 Look” by Elliot Jay Stocks - elliotjaystocks.com/fowd3. Introduction au World Wide Web – Techniques de l’ingénieur4. Etude de cas : JavaScript, Ajax, Web 2.0 – Anonyme.5. What is Web 2.0? - By Andy Budd of Clearleft Ltd6. http://www.wikipedia.org7. http://blog.asoon.com8. http//www.indeed.com9. http://xmlfr.org/actualites/decid/051201-0001

47

Page 48: Introduction aux Technologies Web élaborée par Marouan OMEZZINE

Merci

48