Programmation Internet
|
|
- Laure Bordeleau
- il y a 8 ans
- Total affichages :
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 14 heures de Travaux Pratiques Cours Présentation des technologies et des architectures Web Présentation de J2EE Architecture de Tomcat Présentation de PHP5 3
4 Programme du module (2) Travaux pratiques Java/RMI/Tomcat 2 séances de 2 heures sur RMI et Java à partir d un mini projet sur RMI 2 séances de 2 heures sur Tomcat Présentation, découverte de l environnement Tomcat Exercices simples sur les servlets Réalisation d une mini-application MVC Travaux pratiques PHP (3 séances) Exercices élémentaires sur le langage PHP, Exercices complémentaires impliquant des extensions XML, HTML, Javascript, MySQL et les CSS Exercices de programmation objet PHP5 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 et architecture Web Introduction 6
7 Client-serveur Web : architecture générale 7
8 Développement du Web Le besoin initial Afficher du contenu textuel sur tout type de clients (Windows, Unix, etc) : HTML Pouvoir naviguer à travers les documents : URL / liens hypertextes Accéder au contenu à distance : TCP/IP et HTTP Accéder aux serveurs à partir de noms compréhensibles par un être humain : DNS et FQDN Indexer, rechercher dans le contenu : les moteurs de recherche 8
9 Développement du Web : les extensions Les extensions : trois directions Gestion de contenu Multimédia Interaction et transaction Convergence des moyens 9
10 Gestion de contenu Flux d information Le bulletin météo, les nouvelles, la bourse, l information, etc évoluent chaque jour Mais la structure de l information sous-jacente est toujours la même La création, chaque jour, chaque heure, ou chaque minute d une nouvelle page pour mettre à jour cette information s avère rapidement fastidieuse Trouver un moyen de retraiter du flux d information pour l afficher sous forme Web Bases de données, bases d information Des bases d information existaient avant le développement du Web Annuaires Bases clients Bases démographiques Etc Ces informations ne sont pas directement accessibles sous forme textuel Mettre en place des interfaces entre les bases de données et le Web HTML 10
11 Multimédia Diffusion et consultation de contenus multi-média Du contenu purement textuel, le besoin a évolué vers la diffusion de contenus multimédia Vidéo Audio Graphisme interactif Solutions de virtualisation d applications (type Citrix) La diffusion et la consultation de ces contenus s appuient sur des formats et des protocoles d extension des navigateurs Souplesse de mise en page et interactions avec l utilisateur Evolution progressive de la mise en page d un modèle linéaire (stream) vers un modèle de type boîte (box) puis calque (layer) 11
12 Interaction et transaction Acheter / vendre / réserver / s inscrire / commander / supprimer / modifier / partager / synchroniser / gérer / inventorier / voter / ajouter / supprimer / sonder / questionner / interroger / se connecter / s authentifier Evolution d un web de consultation vers un web d interaction et de transaction Saisie de données utilisateurs Actions de l utilisateur Réservation de ressources Sessions Basculement d une logique de contenu sans état à une logique applicative avec état Gestion de transactions 12
13 Convergence Convergence des moyens d accès aux informations Application client-serveur client lourd / version client léger Accès aux informations depuis un mobile Intégration de courriers ou de données papier Accès aux informations par mail ou par SMS Téléphonie Internet 13
14 Compétences du développement Web Conception Développement Client Développement serveur Intégration et mise en production Test Exploitation Vie de l application Tuning 14
15 Conception Acteurs Architectes fonctionnels Architectes techniques Architecte objets Architecte intégration Spécialistes technologiques (JEE, frameworks, etc) Architectes données Bases de données XML Domaines UML Modélisation de processus Modélisation de données Modélisation objet Connaissance des frameworks et des technologies 15
16 Développement client Acteurs Graphistes Webdesigner Concepteurs multimédia Développeurs clients HTML / Javascript / Ajax / Flash / multimédia Ergonomes Domaines Graphisme et outils (photoshops, etc) Macromedia flash, flex, action script Javascript, VBScript Applets, plugs in, ActiveX HTML, CSS, connaissance des navigateurs Techniques de définition de l ergonomie Ajax, XML, technologies de formulaire Web Studios de développement clients (Dreamweaver, Adobe Liveform, Office) 16
17 Développement serveur Acteurs Développeurs Java Développeurs JEE Développeurs ASP /.Net Développeurs PHP Spécialistes technologiques (Hibernate, Struts, etc) Domaines Java et JEE PHP XML et les langages associés XSLT XML Schema SOAP, WSDL RSS Docbook, OpenDoc XQuery SQL, ses dérivés par bases de données, LDAP Plates-formes Apache HTTPD.Net JBoss, Tomcat, Weblogic, Jonas Hibernate, Struts, Spipe, Cacti, Nagios, Weathermap, IMP, Mondrian, etc SQUID PostFix + les autres frameworks (fondation Apache, etc) 17
18 Intégration / Environnement / mise en production Acteurs Ingénieurs systèmes Ingénieurs réseaux Spécialistes sécurité Web Réseau Système Domaines TCP/IP HTTP Apache et ses extensions Proxy, reverse proxy, firewalls, SSO, DNS IIS Annuaires (LDAP, Active Directory) Moteurs de bases de données Serveurs d applications Matériels et couches basses Virtualisation Load balancing SAN, réseaux de stockage Etc 18
19 Tests Acteurs Testeurs fonctionnels Testeurs techniques Domaines Scénarios de test Jeux de données et outils de test Stratégie de tests Outils de suivi des bugs (Mantis) Outils d automatisation des tests fonctionnels Parasoft Test Suite Rational Test Suite Compuware QA Director Outils d automatisation des tests techniques ou de charge OpenSTA Junit, DBunit, Emma 19
20 Exploitation Acteurs Administrateurs de données (DBA) Administrateurs de platesformes, de serveurs d application Ingénieurs et techniciens système Ingénieurs et techniciens réseau Domaine Connaissance des plates formes du point de vue système (cf. planche précédente) Compétences réseau Compétences bases de données (par type de bases de données) 20
21 Tuning, troubleshooting Acteurs Experts en optimisation de bases de données Experts en optimisation de plates-formes Auditeurs Experts sécurité Domaines Bases de données, SQL Outils d analyse système et réseau 21
22 En conclusion Le Web s est généralisé Dans les réseaux Sur les mobiles Dans les distributeurs de boissons Dans la plupart des outils d administration Dans les applications Dans les échanges entre les applications Dans la presse Dans l enseignement Dans le commerce Dans les conversations 22
23 En conclusion Il est donc important D en comprendre les mécanismes généraux D avoir une idée générale de l usage de chaque technologie En fonction de ses goûts ou d impératifs scolaires ou professionnels, d approfondir ses connaissances sur tel ou telle technologie 23
24 Programmation Internet, partie 1 Technologies et architecture Web Mécanismes généraux 24
25 Les cinq couches de l application Web Présentation Affichage Client Scripting Interactivité Client Persistance (cookies + get Post) http client Réseau TCP/IP Frontal http Serveur d application (ou de Scripts) Entrepôts de données Modules extension client Modules extension frontal Modules extension serveur Services Web externes 25
26 Mécanismes généraux 1 : Présentation et affichage client 26
27 1 : Présentation et affichage Couche de présentation, affichage du contenu HTML et la gestion des styles Balises et styles HTML Styles du navigateur CSS (Cascading Style Sheet) DOM (Document Object Model) HTML 2.0 : RFC1866 MIME (Multipurpose Internet Mail Extension) Gestion des extensions MIME : RFC 2045 à 2049 Modules d extension Players Viewers Applets Contrôles ActiveX 27
28 1 : HTML Des éléments de «header» destinés à contrôler les paramètres d affichage Un langage de structuration de contenu Un langage de présentation Un langage d interaction 28
29 1 : HTML: header Header: header http, paramètres d affichage <!DOCTYPE : DTD de contrôle de la validité du code HTML <base></base> : indique l URL référençant le document courant, URL utilisée par les liens relatifs dans la page <link></link> : rattache le document à une ressource externe (feuille de style) <meta> : informations de contexte sur le document Codage des caractères: <meta http-equiv="content-type" content="text/html; charset=iso "> Auteur: <meta name="author" content="mikael Dautrey"> Mots clés:<meta name="keywords" http-equiv="keywords" content="balise,html,tutoriel,cours"> <script></script>: script lancé au démarrage <style></style>: éléments de style 29
30 1 : HTML: contenu Un langage de structuration de contenu qui peut être vu comme une grammaire XML Balises Attributs 30
31 1 : HTML: contenu Balises (hors balises spécifiques à certains navigateurs) Niveaux de titres <title>, <h1>, <h2>, <h3>, <h4>,, <h6> Paragraphes <p>, <address>, <blockquote>, <pre>, <hr> Listes: <ol>, <ul>, <dl>, <dt>, <dd> Liens et ancres: <a> Images: <img> Objets: <applet> Tableaux: <table>, <caption>, <col>, <tr>, <td>, <th> Mise en forme et contenu: <i>, <b>, <blink>, <cite>, <code>, <dfn>, <em>, <kbd>, <pre>, <q>, <s>, <samp>, <small>, <strike>, <strong>, <sub>, <tt>, <u>, <var>, <abbr>, <acronym>, <big>, <font>, <ins>, <del>,<span>, <br> Attributs permettant d identifier les balises class et name 31
32 1 : HTML: présentation Un langage de présentation Gestion de l apparence et de la présentation visuelle du texte dans les balises Effets de style dans le texte (<i>, <b>, <font>) Attributs des balises Des balises de contenu, des balises de présentation Des attributs de contenu (name) et des attributs de présentation (color) Attributs Attributs des balises permettant de surcharger les propriétés des balises href, bgcolor, width, height background, border, name, title, align, alt, src, vspace, hspace, style 32
33 1 : HTML: contenu + présentation Balises + attributs = structuration du contenu + présentation HTML = XML + DTD (règles de la grammaire, structuration de contenu) + transformation type XSLT (pour passer du contenu à la présentation) Les balises définissent le contenu Les liens définissent les relations entre les contenus Les attributs définissent la présentation 33
34 1 : Apprentissage d HTML Méthodes possibles Apprendre à partir d un des nombreux tutoriels en ligne Utiliser un éditeur HTML (Firefox, etc) Partir d un template de pages existants que l on modifie Visualiser les sources de pages web existantes 34
35 1 : CSS 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 35
36 1 : Apprentissage d HTML Difficultés de HTML Portabilité cross-navigateur Reprendre des modèles éprouvés Se limiter aux principaux navigateurs Utiliser les fonctions de vérification des éditeurs Faire des tests Lisibilité et maintenabilité du code Règles de codage et de nommage Gestion des URLs Pages dynamiques Outils de gestion des URLs Intégration dans des pages dynamiques Architecture des applications 36
37 1 : 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 37
38 1 : 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 38
39 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 39
40 Mécanismes généraux 2 : Scripting, interactivité client, persistance 40
41 2 : Scripting et interactivité client Technologies HTML + HTTP = liens hypertextes + transfert de données Formulaires Javascript DOM AJAX 41
42 2 : HTML + HTTP Un langage d interaction Les liens hypertextes et les URL (Uniform Ressource Locator) Le transfert des données par le header http Contexte du navigateur Cookies Get et post HTTP 1.0 : RFC 1945 HTTP 1.1 : RFC 2616 URL : RFC 1738 Cookies, gestion des sessions et des états: RFC
43 2 : URLs 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 43
44 2 : HTML: formulaires Formulaires Des objets de saisie Checkboxes, radio Listes de sélection et ascenseurs Zones de texte, zones de sélection Des contrôles Boutons Attributs des objets de saisie Actions, scripts Un mécanisme de transmission des données Get Post 44
45 2 : DOM DOM = Document Object Model Principe du DOM Définir une hiérarchie d objets reprenant la hiérarchie du contenu Depuis le navigateur (racine du DOM) Vers l ensemble des éléments du document Windows Document Paragraphes Formulaires 45
46 2 : DOM Intérêt: Manipuler, avec Javascript, les objets du document Accéder à leur valeur Les modifier Les déplacer Valider les données saisies dans un formulaire Réagir aux actions de l utilisateur sur le document Clic sur un élément Clic sur un lien 46
47 2 : DOM: exemple 47
48 2 : 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. Visual Basic Script : Même principe que Javascript mais réservé à Microsoft Internet Explorer 48
49 2 : JavaScript Lancé par Netscape sous le nom de LiveScript Renommé ensuite Javascript (similitudes avec Java A NE PAS CONFONDRE) Usage Contrôle des données dans les formulaires Contenu dynamique (DHTML) Interactions http (redirection, etc) 49
50 2 : JavaScript Orienté objet Pour accéder aux éléments d un document, on fait appel aux objets et aux attributs et méthodes de ces objets Exemple: document.write(«coucou»); écrit coucou dans le document La syntaxe est proche de c ou de java Délimitation des instructions par des «;» Commentaires: «//» ou «/* */» Boucles for: «for(i=0;i<3;i++) document.write(i);» Accès aux objets en séparant les différents niveaux des objets par des points «.» Window.location.href = «index.html» La syntaxe est sensible à la casse 50
51 2 : JavaScript Avantages Interactivité Effets graphiques Réactivité aux actions de l utilisateur Simplification de la gestion du contenu affiché dans la page Inconvénients Problèmes de compatibilité cross-browser => limiter les fonctions utilisées ou prévoir des alternatives Risques de sécurité => bien articuler les contrôles côté client et côté serveur 51
52 2 : Apprentissage de Javascript Tutoriels sur le Web Bibliothèques de fonctions Standardisation de certaines fonctions AJAX Quelques ouvrages de référence 52
53 2 : AJAX 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 53
54 2 : Autres technologies VBScript Flash et ActionScript 54
55 2 : Persistance Par défaut, le Web est sans état («stateless») Lorsque l utilisateur décharge une page, le contenu déchargé est indépendant des actions antérieures de l utilisateur Pour gérer un état, il faut Suivre et marquer les interactions entre le client et le serveur => variables de session et données http (cookies, get/post et header) Afin, in fine, de fournir un contenu dynamique en fonction de l état du client Trois questions Définition de l état du client (navigateur) Traçabilité de l état Sécurité 55
56 2 : Persistance Définition des états La logique applicative définit les états envisageables Position dans l arborescence Authentifié ou pas Etc Traçabilité de l état : trois mécanismes Variables get/post Cookies Session Ces trois mécanismes se superposent et se complètent Choix à réaliser lors de l implémentation de l application Sécurité Attention aux problèmes de spoofing de session Gestion des identifiants Sécurisation des liaisons Gestion des cookies et mécanismes de cross scripting 56
57 Mécanismes généraux 3 : Réseau 57
58 3 : Réseau Couche réseau Echange HTTP SSL Streaming (via applets, plugs in ou contrôles ActiveX) : RSVP, MPEG3 + protocoles propriétaires Services DNS 58
59 3 : HTTP 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. 59
60 3 : SSL 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 60
61 3 : SSL SSL Synthèse de SSL : vue sur les messages échangés 61
62 3 : SSL SSL Synthèse de SSL : vue sur les piles de protocole 62
63 3 : Frontaux HTTP Quelques dispositifs techniques mis en frontal des serveurs d application Apache httpd Reverse proxy Firewalls Loadbalancers et quelques dispositifs mis en frontal côté client Firewalls Pont/routeur NAT Proxy 63
64 3 : Frontaux http Pourquoi faut-il connaître l existence de ces dispositifs? Côté client Il gère des autorisations d accès (SQUID) Il réalise des translations d adresse ou des réécritures de cookies ou de données de session qui peuvent perturber le fonctionnement des applications en fonction de leur paramétrage Côté serveur Ils fournissent des fonctions de load balancing avec gestion d état et suivi des connexions Ils peuvent assurer une pré-authentification du client voire décharger complètement l application de l authentification du client Fonctions de SSO Ils offrent des fonctions de redirection avancée (réécriture d URLs, Virtual hosting, etc ) En fonction de leur paramétrage, ils peuvent perturber le fonctionnement des applications (Réécriture ou modification du header http) Ils peuvent assurer la gestion complète du SSL 64
65 3 : Connaissances réseau 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 65
66 Mécanismes généraux 4 : serveurs d application (ou de scripts) 66
67 4 : Côté serveur Web dynamique Exécution d instructions en fonction des données clients 67
68 4 : Persistance serveur Données reçues des clients = identification de session + éléments de contexte MIME Données utilisateurs Cookies Get/Post Session Contexte utilisateur Charge utile URL demandée Persistance côté serveur Données de session Persistance des objets (Java) 68
69 4 : Technologies de serveurs d applications Web Interface frontal / moteur CGI Module intégré dans le serveur HTTPD (DLL ou module Linux) Java / serveur d application Connecteurs frontal / serveur d applications Langages (et moteurs) de génération de pages Java PHP CGI / PERL, C, C++ ASP.NET 69
70 4 : JEE (ou J2EE) JEE : Java Platform Entreprise Edition, qu est ce que c est? Changement de nom récent : l ancienne appellation est J2EE (Java2 Enterprise Edition) Des règles, des méthodes, des exemples Des bibliothèques de code Java faisant partie des bibliothèques standards Des API standardisées JEE, c est une plate-forme que l on utilise souvent sans s en rendre compte Utilisation des servlets ou de certains services Java évolués Et un acronyme que l on emploie souvent sans savoir à quoi il se rapporte Une technologie? Une bibliothèque de codes? Des utilitaires de programmation? Un framework de développement? 70
71 4 : JEE (2) Principe de JEE : Apporter des outils, du code, des interfaces, des modèles permettant l accélération du développement Java pour les applications d entreprise Travailler sur un socle de technologies Java constitué de la J2SE (Java 2, standard edition) Compléter la J2SE par des services spécifiques, accès aux bases de données, modèles métiers Cœur de l implémentation de la JEE : le serveur d application Il apporte les surcouches de la JVM pour fournir les services JEE et héberge les objets métiers applications JEE Il apporte également un environnement d exploitation permettant Le déploiement La maintenance L administration et la supervision 71
72 4 : JEE (3) La JEE standardise principalement Les interfaces de programmation (API du langage) Le comportement à l exécution de ces API (interactions) Leur implémentation est pour partie Composée d objets standards fournis dans les bibliothèques Java (SUN) Composée d objets et de développements spécifiques des éditeurs JBOSS Weblogic Websphere Tomcat (partiellement) 72
73 4 : JEE (4) 73
74 4 : Présentation des composants de l architecture JEE Couches serveurs = matériel, OS, etc JVM (J2SE) : Virtuelle machine Java exécutant le code Java des applications. Elle respecte le standard J2SE. Elle est ou non intégrée dans le serveur d application. Serveur d application compatible JEE : C est la plate-forme qui héberge les objets JEE Il joue en quelque sorte, pour ces objets, le rôle d un OS Java Servlet API : Surcouche Web server. Permet de créer des objets serveurs Web (requête-réponse http) Java Server Page : Langage de script serveur associé aux servlets 74
75 4 : Présentation des composants de l architecture JEE Entreprise Java Beans : Permet la création d objets métiers distribués gérés par le serveur d application Données métiers Règles métiers Est divisé en plusieurs catégories Entity beans : structures de données métiers Session beans : gestion du contexte applicatif Message-briven beans : traitement des évènements clients Java Naming and Directory Interface (JNDI) : Couche générique d accès aux annuaires de ressources (LDAP, etc) Java Mail API : API d accès aux fonctions du mail Fournit des interfaces SMTP, POP3 et IMAP Java Message Service API : Interface d intégration avec des middleware de message (Message Oriented Middleware ou MOM) tels Bizz Talk, MQ Series Java Transaction API : Gestion (synchronisation) des transactions distribuées 75
76 4 : Servlets: Présentation (1) Avec JEE, les développeurs d application disposent De bibliothèques d accès aux ressources Base de données Fichiers Entrées/sorties Réseau D un environnement d exécution performant Sand box: sécurisation de l espace mémoire viturel Multi-threads Outils de partage des données Chargement dynamique de codes D un environnement de développement multi-plate-forme Orienté objets 76
77 4 : Servlets: Présentation (2) Cet environnement permet de développer un serveur Web Résidant en mémoire Attente des requêtes sur un port (80 ou autre) Traitement des requêtes et réponses Dont il est ensuite possible de faire des versions sur mesure en fonction des besoins d un projet Développement de librairie spécifique Héritage des objets du serveur de base etc 77
78 4 : Servlets: Présentation (3) 78
79 4 : Servlets: Présentation (4) Qu est ce qu un servlet? C est un objet Java qui prend en charge une connexion réseau requête-réponse de son initialisation à sa terminaison Le plus souvent, la connexion en question est une connexion http, et le servlet est un objet dérivé de la classe HttpServlet A quoi sert un servlet? Le servlet apporte une solution «couche haute logicielle» pour traiter simplement une requête http Recevoir le requête et en récupérer les paramètres get et post Répondre à la requête en transmettant une réponse conforme http Offrir des services en plus associés au protocole http Sessions Cookies 79
80 4 : Servlet: Serveur d application Application = servlet et objets associés Serveur d application = environnement d exécution apportant le support de fonctionnement du servlet Le serveur d application est un programme résidant en mémoire = s exécutant en tâche de fond Le serveur d application assure l interprétation du code java du servlet (équivalent à une JVM) Le serveur d application fournit les services «bas niveau» Ecoute du port http (pour une httpservlet) Gestion du contexte mémoire Distribution des requêtes Synchronisation 80
81 4 : Servlet: Serveur d application Le servlet est l équivalent d une classe de thread A chaque connexion entrant http Le serveur d application instancie un servlet Ou envoie la requête à un servlet existant Les données communes à une classe de servlet sont contenues dans des objets synchronized Même principe de synchronisation que pour les threads Le serveur d application gère La persistance des objets d une classe de servlet Le contexte et les données communes Sessions et données de session Connexions base de données par JDBC Objets communs 81
82 4 : Servlet: Serveur d application Le serveur d application apporte également L accès aux librairies communes L accès aux diverses couches http via les librairies communes Cookies Headers Mime Données get/post Plusieurs classes de servlet peuvent s exécuter simultanément dans un même serveur d application, avec un contexte commun ou des contextes différents 82
83 4 : Servlet: Tomcat et les autres Pour faire fonctionner des servlets, il est nécessaire de disposer et d exécuter un serveur d application De nombreux serveurs sont disponibles (libres ou non) Tomcat (libre) Weblogic (BEA) 83
84 4 : Servlet: Apache et Tomcat Apache = groupe de développement de logiciels libres pour le web Apache développe des solutions logicielles Apache httpserver: serveur http «classique» La version de base assure les fonctions standards d un serveur http Des Modules supplémentaires sont proposés en fonction des besoins PHP Connectivité base de données SSL Connecteurs Etc Apache Tomcat: serveur d application pour les servlets A priori (à vérifier), les fondations (la partie http) est commune à tomcat et à httpserver 84
85 4 : Servlet: Apache httpserver et Tomcat Tomcat se lance comme un serveur web classique Daemon unix Exécutable lancé depuis la ligne de commande Service Windows Tomcat est un serveur http complet pouvant répondre A des requêtes statiques A des requêtes dynamiques (appel à des servlets résidant sur le serveur) A des requêtes sur des pages interactives JSP (Java Server Page): équivalent Java de PHP Apache Tomcat fonctionne sans Apache httpserver 85
86 4 : Tomcat: Architecture 86
87 4 : Présentation des JSP (1) JSP: java server page Code java dans des pages HTML Délimiteur du code dans la page: <% Code Java %> Principe voisin des autres langages de Script serveur avec les spécificités suivantes Le code est compilé au premier appel de la page JSP Il est transformé en une servlet qui est exécuté à chaque appel de la page 87
88 4 : Présentation des JSP (2) Les JSP sont réellement des servlets Le compilateur appelé lors du premier chargement de la page (ou après sa modification), Jasper, crée la source du servlet Le code produit et le p-code issu de la compilation du code produit sont stockés dans le répertoire work du serveur Ce répertoire se trouve à la racine du serveur, $CATALINA_HOME, sauf paramétrage spécifique dans les fichiers server.xml et web.xml On pourrait donc imaginer de démarrer l écriture d un service en JSP puis de retoucher le code java généré pour créer un servlet pur java 88
89 4 : Présentation des JSP (3) JASPER, le compilateur de JSP, est composé Du générateur: génère le code java à partir de la page JSP Du compilateur: transforme le code java en p-code D un linker et d un tableau des classes accessible «at runtime» On n utilise pas JASPER directement lors du développement de pages jsp mais il est bon de connaître son existence En cas de bugs difficiles En cas de problèmes de performances 89
90 4 : PHP PHP: Personnal Home Page Un langage de script Créé par Rasmus Lerdof en 1994 à partir de scripts Perl Perl: manipulation de chaîne de caractères et expressions régulières Pour être utilisé comme langage de script côté serveur Web PHP: langage de script => interprété Portable (à condition de disposer de l interpréteur adapté à l OS et à la machine cible) Faiblement typé (mode de gestion de la mémoire propre au code interprété) PHP: PHP Hypertext Processor 90
91 4 : PHP (2) Quelques caractéristiques de PHP Le code est inclus dans le code HTML de la page Page d extension.php Balise délimitant les zones de code PHP: <?PHP..?> Lorsque le client appelle une URL en.php Le serveur ouvre le fichier correspondant Parse le contenu Renvoie sur la sortie standard la partie HTML vers le navigateur Interprète le code PHP et exécute les commandes correspondantes Retourne les résultats au navigateur via Internet PHP s installe directement sur le serveur Web Comme CGI (stabilité, simplicité) Comme module (performance) 91
92 4 : Technologies Microsoft.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 92
93 4 : CGI 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 93
94 Mécanismes généraux 5 : Entrepôts et flux de données 94
95 5 : Entrepôts et flux de données Echanges de données Entrepôts de données Manipulation de données 95
96 5 : Technologies Echanges de données SOAP WSDL Entrepôts de données Bases SQL Manipulation et mise en formes des données Expressions régulières XML XSLT XPath DOM XML DTD XMLSchema XForms XQuery RDF SQL XSL-FO XSLT XForms RSS 96
97 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 97
98 5 : SOAP et WSDL 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 : 98
99 5 : SOAP et WSDL 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 : 99
100 5 : SOAP et WSDL Usage Intégration de service Fourniture d API d échange entre serveurs Synchronisation souple entre services Limites Problèmes de synchronisation Gestion des transactions Performance Conclusion Très utile en gestion de contenu Plus difficile en transactionnel sur des gros volumes Concurrents : batchs traditionnels, mécanismes propriétaires de communication entre bases de données 100
101 5 : 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) 101
102 5 : 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 102
103 5 : Outils de 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 103
104 5 : Outils de description et manipulation de données 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 104
105 5 : Outils de 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 105
106 5 : Outils de 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 106
107 5 : Outils de 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 107
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étailArchitecture 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étailModule 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étailArchitectures 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étailProgramme «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étailHé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étailInstallation 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étailWEB & 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étailXML 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étailProgrammation 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étailDevenez 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étailCatalogue 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étailApplication 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étailNotre 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étailLangage 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étailTechnologies 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étailLANGAGUE 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étailwebmestre : 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étailProgrammation 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étailINFORMATIQUE & 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étailMise 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étailExpert 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étailL3 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étailFileMaker 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étailVulné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étailAvant-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étailLes 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É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étailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailInstitut 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étailXML, 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étailDiffuser un contenu sur Internet : notions de base... 13
Diffuser un contenu sur Internet : notions de base... 13 1.1 Coup d œil sur l organisation de cet ouvrage.............. 15 Préambule : qu est-ce qu une page web?................ 16 À propos du HTML...........................
Plus en détailBES 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étailGroupe Eyrolles, 2004 ISBN : 2-212-11504-0
Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Table des matières Avant-propos................................................ 1 Quel est l objectif de cet ouvrage?............................. 4 La structure
Plus en détailInternet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall
Internet DNS World Wide Web Mécanismes de base Exécution d'applications sur le web Divers Proxy, fire-wall 1 Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet
Plus en détailFormation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux
Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un
Plus en détailDotNet. 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étailFormation : 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étailIngé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étailDans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur
FORMATION FORFAIT WEB DEVELOPPEUR Qualification ISQ OPQF Formacode 46 125 Certification de titre professionnel Web Designer + modules optionnels : Développement PHP/MySQL avancé, Web App, CMS e-boutique
Plus en détailEchosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet
Echosgraphik Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet Présentation I. Echosgraphik Protocoles de travail I. Développement du site II.
Plus en détailCours 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étailServices Réseaux - Couche Application. TODARO Cédric
Services Réseaux - Couche Application TODARO Cédric 1 TABLE DES MATIÈRES Table des matières 1 Protocoles de gestion de réseaux 3 1.1 DHCP (port 67/68)....................................... 3 1.2 DNS (port
Plus en détailServices sur réseaux. Trois services à la loupe. Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée
Trois services à la loupe Services sur réseaux Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée Plan du cours : 1. Services de messagerie Architecture Fonctionnement Configuration/paramétrage
Plus en détailYoussef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE
Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant Adresse Personnelle : 3, allée du Roussillon 91300 Massy Téléphone : (+33) 06 78 37 34 82 E-mail : youssef.lyhyaoui@spartup.com
Plus en détailLes 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étailMac OS X Server Administration des technologies Web. Pour la version 10.3 ou ultérieure
Mac OS X Server Administration des technologies Web Pour la version 10.3 ou ultérieure appleapple Computer Inc. 2003 Apple Computer, Inc. Tous droits réservés. Le propriétaire ou l utilisateur autorisé
Plus en détailCatalogue des formations
Catalogue des formations NANCY et TRAINING (siège) 22 rue de Médreville 54000 Nancy Téléphone : 03 83 67 63 05 METZ 4 rue Marconi 57070 Metz Téléphone : 03 87 20 35 02 REIMS 09 rue Pingat 51000 Reims Téléphone
Plus en détailCRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING
CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des
Plus en détailles 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étailIntroduction à. 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étailWysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x
WysiUpStudio CMS professionnel pour la création et la maintenance évolutive de sites et applications Internet V. 6.x UNE SOLUTION DE GESTION DE CONTENUS D UNE SOUPLESSE INÉGALÉE POUR CRÉER, MAINTENIR ET
Plus en détailDé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étailWindows (2000/NT), Solaris, AIX, HP-UX, Linux Haute disponibilité : SunCluster 3, Veritas Cluster Server 4. J2EE (JSP, Servlet, EJB, JTA), Open Source
David MAFFRAND Architecte SI E-mail : dmafblog@gmail.com Web : http://dmaf.free.fr Certifié Weblogic Server 6 Certifié webmethods Integration 4.6 Certifié webmethods Enterprise 5.0 Certifié webmethods
Plus en détailProgramme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence
É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION Mentions
Plus en détailUrbanisme 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étail18 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étailLes outils de création de sites web
Tuto 1ère séance - p1 Les outils de création de sites web Sources : Réalisez votre site web avec HTML5 et CSS3 de Mathieu Nebra (Edition Le Livre du Zéro) site fr.openclassrooms.com (anciennement «site
Plus en détailFailles XSS : Principes, Catégories Démonstrations, Contre mesures
HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Séminaire 15 ans HSC Failles XSS : Principes, Catégories Démonstrations,
Plus en détailIntroduction à Microsoft InfoPath 2010
Introduction à Microsoft InfoPath 2010 Couplé à Microsoft SharePoint Designer 2010, InfoPath 2010 simplifie la création de solutions de bout en bout sur SharePoint Server 2010, qui contiennent des formulaires
Plus en détailE.N.T. Espace Numérique de Travail
E.N.T. Espace Numérique de Travail Portail de l UM2 Outil de communication, de partage, de stockage, Présentation et Modalités d utilisation Page 1 sur 20 Sommaire I. Présentation du portail 3 A. Le concept
Plus en détailFormation en Logiciels Libres. Fiche d inscription
République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)
Plus en détailMagento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s
Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN
Plus en détailHébergement de site web Damien Nouvel
Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture
Plus en détailConfiguration Matérielle et Logicielle AGORA V2
Configuration Matérielle et Logicielle AGORA V2 Sommaire A- PREAMBULE 2 B - LE SERVEUR : 3 PLATES-FORMES SERVEURS DE DONNEES SUPPORTEES... 3 MOTEUR DE BASE DE DONNEES... 3 PROTOCOLES RESEAUX... 3 VERSION
Plus en détailYann BECHET 32 ans 8 ans d expérience yann@bechet.org http://www.bechet.org/cv
32 ans 8 ans d expérience yann@bechet.org http://www.bechet.org/cv Chef de projets Conception Orientée Objets Réseaux et systèmes distribués Formation 1999 Diplôme d Etudes Approfondies «réseaux et systèmes
Plus en détail10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]
10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une
Plus en détail... Conseil. Exp er tise. I ngénierie. Formation
0 I ngénierie Formation A T A Exp er tise L O G Conseil C.... U E F O R MAT I O N Formation Gestion des Projets / MOA Formations Projets, Référenciels et outils FPRO00 Gérer un projet informatique FPRO00
Plus en détailLes services usuels de l Internet
Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet Courrier électronique (mail) - protocole SMTP (Simple Mail Transfer Protocol) inclut maintenant tous types
Plus en détailLes Architectures Orientées Services (SOA)
Les Architectures Orientées Services (SOA) Ulrich Duvent Guillaume Ansel Université du Littoral Côte d Opale 50, Rue Ferdinand Buisson BP 699 62228 Calais Cedex Téléphone (33) 03.21.46.36.92 Télécopie
Plus en détailArchitecte 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étailCursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement
Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons
Plus en détailQuel ENT pour Paris 5?
Quel ENT pour Paris 5? Objectifs et Enjeux Contexte et ob jectifs du projet Objectifs Mettre à disposition des usagers de l établissement (étudiants, personnels, partenaires, contacts, internautes) : un
Plus en détailTechnologies 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étailGlossaire. 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étail4. 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étailPré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étailCQP Développeur Nouvelles Technologies (DNT)
ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,
Plus en détailS7 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étailProgrammation Web. Introduction
Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)
Plus en détailTable des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?
Avant-propos... V CHAPITRE 1 Scripting Windows, pour quoi faire?... 1 Dans quel contexte?.................................................. 1 La mauvaise réputation............................................
Plus en détailA5.2.4 Étude d une technologie, d'un composant, d'un outil
Assistance et dépannage des visiteurs : Etude des prérequis de glpi : A5.2.4 Étude d une technologie, d'un composant, d'un outil Sujet : Prérequis Tout ce qu'il faut savoir pour une installation confortable
Plus en détailUbuntu Linux Création, configuration et gestion d'un réseau local d'entreprise (3ième édition)
Introduction 1. Introduction 13 2. Le choix de l'ouvrage : Open Source et Linux Ubuntu 13 2.1 Structure du livre 13 2.2 Pré-requis ou niveau de connaissances préalables 13 3. L'objectif : la constitution
Plus en détailSpécialiste Systèmes et Réseaux
page 1/5 Titre professionnel : «Technicien(ne) Supérieur(e) en Réseaux Informatiques et Télécommunications» inscrit au RNCP de niveau III (Bac + 2) (J.O. du 19/02/2013) 24 semaines + 8 semaines de stage
Plus en détailde logiciels Web 2.0, SaaS Logiciels collaboratifs Portails pour entreprises Développement iphone, Android WebApp HTML5 Mobile marketing
Web 2.0, SaaS Logiciels collaboratifs Portails pour entreprises Développement Développement de logiciels de logiciels Solutions mobiles iphone, Android WebApp HTML5 Mobile marketing Ingénierie Régie d
Plus en détailThierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition
XML par la pratique Bases indispensables Concepts et cas pratiques 3 ième édition Nouvelle édition Thierry BOULANGER Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante
Plus en détail7 villa de la citadelle Né le 13 mai 1983 94110 Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES
Philippe Crépin 7 villa de la citadelle Né le 13 mai 1983 94110 Arcueil Nationalité : Française : 06.17.46.12.09 : phi.crepin@gmail.com Disponibilité : En poste chez Soft Computing Développeur Web JEE
Plus en détailEnvironnements de Développement
Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement: Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus
Plus en détailDispositif e-learning déployé sur les postes de travail
Résumé : Ce document fait l inventaire du matériel et des moyens nécessaires à la production de sessions de formation à distance à partir des postes de travail des salariés bénéficiant d une connexion
Plus en détailProgramme ASI Développeur
Programme ASI Développeur Titre de niveau II inscrit au RNCP Objectifs : Savoir utiliser un langage dynamique dans la création et la gestion d un site web. Apprendre à développer des programmes en objet.
Plus en détail«clustering» et «load balancing» avec Zope et ZEO
IN53 Printemps 2003 «clustering» et «load balancing» avec Zope et ZEO Professeur : M. Mignot Etudiants : Boureliou Sylvain et Meyer Pierre Sommaire Introduction...3 1. Présentation générale de ZEO...4
Plus en détailIBM DB2 Alphablox. d administration GC11-2170-00
IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 ii IBM DB2 Alphablox - Guide d administration Table des matières Avis
Plus en détailTHEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL
. THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL Mr MEZRED MOHAMED Ingénieur météorologue INTRODUCTION Il existe de nombreuses manières de construire une base de données. En effet,
Plus en détail3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures
3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures Objectif global : A l issue de la formation, les stagiaires doivent être opérationnels dans la création d un site internet
Plus en détailFileMaker Server 12. publication Web personnalisée avec XML
FileMaker Server 12 publication Web personnalisée avec XML 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker et Bento sont
Plus en détailModèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)
LA BOITE A OUTILS DE L ACHETEUR DE BPM Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM) La boîte à outils de l acheteur de solution BPM -
Plus en détailTIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web
Réseau informatique TIC TC - IUT Montpellier Internet et le Web Ensemble d'ordinateurs reliés entre eux et échangeant des informations sous forme de données numériques But : Rendre disponible l information
Plus en détailCisco Certified Network Associate
Cisco Certified Network Associate Version 4 Notions de base sur les réseaux Chapitre 3 01 Quel protocole de la couche application sert couramment à prendre en charge les transferts de fichiers entre un
Plus en détailCursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2
Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons
Plus en détailRebol, un langage «différent»
02 Rebol (1) Chap 01 Page 13 Mardi, 18. septembre 2001 6:06 18 1 Rebol, un langage «différent» «Il est temps de faire quelque chose de différent.» Cette phrase de Carl Sassenrath, le concepteur de Rebol,
Plus en détail