Programmation Internet. Mikael DAUTREY Janvier 2006

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Programmation Internet. Mikael DAUTREY Janvier 2006 mikael.dautrey@isitix.com"

Transcription

1 Programmation Internet Mikael DAUTREY Janvier

2 Objectifs du module Acquérir des connaissances de base en programmation Internet Technologies Syntaxe des langages Modèles de programmation Mise en œuvre, test et intégration Présenter les schémas d architecture Internet Architecture n-tiers Séparation données / métier / présentation Implémentation du Modèle/Vue/Contrôleur (MVC) Modèles de données XML Confronter l approche conceptuelle avec sa mise en œuvre concrète à travers des exemples Java PHP 2

3 Programme du module Volume horaire 6 heures de cours 4 heures de Travaux Dirigés 14 heures de Travaux Pratiques Cours Présentation des technologies et des architectures Web Rappels sur Java Présentation de J2EE Architecture de Tomcat Travaux Dirigés Présentation du langage PHP, Eléments complémentaires concernant HTML, Javascript et les CSS Présentation des évolutions (4.x vers 5.x) Exercices Extensions de PHP Accès aux bases de données Traitement des flux XML RSS (optionnel) 3

4 Programme du module (2) Travaux dirigés Outils : JBuilder pour tous les travaux dirigés en Java Apache httpd + PHP5 + MySQL pour les travaux dirigés PHP Tomcat 2 séances de 2 heures sur RMI et Java à partir d un mini projet sur RMI 3 séances de 2 heures sur Tomcat Présentation, découverte de l environnement Tomcat Exercices simples sur les servlets Mini-projet sur les servlets 2 séances de 2 heures sur PHP Création et gestion d un formulaire HTML Accès aux bases de données Transformation des données extraites de la base en XML Présentation des données et affichage Intégration de données d un serveur externe par RSS 4

5 Ressources techniques Support de cours Code source des exemples Enoncés des exercices Documentation de référence du langage PHP Documentation de référence de JAVA Liens utiles L ensemble des ressources se trouvent sur 5

6 Programmation Internet, partie 1 Technologies de programmation Internet 6

7 Traitements client-serveur Web 7

8 Technologies côté client Couche réseau Echange HTTP SSL Streaming (via applets, plugs in ou contrôles ActiveX) : RSVP, MPEG3 + protocoles propriétaires Services DNS Couche de présentation, affichage du contenu MIME (Multipurpose Internet Mail Extension) HTML et la gestion des styles Balises et styles HTML Styles du navigateur CSS (Cascading Style Sheet) DOM (Document Object Model) 8

9 Technologies côté client (2) Données de session Cookies Variables de session Données de contexte / données du navigateur Données de formulaire (get/post) Interactivité URL HTML Scripting client Javascript Visual Basic Script (pour les navigateurs Microsoft) Plugs in Contrôles Active X Applets Java 9

10 Technologies côté serveur Couche réseau Front end HTTP SSL Streaming Back end Connections bases de données Web services Systèmes de fichiers distribués Traduction des URL Proxy + partage de charge Virtual hosting Gestion de répertoires utilisateurs 10

11 Technologies côté serveur (2) Données clients MIME Données utilisateurs Cookies Get/Post Session Contexte utilisateur Charge utile URL demandée Données serveurs Données statiques => répertoire Données dynamiques => plusieurs technologies de Web dynamique 11

12 Technologies côté serveur (3) Web dynamique Exécution d instructions en fonction des données clients 12

13 Technologies serveurs (4) Interface frontal / moteur CGI Module intégré dans le serveur HTTPD (DLL ou module Linux) Java / serveur d application Moteur de génération de pages Java PHP CGI / PERL, C, C++ ASP.NET Services et données accessibles Bases de données Outils de signatures électroniques Outils XML Outils de gestion de contenus Annuaires Système de gestion des droits et d authentification 13

14 Technologies de développement Web Echanges de données SOAP WSDL Réseau HTTP SSL URL Scripting client, interactivité client Javascript Visual Basic Script DOM Flash et ActionScript AJAX Langages de manipulations de données Expressions régulières XML XSLT XPath DOM XML DTD XMLSchema XForms XQuery RDF SQL Présentation HTML CSS XSL-FO XSLT XForms RSS 14

15 Technologies de développement Web (2) Technologies Serveur PHP Java + Servlets, JSP.NET, ASP (C#, VB, J#) CGI (C, PERL) J2EE Serveurs Apache HTTPD Apache Tomcat Microsoft IIS BEA Weblogic IBM Websphere Outils XML Saxon Sablotron Xerces Expat Apache Batik Apache FOP Outils divers PDFLib Cocoon ChartDirector ADOdb Clients divers Excel Word Business Object Messagerie SMTP POP, IMAP Adds-on des navigateurs Plugs in Active X Applets Java Bases de données MySQL PostGres «commerciales» : Sybase, Oracle, etc Outils de développement Visual Studio.Net Eclipse XML Spy Zend studio JBuilder JetBrain IntelliJ IDEA 15

16 Echanges de données SOAP Définition : Simple Object Access Protocol. SOAP est un protocole d échange dans un environnement distribué. SOAP est conceptuellement proche de technologies comme RMI ou les RPC. Il permet en effet à une application «cliente» de demander l exécution d un service sur une autre application «serveur» en lui transmettant L identification du service demandé Les paramètres de la demande et en recevant, en fin de procédure, le résultat de sa demande. La différence entre SOAP et les technologies type RMI ou RPC est le format des messages SOAP est XML. SOAP est une des briques de base des WebServices. Usage : SOAP est utilisé pour mettre en place des services Web au dessus d un protocole de transaction qui peut être (mais ce n est pas obligatoire) http Exemples : accès à un annuaire LDAP des utilisateurs. Accès au contenu d une banque de données. Echange d information entre services Web Lien : 16

17 Echanges de données (2) WSDL Définition : WSDL, Webservices Description Language, est un langage de description de services web. Usage : WSDL permet de créer, au niveau d un serveur SOAP, un dictionnaire des WebServices. Il permet donc à une application de découvrir, au moment de la connexion au service web, les règles d échange et de transaction associées au service. Il se rapproche en cela des interfaces type COM+, DCOM existant au niveau GUI dans Windows (qui sont des mécanismes système et non des mécanismes XML comme pour WSDL) Exemples : création d un annuaire de webservices. Génération automatique des webservices à partir de leur description en WSDL. Lien : 17

18 Echange de données (3) Usage des échanges de données Intégration de service Fourniture d API d échange entre serveurs Synchronisation souple entre services Limites des échanges de données Problèmes de synchronisation Gestion des transactions Performance Conclusion Très utile en gestion de contenu Plus difficile en transactionnel sur des gros volumes 18

19 Réseau HTTP Définition : Hyper Text Transfer Protocol. Protocole d échange réseau en mode connecté (utilisé au dessus de TCP) permettant à un client d émettre des requêtes et d obtenir des réponses d un serveur http. Usage : HTTP est utilisé, associé aux mécanismes des URL, pour demander de l information à un site Web depuis un client. Caractéristiques : 1. Le protocole HTTP repose sur un format de message défini dans le RFC1945 et RFC2616 disponibles sur le site du W3C 2. Le format de message comprend des headers et une charge utile. 3.Les headers permettent de véhiculer les options de l échange requête/réponse (MIME, GET/POST, redirection, erreurs, contexte client, contexte serveur, session, URL appelante et appelée, persistance de la connexion) 4.La charge utile contient les données transmises (généralement, il s agit de la page HTML renvoyée par le client au serveur) 5.Le protocole traite les URL et assure donc la traduction des noms FQDN (fully qualified domain name) en adresse IP en faisant appel au mécanisme de DNS (Domain Name Service) 6.L usage du protocole s est progressivement étendu de l échange de données entre un navigateur et un serveur Web pour couvrir également certains échanges entre serveurs. Exemples : Serveur Web 19

20 Réseau (2) SSL Définition : Secure Socket Layer, est une surcouche de TCP permettant de sécuriser une connexion sur TCP Caractéristiques : SSL (Secure Sockets Layer) est un protocole réseau de sécurisation des échanges introduit par Netscape en 1994, dans son navigateur. La version actuelle de SSL est la version 3.0. SSL a été le point de départ du protocole TLS (Transport Layer Security) de l IETF (Internet Engineering Task Force), décrit dans la RFC SSL reste beaucoup plus répandu que TLS et est supporté par la plupart des navigateurs et serveurs. SSL est un protocole intermédiaire entre le protocole de transport (niveau 4 OSI) et les couches supérieures (session, présentation, application) d une pile de protocole réseau. SSL peut donc s appuyer sur n importe quel protocole de transport en mode connecté et servir n importe quelles couches supérieures nécessitant un transport sécurisé en mode connecté. C est ce qui a fait son succès. Usage : SSL permet la mise en place simple et rapide d une version sécurisée des protocoles connectés d Internet (FTP, SMTP, http, Telnet) sur un canal crypté du serveur au navigateur. Il offre les fonctions suivantes : Cryptage du trafic du client au serveur (incluant les headers http, variables de sessions, données des formulaires, cookies) Contrôle d intégrité des données transmises entre le client et le serveur Authentification forte du serveur pour le client (navigateur) par certificat numérique Possibilité d une authentification forte du client (navigateur) par le serveur si le serveur le réclame au client à l ouverture de session Possibilité d un contrôle d accès du client par certificat 20

21 Réseau (3) SSL Synthèse de SSL : vue sur les messages échangés 21

22 Réseau (4) SSL Synthèse de SSL : vue sur les piles de protocole 22

23 Réseau (5) URL Définition : Uniform Ressource Locator, mécanisme de localisation (adressage + partie locale) des ressources distribuées sur un réseau Usage : Utilisé conjointement avec HTML et HTTP pour accéder à une page Web lors d une transaction entre un navigateur et un serveur Web. Caractéristiques : 1. Un préfixe donne le type du protocole (https, ftps, http, ftp, gopher, etc). Ce protocole est généralement associé à un port par défaut sur le serveur (Web = 80 par exemple) 2. L URL se décompose ensuite en une partie réseau et une partie locale 3. La partie réseau est l adresse FQDN (Fully Qualified Domain Name) ou IP du serveur qui peut être suivi, si nécessaire, de : et d un numéro de port. Cette adresse est traduite en adresse IP en utilisant le service DNS 4. La partie locale est gérée par le serveur. Par défaut, il s agit simplement du chemin relatif depuis la racine du serveur vers la ressource demandée. Des règles de traduction des URL peuvent être utilisées. 5. Les URLs sont également utilisés dans la norme XML pour définir de manière unique les espaces de noms 23

24 Réseau : documentation de standardisation (6) RFC http1.1: RFC2616 URL: RFC1738 MIME: RFC2045, 2046 et 2047 HTML 2.0: RFC1866 Cookies, gestion des sessions et des états: RFC2109 TCP: RFC793 Spécifications Netscape Cookies 24

25 Réseau (7) Intérêt de disposer des connaissances réseau Connaître et utiliser les mécanismes de base Redirection, traduction d URL, gestion des erreurs, etc Utiliser les informations de contexte renvoyés par http Type de navigateur, etc Etre en mesure de résoudre les problèmes rencontrés Gestion de session Cookies Etc Pouvoir sécuriser rapidement une connexion serveur en basculant de http vers https Optimiser la performance d un serveur Persistance Gestion des paramètres réseau Etc Utiliser des requêtes http pour faire autre chose que de l affichage Web 25

26 Scripting client, interactivité client Javascript Définition : langage interprété pouvant être inclus dans les pages HTML pour gérer les interactions entre l utilisateur et la page Web Usage : Inclus dans le code HTML via un balise spécifiquie ou via un lien URL sur un fichier externe joint à une page Web, Javascript s exécute sur événement utilisateur Caractéristiques : 1. La syntaxe est proche de Java. Javascript constitue une sorte de Java simplifiée adaptée au scripting sur un navigateur Web. 2.Ce sont les interactions entre l utilisateur, le client Web et la page Web qui déclenche les actions Javascript selon un modèle de programmation évènementielle. 3.Le langage est faiblement spécifié. Il existe donc des variantes du langage par famille de navigateurs voire au sein d une même famille de navigateurs. 4.Javascript supporte la programmation objet et en particulier le DOM, Document Object Model qui lui permet d accéder à l ensemble des objets de la page Web et du navigateur. Usage : Validation des données d un formulaire côté client. Menus déroulants. Images changeantes sur événement utilisateur. Visual Basic Script : Même principe que Javascript mais réservé à Microsoft Internet Explorer 26

27 Scripting client, interactivité client (2) DOM Définition : Document Object Model permettant l accès aux éléments d un document en utilisant une syntaxe objet. Usage : supporté par les derniers navigateurs, le DOM vient en complément des langages de script client comme Javascript et leur permet d accéder aux propriétés et méthodes objets contenus dans une page Caractéristiques : 1. La syntaxe est une syntaxe objet (objet/propriétés et méthodes/collections d objets). 2. Le DOM permet de gérer les évènements affectant les objets. 3. Le modèle sous-jacent, proche du DOM XML, est un modèle arborescent d objets ayant pour racine l objet document. 4. Les implémentations du modèle varient en fonction des familles de navigateurs et de la version dans une famille. Application : Affichage dynamique côté client. 27

28 Scripting client, interactivité client (3) Flash et Action Script Définition : Technologie propriétaire permettant de créer des animations (graphiques principalement) côté client Usage : Création d animation graphique client multimédia Caractéristiques : 1. La technologie s appuie sur un langage de dessin vectoriel et d interaction avec ces images vectorielles (ActionScript). 2. Le langage nécessite l installation, sur le navigateur, du plug-in de visualisation Flash. 3. La technologie sous-jacente permet également de créer des formulaires, etc mais est peu utilisée à cet effet. Applications : animation graphique 28

29 Scripting client, interactivité client (4) AJAX Définition : Asynchronous JavaScript and XML, AJAX est modèle de programmation client associant HML-DOM, Javascript et XML-XSLT pour permettre la gestion et le rafraîchissement de données XML en arrière plan d une page Web de manière transparente pour l utilisateur. Usage : Gestion de données XML côté client. Caractéristiques : 1. AJAX utilise l objet XMLHTTPRequest pour émettre des requêtes HTTP/XML en arrière plan d une page Web 2. Avec les dernières versions des navigateurs, il est possible de parser côté client les données XML récupérées avec le parser et des feuilles de styles XSLT. 3. Pour améliorer la performance des échanges, il peut être préférable d utiliser, à la place du couple XML+XSLT, JSON, Javascript Object Notation Applications : rafraîchissement de formulaires Web en fonction d interactions clients 29

30 Scripting client, interactivité client (4) Utilité du scripting client Améliorer l interactivité des applications Mettre en place une gestion de bonne qualité des formulaires Mettre en place les mécanismes interactifs classiques Menus déroulants Animations Etc 30

31 Description et manipulation de données Expression régulières Définition : langage de contrôle et format et de manipulation de chaînes de caractères Usage : recherche (search&replace) plein texte, contrôle de format dans des formulaires Caractéristiques : 1.Les expressions régulières s appuient sur une syntaxe spécifique associant, dans une même chaîne de caractères, caractères normaux, caractères «magiques» de précédence, substitution, généralisation. 2. La syntaxe est extrêmement puissante et concise, avec comme contrepartie d être complexe à lire, à écrire et à mettre au point. 3. L usage des expressions régulières nécessitent l installation de l outil de traitement des expressions régulières, bibliothèque de fonctions pour le langage de programmation cible, exécutable. 4. Les fonctions d utilisation des expressions régulières existent pour pratiquement tous les langages en standard. Une exception notable: VBScript sous Office 5. La syntaxe est portable entre les différents langages même s il existe des spécificités PERL, JAVA ou VB. Applications : contrôle de données de formulaires, définition de formats, parsing de test, définition de formats utilisateurs dans les schémas XML 31

32 Description et manipulation de données (2) XML Définition : extensible Markup Language, langage de description de contenu issu de SGML et permettant de structure le contenu en y insérant des markups. Usage : format de documents texte standardisé Caractéristiques : 1.XML est un langage de description de contenu. Il contient donc principalement des markups descriptifs 2.Cette approche descriptive 1. Permet d utiliser le langage dans de multiples applications en fonction de la sémantique que l on y introduit 2. Assure sa lisibilité par un être humain 3. Rend les développements réalisés à partir du langage plus facilement portable 3. XML est un langage minimaliste 1. Définition des règles d encodage des caractères 2. Définition des markups et de la manière de former les markups 3. Définition des éléments constituant un document bien formé 1. En-têtes et déclarations 2. Enchaînement des markups 4. Définition d outils complémentaires 1. Entités 2. Commentaires 3. Instructions de traitement 4. Sections de texte Applications : création de documents texte dans un format standard lisible par les parsers et outils XML 32

33 Description et manipulation de données (3) Fondements du langage XML Syntaxe Syntaxe Grammaire Encodage des caractères Syntaxe Tags Markups Octets Caractères Token Document Mots, champs Phrases, etc Indépendance par rapport aux données : s appuyer sur un ou des standards d encodage des caractères reconnu et supporté par l ensemble des machines Syntaxe : définir les règles de formation des tags et des markups et prendre en compte les interactions des markups entre eux et avec le texte Grammaire : prévoir une grammaire de base permettant de former un document et la possibilité d étendre cette grammaire par domaines 33

34 Description et manipulation de données (4) Extensions du langage XML Extensions Grammaire Extension 1 Grammaire Extension 2 Grammaire Extension 3 Grammaire Syntaxe niveau 2 Socle Syntaxe niveau 1 Encodage des caractères 34

35 Description et manipulation de données (5) Mécanisme XML Données + format + traitement => résultat Ce schéma est utile sous réserve De disposer d outils logiciels pour lire et d interpréter du XML Accès au DOM Accès aux éléments et à leurs valeurs De disposer d outils logiciels pour challenger un document par rapport à un schéma ou une DTD De disposer d outils logiciels pour appliquer des règles de transformation à un document Ces logiciels ou bibliothèques d utilitaires sont aujourd hui disponibles Viewer de XML Parser de XML Schémas XSL DOM 35

36 Description et manipulation de données (6) DTD Définition : Document Type Definition, langage de définition de formats de documents XML Usage : définir la norme des documents XML Caractéristiques : 1. La DTD répond à une syntaxe propre indépendante de la syntaxe de XML 2. Le langage des DTD est simple et permet de définir rapidement les principales caractéristiques d un document. 3. Le langage des DTD est limité. Il est donc plus adapté à des fins de normalisation (DTD de HTML, de XML, de XMLSchema, etc) qu à un usage applicatif 36

37 Description et manipulation de données (7) Outils et sur-couches de XML XSLT Définition : XML Stylesheet Language transformation, langage de transformation d un document XML Usage : transformation de données XML en tout format, XML, HTML, texte Caractéristiques : 1. XSLT est une surcouche de XML conforme à la syntaxe XML 2. XSLT posséde son propre espace de noms XML (balises et règles de cohérences des documents) 3. XSLT est un langage de transformation de contenus permettant de manipuler les données XML par bloc 4. Ce langage a des caractéristiques intéressantes 1. Navigation et sélection dans un document avec XPath (recherche et sélection d occurrences, déplacements verticaux et transversaux dans l arborescence du document) 2. Absence de variables au sens classique du terme 3. Usage de mécanismes de récursivité 4. Adaptation à la gestion de contenu (robustesse par rapport au format du document) Applications : transformation de données et documents XML 37

38 Description et manipulation de données (8) Outils et sur-couches de XML XMLSchema Définition : XML schema, langage de définition de documents XML Usage : définition du format d un document XML Caractéristiques : 1. XMLSchema est une surcouche de XML conforme à la syntaxe XML 2. XMLSchema posséde son propre espace de noms XML (balises et règles de cohérences des documents) 3. XMLSchema est un langage évolué de description de contenu XML 4. Ce langage a des caractéristiques intéressantes 1. Réutilisation des types et héritage 2. Définition de types complexes 3. Collections, séquences, etc Applications : à des fins documentaires, pour documenter la structure type d un document XML ou en production pour vérifier qu un document respecte bien un schéma 38

39 Description et manipulation de données (9) Outils et sur-couches de XML DOM Définition : Document Object Model, paradigme de programmation (ou une forme d API abstraite) permettant d accéder aux éléments d un document XML dans une syntaxe objet (même principe que pour le DOM HTML) Usage : parser des fichiers XML, accès aléatoire à des fichiers XML Caractéristiques : 1. Le DOM permet un accès aléatoire à un fichier XML, par opposition aux techniques de parsing type XSLT qui sont plutôt en mode flots de caractères. 2. Cette accès aléatoire à un document après son chargement dans le DOM permet ensuite d accéder, via des API à syntaxe objets, aux éléments du document. 3. Le DOM permet, avec des parsers comme SAXON, une programmation évènementielle en positionnant des handlers sur événements liés au parsing des documents. Applications : gestion de fichiers de configuration, gestion de formulaires interactifs 39

40 Description et manipulation de données (10) Outils et sur-couches de XML XQuery Définition : XML Query Language, langage de requête au sein d un document ou d un ensemble de documents XML Usage : rechercher des informations selon des critères complexes dans des documents XML (voire dans des bases de données, via des couches d abstraction ad hoc) Caractéristiques : 1. XQuery est une surcouche de XML conforme à la syntaxe XML. 2. XQuery posséde son propre espace de noms XML (balises et règles de cohérences des documents) 3. XQuery permet d exécuter en technologie XML des opérations voisines de celles exécutées en SQL 4. XQuery est récent, peu implémenté, peu utilisé. 5. XQuery est complexe. Applications : effectuer des recherches complexes (jointures) dans des documents XML 40

41 Description et manipulation de données (11) Outils et sur-couches de XML XForms Définition : XML Forms, langage de définition de formulaire en XML Usage : créer des formulaires publiables sous différentes formes (Web, Word, PDF, etc) en s appuyant sur un framework commun et en évitant de programmer chaque formulaire indépendamment des autres Caractéristiques : 1. XForms est une surcouche de XML conforme à la syntaxe XML. 2. XForms posséde son propre espace de noms XML (balises et règles de cohérences des documents) 3. XForms s appuie sur les autres technologies XML (schémas, XSLT, etc). 4. XForms recrée en XML une instance du Modèle/Vue/Contrôleur MVC 1. Modèle = modèle d affichage des données 2. Vue = vue sur les données 3. Contrôleur = contrôle des interactions vue<->modèle 5. XForms est une norme récente et complète. Il existe peu d implémentations complètes. Applications : mettre en place un serveur générique de publication de formulaires 41

42 Description et manipulation de données (12) Outils et sur-couches de XML RDF Définition : Ressource Description Framework, langage de description de contenu orienté Web Usage : échange de données sur le Web, syndication de contenu Caractéristiques : 1. RDF est une surcouche de XML conforme à la syntaxe XML. 2. RDF posséde son propre espace de noms XML (balises et règles de cohérences des documents) 3. RDF est un dictionnaire permettant de décrire des données Applications : Syndication de contenu entre site Web RSS : Définition Rich (RDF) Site Summary ou Really Simple Syndication : un format XML associé à un espace de noms particulier permettant de décrire simplement le contenu d une page ou d un site Web et ses évolutions. SQL : Search & Query Language 42

43 Description et manipulation de données (13) Utilisation des outils et technologies de manipulation des données Structurer le contenu Mettre en place une architecture n-tiers Contenu / présentation / métier Développer des composants réutilisables Mettre en place une architecture modulaire Simplifier l intégration et les évolutions de l application Test Maintenabilité Développer plus vite 43

44 Présentation de contenus HTML Définition : HyperText Markup Language Usage : pages HTML Caractéristiques : 1. Structuration du contenu en fonction (partielle) de la présentation. 2. HyperText = URL = Navigation 3. Markup = balises comme en XML 4. Les balises ont trois fonctions, 1. Une fonction «sémantique» par rapport à un modèle de documents simple (type h1, h2, h3, etc) 2. Une fonction de mise en page et de présentation du contenu 3. Une fonction de gestion de l interactivité et des échanges avec l utiliateur (formulaires et DOM) Applications : pages Web 44

45 Présentation de contenus (2) CSS Définition : Cascading StyleSheet Usage : définition des styles de présentation du contenu HTML Caractéristiques : 1. Surcharge des styles par défaut des balises HTML 2. Modèle hiérarchique avec des règles d héritage des styles entre les différents niveaux 3. Gestion du flot d affichage selon deux modes, blocs et en ligne 4. Insertion des règles de style dans la page ou dans un fichier à part lié par URL à la page dont le style est défini Applications : séparation contenu/présentation dans une page; factorisation des styles dans la page 45

46 Présentation de contenus (3) XSL-FO Définition : XSL-Formating Object, langage de mise en page de contenu Usage : génération de fichiers PDF, PostScript ou HTML à partir de contenu XML Caractéristiques : 1. Dérivé du langage XSL, XSL-FO définit des règles de mise en page du contenu sur différents niveaux, page, section, etc 2. Les règles de mise en page sont proches de celles des feuilles de style 3. La génération du fichier XSL-FO est réalisée à partir du fichier XML en lui appliquant une feuille de style XSL Applications : génération de document PDF à la volée à partir de données XML XSLT XSLT peut également être utilisé pour réaliser des mises en page HTML, txt, etc XForms : XForms comporte un volet «présentation du contenu» 46

47 Présentation de contenus (4) Utilisation des outils de présentation de contenus Mettre en place une architecture n-tiers Factoriser les modèles de contenu Police par défaut Formats de page Etc Améliorer la maintenabilité de l application Simplifier les modifications de l application Accélérer le développement Pouvoir faire évoluer la présentation en fonction du type de navigateur et/ou de terminal client 47

48 Technologies Serveurs PHP Définition : Personnal Home Page, langage de script Web côté serveur Usage : génération de pages Web dynamiques Caractéristiques : 1. Il s agit d une technologie de scripting côté serveur Web. Le contenu de la page est généré à la volée, par interprétation du code PHP 2. Une page PHP est un fichier texte mêlant section en HTML qui sont affichées directement et section en PHP interprétées par le serveur 3. L outil d interprétation peut être installé comme CGI ou comme librairie intégrée au serveur (statique ou dynamique) 4. PHP est un langage procédural complet associée à des bibliothèques de fonction riches (bases de données, etc) 5. La dernière version du langage (5) inclut des fonctionnalités objets plus développées que les précédentes Applications : site web dynamique; technologie de développement rapide 48

49 Technologies Serveurs (2) J2EE, servlets et JSP Définition : bibliothèques Java pour le développement d applications Web. JSP = Java Server Page, technologie de script associée aux servlets Usage : développement d applications métier possédant une interface Web Caractéristiques : 1. Le développement de l application s effectue en Java avec accès à toutes les fonctionnalités et bibliothèques de Java 2. Des classes spécifiques permettent de fournir un service Web. Elles assurent le pont entre la logique métier et la présentation Web 3. Les JSP sont une version simplifiée des servlets permettant d employer des schémas de développement voisin de PHP tout en reposant sur une plate-forme et en bénéficiant des adds on de Java 4. Les servlets nécessitent, pour fonctionner, une surcouche de la JVM gérant les couches basses du Web. Il s agit d un serveur d application. Ce serveur d application est un service d infrastructure résidant installé sur un serveur. Applications : application métier complexe possédant un volet Web et éventuellement un volet client lourd 49

50 Technologies Serveurs (3).NET et ASP Définition : ASP, Active Server Page et.net forment une plate-forme technologique voisine dans ses fonctionnalités du couple Java + JSP en technologies Microsoft Usage : développement d applications métier Windows possédant une interface Web Caractéristiques : 1. Le développement de l application s effectue sur la plate-forme Windows en technologies Windows : VB + C# + ActiveX 2. Des pages de scripts peuvent être réalisées (comme PHP ou JSP) en mêlant HTML et VB 3. L intégration dans Windows permet d accéder aux services de l OS Windows. Applications : application métier Windows possédant un volet Web 50

51 Technologies Serveurs (4) CGI Définition : CGI, Common Gateway Interface, interface normalisée pour lancer et échanger avec des processus s exécutant derrière un serveur Web Usage : création de pages dynamiques Caractéristiques : 1. C est le premier système d interface développé pour les pages dynamiques 2. Il permet l usage de tout langage 3. Il peut être utilisé pour lancer un interpréteur PHP 4. Très utilisé au début du Web, supplanté par les technologies de scripting serveur aujourd hui 5. Faiblesse: 1. l environnement d exécution du programme CGI est dissocié de celui du serveur Applications : développement Web 51

52 Technologies serveurs (5) Utilisation des technologies serveurs Développement d applications Internet Développement de pages Web dynamiques 52

53 Serveurs httpd Apache httpd : serveur httpd de la fondation Apache Performant, robuste, complet Distribué librement Serveurs d application IIS +.Net S Serveur d application en technologies Microsoft Supporte les ActiveX, VisualBasic, C# Intégré dans la plate-forme Windows Server Fourni avec l outil de développement Microsoft Visual Studio et l OS Serveur de MS Intérêt : pour développer en technologie Microsoft Tomcat Serveur d application en technologie Java Supporté par la fondation Apache Distribué librement Intérêt : serveur d application libre de référence Weblogic (BEA) et Websphere (IBM) Serveur d application en technologie Java Supportés par leur éditeur Intérêt : support éditeur, + complets que Tomcat 53

54 Outils XML Saxon Parser XML orienté DOM Non totalement compatible DOM Programmation événementielle Utilisation complexe Intérêt Un des premiers parsers performants développés Compatible avec la plupart des plates-formes Standard de fait Tend à être remplacé par des outils issus de la norme Sablotron Processeur de feuille de style XSLT Intégré dans la plupart des plates-formes serveurs Couverture étendue de la norme XSLT Xalan Processeur de feuille de style XSLT Destiné à Java Fourni par la fondation Apache Xerces Parser XML Orienté et compatible DOM Fourni par la fondation Apache 54

55 Outils XML (2) Expat Parser XML Orienté et partiellement compatible DOM Un des premiers parsers intégré dans PHP Apache Batik Processeur de SVG Apache FOP Processeur de XSL-FO 55

56 Outils XML (3) Les outils XML sont nécesaires à l utilisation des technologies XML XSLT => processeur XSLT DOM => parser DOM Schema => processeur de Schéma XSL-FO => générateur de documents à partir de documents XSL-FO etc 56

57 Outils divers PDFLib Librairie de création de documents PDF Distribué commercialement Intérêt Création de PDF sans avoir à apprendre la syntaxe XSL-FO (couche d abstraction plus élevée que XSL-FO) ChartDirector Outil de génération de graphiques à la volée pour les affichage sur le web Production d images GIF, JPEG à partir de tableaux de données Bar chart, etc Fonctions d interactivité sur les graphiques Distribué commercialement Intérêt Création de graphiques dans un format plus simple d usage et d apprentissage plus rapide que SVG (couche d abstraction plus élevée que SVG) 57

58 Outils divers (2) ADOdb Couche d abstraction des bases de données pour PHP Intérêt Modèle portable inter base de données Frameworks de développement Exemples Cocoon Apache Wiki Spipe Imp Etc Intérêt Lorsque l outil correspond au besoin, possibilité d installation rapide d application 58

59 Clients divers Les principaux logiciels clients du marché supportent le protocole http Excel, Word, Business Object, Cognos, etc Il est donc envisageable de réaliser du développement Web (Intranet) ciblé pour ces clients Intérêt Permet de fournir deux versions d une application Client lourd/client léger Permet d utiliser les fonctions «avancées» des clients lourds pour alléger les développements sur des besoins spécifiques Tableaux dynamiques Affichage de graphiques Cubes de données Mise en page et génération de documents 59

60 Messagerie Son usage est fréquent dans le cadre des applications Web Mails de confirmation, mails automatiques Traitement automatique de mails clients Webmail Mailing list Trois protocoles principaux SMTP Simple mail transfer protocol RFC821 Définit les règles d envoi de mail entre Un client mail et un serveur Deux serveurs POP3 Post Office Protocol V3 RFC1939 Orienté client non connecté (connexion -> récupération des mails -> déconnexion) IMAP Internet Message Access Protocol RFC2060 Orienté client connecté (manipulation des mails sur le serveur) 60

61 Messagerie (2) Protocoles propriétaires Clients Client Exchange Client Notes Synchronisation de serveurs Exchange Notes Formats d échange MIME Multipurpose Internet Mail Extension Formatage du contenu des mails S-MIME Secure Mime Signature et cryptage des mails 61

62 Adds on navigateurs Ce sont des outils permettant d exécuter du code sur les navigateurs (~ des CGi et librairies dynamiques serveur côté client) Plugs in : échange de données et intégration dans l interface graphique d un logiciel externe dans le navigateur pour la visualisation d un document ou le traitement d une fonction spécifique Flash Java plug in Acrobat reader Applets et ActiveX Applets = technologie Java ActiveX = Windows Exécution d un programme dédié (Java ou ActiveX) dans une zone spécifique du navigateur 62

63 Adds on des navigateurs (2) Intérêt / besoin couvert Développement de fonctions spécifiques Signature électronique de documents côté client Outils de chat Outils de téléphonie etc 63

64 Bases de données Bases de données Utilisées de manière intensive Nécessite la présence du client correspondant sur le serveur httpd Principales bases rencontrées MySQL PostGres Bases commerciales (Oracle, Sybase) Différences entre les bases Support de certaines fonctions avancées plus ou moins étendues Couches d abstraction XML Scripting sur la base Procédures stockées Cluster Etc Performances, stabilité Outils livrés avec la base Développement Administration 64

65 Outils de développement Des outils sont disponibles pour la plupart des technologies Il est recommandé d en faire usage lorsque c est possible Assistance à la rédaction du code Coloration du code Complétion Indentation Gestion des commentaires Fonctions de recherche et de navigation Vues graphiques Détection des erreurs de syntaxe Debugger Intégration avec d autres outils Gestion de version (CVS) Autres outils de développement 65

66 Outils de développement Ce sont le plus souvent des outils commerciaux Visual Studio Développement.Net, C, C++ Zend Studio Développement PHP XMLSpy Développement XML Frontpage Développement HTML, CSS, Javascript Dreamweaver Développement HTML, CSS, Javascript Flash MX Développement flash et Action Script JBuilder Développement Java IntelliJ IDEA Développement Eclipse (gratuit) Framwork de développement multi langage Inconvénients Coûteux Temps d apprentissage, prise en main de l outil 66

67 Technologies utilisées dans le cadre des TD et TP Côté client HTML + CSS + Javascript + expressions régulières DOM Echange Quelques fonctions de http Envoi de mail? (à voir) RSS (Really Simple Syndication) Côté serveur PHP Java, RMI, Tomcat Manipulation de données XML, XSLT DOM SQL Présentation XSL-FO XSLT 67

Programmation Internet

Programmation Internet Programmation Internet Mikael DAUTREY Janvier 2007 mikael.dautrey@isitix.com 1 Objectifs du module Acquérir des connaissances de base en programmation Internet Technologies Syntaxe des langages Modèles

Plus en détail

Evolutions du Web et des langages

Evolutions du Web et des langages Evolutions du Web Evolutions du Web et des langages WEB statique Ces pages sont écrites en HTML Les pages demandées sont identiques quelque soit La personne qui les demande L heure de la demande Etc. WEB

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

Programmation du Web : Présentation du Web dynamique

Programmation du Web : Présentation du Web dynamique Programmation du Web : Présentation du Web dynamique Jean-Baptiste Vioix (Jean-Baptiste.Vioix@u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-8 Présentation Nécessité du web dynamique

Plus en détail

PHP/MYSQL. Web Dynamique

PHP/MYSQL. Web Dynamique PHP/MYSQL Web Dynamique ENSG Juin 2008 Qui suis-je? Guillaume Gautreau Responsable projets Systèmes d information à l ENPC guillaume@ghusse.com http://www.ghusse.com Ces 6 jours de formation Jour 1 : présentations,

Plus en détail

//////////////////////////////////////////////////////////////////// Développement Web

//////////////////////////////////////////////////////////////////// Développement Web ////////////////////// Développement Web / INTRODUCTION Développement Web Le développement, également appelé programmation, désigne l'action de composer des programmes sous forme d'algorithme (codage).

Plus en détail

Cours de programmation web

Cours de programmation web Cours de programmation web ENSAE 2006-2007 Cours 1 - Introduction 1. Introduction 2. Le principe d Internet 3. Les langages du web 4. Le web 2.0 Introduction : Historique 1967 : Arpanet : réseau militaire

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Développement Web Introduction générale

Développement Web Introduction générale 1 / 58 Développement Web Introduction générale Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer Juillet 2008 2 / 58 Plan Plan 1 Introduction 2 Historique et

Plus en détail

TECHNOLOGIES XML, CONCEPTION, MISE EN OEUVRE

TECHNOLOGIES XML, CONCEPTION, MISE EN OEUVRE XML/ SOA/ Web services TECHNOLOGIES XML, CONCEPTION, MISE EN OEUVRE Réf: PXM Durée : 4 jours (7 heures) OBJECTIFS DE LA FORMATION XML est devenu une technologie incontournable tant sur le poste utilisateur

Plus en détail

Chapitre 1 HTML et le Web... 15. Chapitre 2 Les navigateurs du marché... 31. Chapitre 3 Les bases du langage HTML... 49

Chapitre 1 HTML et le Web... 15. Chapitre 2 Les navigateurs du marché... 31. Chapitre 3 Les bases du langage HTML... 49 Chapitre 1 HTML et le Web... 15 1.1 Pourquoi apprendre le langage HTML?... 17 1.2 Trois concepts étroitement liés : WWW, HTML et HTTP... 18 1.3 Principes généraux et versions de HTML... 20 Utilisation

Plus en détail

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 AISL - Architecture et Intégration des Systèmes Logiciels - 2011-2012 webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 Administrer un serveur et

Plus en détail

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42 Java et Objet Amélie Lambert 2014-2015 Amélie Lambert 2014-2015 1 / 42 Chapitre 8 Développement d applications Web Amélie Lambert 2014-2015 2 / 42 Plan du cours Typologie des applications Web Architecture

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

L3 informatique TP n o 2 : Les applications réseau

L3 informatique TP n o 2 : Les applications réseau L3 informatique TP n o 2 : Les applications réseau Sovanna Tan Septembre 2009 1/20 Sovanna Tan L3 informatique TP n o 2 : Les applications réseau Plan 1 Transfert de fichiers 2 Le Courrier électronique

Plus en détail

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz Master 2 SITW Les services Web Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz Maitre de Conférences A, Département TLSI Faculté des NTIC Université Constantine 2 Abdelhamid Mehri

Plus en détail

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09 INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL

Plus en détail

Catalogue de formation

Catalogue de formation 4 rue Jules Raimu 31 200 Toulouse http://www.creabilis.com contact@creabilis.com Tél. : 05 34 251 641 Fax : 05 34 257 956 Catalogue de formation CREABILIS S.A.R.L au capital de 7500 - R.C.S. Toulouse 441

Plus en détail

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition) Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du

Plus en détail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web Rencontres SPIRAL 25/02/03 Vulnérabilités et sécurisation des applications Web Pourquoi les firewalls sont impuissants face à certaines attaques patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com

Plus en détail

Partie 2.2: Servlet et Tomcat

Partie 2.2: Servlet et Tomcat Partie 2.2: Servlet et Tomcat 1 Plan du cours Servlets Présentation Exemple 2 Plan du cours Tomcat Des servlets à Tomcat: pourquoi Tomcat? Architecture Tomcat Installation et configuration de Tomcat Configuration

Plus en détail

Application Web et J2EE

Application Web et J2EE Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis

Plus en détail

Programmation Internet Cours 4

Programmation Internet Cours 4 Programmation Internet Cours 4 Kim Nguy ên http://www.lri.fr/~kn 17 octobre 2011 1 / 23 Plan 1. Système d exploitation 2. Réseau et Internet 3. Web 3.1 Internet et ses services 3.1 Fonctionnement du Web

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

Langage HTML (2 partie) lt La Salle Avignon BTS IRIS

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv> Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee

Plus en détail

Calendrier des Formations

Calendrier des Formations Systèmes et Réseaux IPV6 980,00 HT Jan. Fév. Mar. Avr. Mai Juin Jui. Août Sept. Oct. Nov. Déc. Comprendre IPV6 et explorer les méthodes pour migrer 14-15 23-24 1-2 26-27 Configuration et Maintenance des

Plus en détail

Introduction ASP.NET

Introduction ASP.NET 1 Sommaire Introduction... 1 1 Framework... 2 1.1 Général (.NET)... 2 1.2 ASP.NET... 2 2 Prérequis... 2 3 Présentation des bases d un projet ASP.NET... 3 3.1 Création d un projet... 3 3.2 Site Web : Les

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

Architecture technique

Architecture technique OPUS DRAC Architecture technique Projet OPUS DRAC Auteur Mathilde GUILLARME Chef de projet Klee Group «Créateurs de solutions e business» Centre d affaires de la Boursidière BP 5-92357 Le Plessis Robinson

Plus en détail

Programmation d applications distribuées

Programmation d applications distribuées Programmation d applications distribuées François Charoy Université Henri Poincaré 8 octobre 2007 Première partie I Développement d applications distribuées Objectifs du cours Comprendre ce qu est une

Plus en détail

Formation : WEbMaster

Formation : WEbMaster Formation : WEbMaster Objectif et Description : Centre Eclipse vous propose une formation complète WebMaster, vous permettant de : Utiliser dès maintenant les nouveautés du web2, ainsi alléger les besoins

Plus en détail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

Plus en détail

Évaluation et implémentation des langages

Évaluation et implémentation des langages Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

WEBMASTER DEESWEB DEES

WEBMASTER DEESWEB DEES Diplôme Européen délivré par la Fédération Européenne des Ecoles DEES WEBMASTER Fonction Le s adresse aux titulaires d un diplôme du 1er cycle de l enseignement supérieur dans le domaine de l informatique

Plus en détail

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

Plus en détail

Présentation et traitement d information sur le Web Présentation du WWW (architectures web)

Présentation et traitement d information sur le Web Présentation du WWW (architectures web) Université de La Rochelle LUP-SIG 2004-2005 Programmation SIG et Internet Cartographique Présentation et traitement d information sur le Web Présentation du WWW (architectures web) Jean-Michel Follin jean-michel.follin@univ-lr.fr

Plus en détail

Écriture de pages Web

Écriture de pages Web Écriture de pages Web Le langage HTML / XHTML Laurent Tichit Janvier 2011 Laurent Tichit 2005-2010 1 Comment fonctionne le Web? C'est un mécanisme client-serveur. Logiciel serveur : programme qui a pour

Plus en détail

Historique et éléments du WEB.

Historique et éléments du WEB. Historique et éléments du WEB...1 1. Internet...2 1.1. Adresse IP...2 1.2. DNS...2 1.3. Approche client-serveur...3 2. Web...3 2.1. CERN (Conseil Européen pour la Recherche Nucléaire)...3 2.2. URL : Uniform

Plus en détail

Architecture technique des PGI

Architecture technique des PGI Architecture technique des PGI Description du thème Propriétés Description Intitulé long Formation concernée Matière Présentation Notions Transversalité Pré-requis Outils Mots-clés Durée Auteur(es) Version

Plus en détail

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une

Plus en détail

Ingénieur Développement Nouvelles Technologies

Ingénieur Développement Nouvelles Technologies Ingénieur Développement Nouvelles Technologies M. Nour-eddine FOUAD 26/02 Rue Paul Ramadier 59800 Lille E-mail : fnour@free.fr Site perso : http://nfouad1.free.fr/ : 03.20.06.32.04 : 06.77.44.15.28 Nationalité

Plus en détail

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully Les grandes facettes du développement Web Qui sommes nous? Nicolas Thouvenin Stéphane Gully Projets Web depuis 2000 LAMP, NodeJS HTML, CSS, jquery

Plus en détail

Langages du Web. Que savez vous???

Langages du Web. Que savez vous??? Langages du Web Que savez vous??? Le WEB World Wide Web ouwww ouweb Toile d'araignée mondiale ou la toile Le Web utilise le réseau Internet pour relier des serveurs qui, grâce aux protocoles HTTP, HTTPS,

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

Exploitation de données sur Internet/Intranet

Exploitation de données sur Internet/Intranet Exploitation de données sur Internet/Intranet Jacques THOORENS 2 Chapitre 1 Clients et serveurs D un point de vue architectural, l histoire de l informatique peut se voir de la manière suivante : les gros

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

Présentation générale des Web Services

Présentation générale des Web Services Présentation générale des Web Services Vue Globale Type d'architecture reposant sur les standards de l'internet Alternative aux architectures classiques : Client/serveur n/tiers Orientée services permettant

Plus en détail

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants Master I Informatique parcours Ingénierie Logiciels Projet : E-Service Gestions des Enseignements Groupe 06 Cahier de Charge E-Service Système d information web «Gestion des services ensignants 2011-2012

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Catalogue des Formations Techniques

Catalogue des Formations Techniques Catalogue des Formations Techniques Items Média Concept 4, allées Pierre-Gilles de Gennes - 33700 Mérignac Téléphone : 05.57.35.73.73 Télécopie : 05.57.35.73.70 Courriel : contact@imc-fr.com 2 Préambule

Plus en détail

Que désigne l'url donnée au navigateur?

Que désigne l'url donnée au navigateur? Que désigne l'url donnée au navigateur? http://www-poleia.lip6.fr/~jfp/istm/tp6/index.html Le protocole : pourquoi? Parce que la manière d'indiquer une adresse dépend du service postal utilisé... Le serveur

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

18 TCP Les protocoles de domaines d applications

18 TCP Les protocoles de domaines d applications 18 TCP Les protocoles de domaines d applications Objectifs 18.1 Introduction Connaître les différentes catégories d applications et de protocoles de domaines d applications. Connaître les principaux protocoles

Plus en détail

ESUP Portail. ESUP Portail Un ENT universitaire! Contexte. Objectifs d ESUP Portail. Grandes orientations technologiques

ESUP Portail. ESUP Portail Un ENT universitaire! Contexte. Objectifs d ESUP Portail. Grandes orientations technologiques ESUP Portail Un ENT universitaire! ESUP Portail Présentation générale du projet Jean-Michel Antoine Jean-Guy Avelin Raymond Bourges Architecture Intégration au SI de l établissement Développement de canaux

Plus en détail

Glossaire. www.themanualpage.org ( themanualpage.org) soumises à la licence GNU FDL.

Glossaire. www.themanualpage.org ( themanualpage.org) soumises à la licence GNU FDL. Glossaire Ce glossaire contient les termes techniques et de spécialité les plus employés dans cette thèse. Il emprunte, pour certaines d entre elles, les définitions proposées par www.themanualpage.org

Plus en détail

Concepteur Développeur Informatique Option Nomade

Concepteur Développeur Informatique Option Nomade Concepteur Développeur Informatique Option Nomade Module : Espace ouvert de formation (2 semaines) Ce module est composée de plusieurs parties : - le module développement durable (14 heures), qui traite

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 16 NFP111 Systèmes et Applications Réparties Cours 10 - Les Enterprise Java Beans ( aux serveurs ) Claude Duvallet Université du Havre UFR Sciences et Techniques

Plus en détail

Calendrier été 2010. Formations en Informatique et Management

Calendrier été 2010. Formations en Informatique et Management Calendrier été 2010 Formations en Informatique et Management B u r e a u t i q u e/outils utilisateur ENVIRONNEMENT Windows Utilisateur 1 07 25 195 Windows Vista / 7 Utilisateur 1 07 25 195 Optimiser l'utilisation

Plus en détail

DotNet. Plan. Les outils de développement

DotNet. Plan. Les outils de développement DotNet Les outils de développement Version 1.03 du 16/10/2006 par Jacky Renno Plan La machine virtuelle Le kit de développement Le kit de langage Le Visual Studio.NET Le serveur web IIS 6.0 Le modeleur

Plus en détail

Architecte Logiciel. Unité de formation 1 : Développer en s appuyant sur les modèles et les frameworks 7 semaines

Architecte Logiciel. Unité de formation 1 : Développer en s appuyant sur les modèles et les frameworks 7 semaines page 1/5 Titre professionnel : Inscrit au RNCP de Niveau I (Bac + 5) (J.O. du 07/02/09) 17 semaines Unité 1 : Développer en s appuyant sur les modèles et les frameworks 7 semaines Java EE : Frameworks

Plus en détail

Cours CCNA 1. Exercices

Cours CCNA 1. Exercices Cours CCNA 1 TD3 Exercices Exercice 1 Enumérez les sept étapes du processus consistant à convertir les communications de l utilisateur en données. 1. L utilisateur entre les données via une interface matérielle.

Plus en détail

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi

Plus en détail

Auto-évaluation Internet: concepts et techniques

Auto-évaluation Internet: concepts et techniques Auto-évaluation Internet: concepts et techniques Document: f0832test.fm 10/02/2010 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION INTERNET:

Plus en détail

La sécurisation d applications

La sécurisation d applications Université Toulouse 1 Sciences Sociales 10 mars 2008 Les firewalls ne suffisent plus Mais ont-ils jamais été suffisants? La protection à 100% n existe pas. De plus certains protocoles doivent absolument

Plus en détail

CATALOGUE DES FORMATIONS

CATALOGUE DES FORMATIONS CATALOGUE DES FORMATIONS WEB / GRAPHISME ADOBE ACROBAT PRO... 1 ADOBE PHOTOSHOP... 2 ADOBE INDESIGN... 3 ADOBE DREAMWEAVER... 4 ARTISTEER... 5 PREZI... 6 LE LANGAGE HTML... 7 LES FEUILLES DE STYLE CSS...

Plus en détail

Introduction à la conception de sites web. Yannick Prié UFR Informatique Université Claude Bernard Lyon 1

Introduction à la conception de sites web. Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 Introduction à la conception de sites web Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 Objectifs Introduction aux langages à balises Introduction à (X)HTML / CSS Introduction à la gestion

Plus en détail

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie 1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser

Plus en détail

Notre Catalogue des Formations IT / 2015

Notre Catalogue des Formations IT / 2015 Notre Catalogue des Formations IT / 2015 Id Intitulé Durée Gestion de projets et méthodes I1101 I1102 I1103 I1104 I1105 I1106 I1107 I1108 I1109 I1110 I1111 I1112 I1113 I1114 I1115 I1116 I1117 I1118 I1119

Plus en détail

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux Avant-propos 1. À qui s adresse ce livre? 11 2. Les pré-requis 12 Préambule 1. Rappel sur les architectures Internet/Intranet/Extranet 13 1.1 Le protocole HTTP 14 1.1.1 Les méthodes HTTP 16 1.1.2 Les codes

Plus en détail

Présentation Internet

Présentation Internet Présentation Internet 09/01/2003 1 Sommaire sières 1. Qu est-ce que l Internet?... 3 2. Accéder à l Internet... 3 2.1. La station... 3 2.2. La connection... 3 2.3. Identification de la station sur Internet...

Plus en détail

Présentation du produit. Introduction Fonctionnalités Technologies Open Source Avantages Services Éditions Licence Captures d écran

Présentation du produit. Introduction Fonctionnalités Technologies Open Source Avantages Services Éditions Licence Captures d écran Présentation du produit Introduction Fonctionnalités Technologies Open Source Avantages Services Éditions Licence Captures d écran Page 2 Page 3 Page 5 Page 6 Page 7 Page 8 Page 9 Page 10 Introduction

Plus en détail

Introduction à. Oracle Application Express

Introduction à. Oracle Application Express Introduction à Oracle Application Express Sommaire Qu est-ce que Oracle Application Express (APEX)? Vue d ensemble des fonctionnalités et des différents composants d Oracle APEX Démonstration de création

Plus en détail

Développement des Systèmes d Information

Développement des Systèmes d Information Développement des Systèmes d Information Axe ISI Camille Persson Institut Fayol / LSTI / ISCOD École Nationale Supérieure des Mines de Saint-Etienne 158 cours Fauriel, 42000 Saint-Etienne persson@emse.fr

Plus en détail

Web Services. Introduction à l aide d un exemple. Urs Richle

Web Services. Introduction à l aide d un exemple. Urs Richle Web Services Introduction à l aide d un exemple Urs Richle 7/12/2005 Problématique Requête Windows Mac Linux HTML XHTM CSS XML SVG XTM... ASP PHP Java Applet JSP Servlet... IIS Apache Tomcat... Data Oracle

Plus en détail

Expert technique J2EE

Expert technique J2EE EHRET Guillaume 25, rue de la Richelandiere 42100 SAINT ETIENNE 32 ans - Célibataire Expert technique J2EE Domaines de compétences Environnement et langages Expertise en programmation Java et en architecture

Plus en détail

Groupe Eyrolles, 2003 ISBN : 2-212-11270-X

Groupe Eyrolles, 2003 ISBN : 2-212-11270-X Groupe Eyrolles, 2003 ISBN : 2-212-11270-X 1 Présentation de Tomcat La plupart des lecteurs de ce livre ont certainement déjà développé des applications Web Java et souhaitent approfondir leurs connaissances

Plus en détail

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et

Plus en détail

PROGRAMME «CONCEPTEUR DÉVELOPPEUR INFORMATIQUE»

PROGRAMME «CONCEPTEUR DÉVELOPPEUR INFORMATIQUE» PROGRAMME «CONCEPTEUR DÉVELOPPEUR INFORMATIQUE» Titre professionnel : «Concepteur Développeur Informatique» Inscrit au RNCP de Niveau II (Bac + 4) (JO du 23 octobre 2007) (38 semaines) Unité de formation

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

Gestion de contenu et gestion documentaire, quelles relations?

Gestion de contenu et gestion documentaire, quelles relations? Gestion de contenu et gestion documentaire, quelles relations? Dominique Cotte Journée des professionnels de l IST Nancy 21 Juin 2005 Quelle attitude vis-à-vis des nouveaux concepts? Avalanche de concepts

Plus en détail

JACi400. Une suite logicielle complète pour la modernisation de vos applications System i

JACi400. Une suite logicielle complète pour la modernisation de vos applications System i Une suite logicielle complète pour la modernisation de vos applications System i JACi400 Conversion JACi400 Déploiement SystemObjects Europe 7 Rue Traversière 94573 Rungis Cedex France Tel: +33 (0) 1 41

Plus en détail

Documentation technique

Documentation technique MEEVY Documentation technique Juillet 200 MEEVY a pour but de fournir aux artistes des outils pour promouvoir leur musique sur internet et proposer à l auditeur une plateforme de musique en ligne gratuite

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Architectures et Web

Architectures et Web Architectures et Web Niveaux d'abstraction d'une application En règle générale, une application est découpée en 3 niveaux d'abstraction : La couche présentation ou IHM (Interface Homme/Machine) gère les

Plus en détail

Urbanisme du Système d Information et EAI

Urbanisme du Système d Information et EAI Urbanisme du Système d Information et EAI 1 Sommaire Les besoins des entreprises Élément de solution : l urbanisme EAI : des outils au service de l urbanisme 2 Les besoins des entreprises 3 Le constat

Plus en détail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.

Plus en détail

Initiation au Web et à l HTML

Initiation au Web et à l HTML Initiation au Web et à l HTML Mathieu LACROIX, François RÉVERET, Antoine VACAVANT mathieu.lacroix@isima.fr françois.reveret@univ-bpclermont.fr antoine.vacavant@liris.cnrs.fr 2 et 3 Avril 2007 /40 Mathieu

Plus en détail

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr Grégory Cuellar Julien Goullon gregory.cuellar@bull.net julien.goullon@9business.fr 1 er octobre 2007 1 Généralité 2 / 54 Pourquoi? Historique Les alternatives Les composants 2 Architecture n-tiers 3 JEE

Plus en détail

Leçon 0 : Introduction au développement web

Leçon 0 : Introduction au développement web Module : Atelier programmation n- tiers Atelier de TP : N 0 Durée : 6h Groupes : M31- M32 Leçon 0 : Introduction au développement web NB : Ce document est un support de cours (notes de cours) : ce n'est

Plus en détail