Principales caractéristiques

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

Download "Principales caractéristiques"

Transcription

1 Présentation Développé par Ryan Dahl - Société Joyent Inc. US en 2009, écrit en C++ et JavaScript. Projet "logiciel libre" (license MIT) construit pour permettre le développement, en JavaScript, de services réseaux hautement performants et supportant facilement les montées en charge. Utilise le moteur JavaScript V8 de Google, une architecture événementielle et des entrées/sorties asynchrones pour améliorer les performances. Node.js est devenu rapidement très populaire comme plateforme serveur et est utilisé notamment par: MicroSoft, SAP, Linkedin, PayPal,... La version courante en 2015 est la Principales caractéristiques Fonctionne sur le principe d'une boucle d'événements mono-thread (comme "Event Machine" de Ruby ou "Twisted" de Python). Utilise des Entrées/Sorties Asynchrones (utilise pour cela en interne la librairie C libuv). Se programme en JavaScript, mais un JavaScript "amélioré". Propose une librairie JavaScript intégrée assez sommaire mais implémentée de manière très efficace. Si la librairie interne n'est pas suffisante, il propose un très grand nombre de modules et un superbe outil (npm) pour les gérer. 1

2 Ce que cache ses entrailles node standard library http(s), net, stream, fs, events, buffer JS node bindings JS / C++ V8 JavaScript VM libuv thread pool event loop async I/O c-ares async DNS http_parser OpenSSL zlib, etc. C/C++ JavaScript pourquoi? JavaScript est très populaire (utilisé par tous les développeurs web). JavaScript est, comme Node.js, entièrement basé sur la programmation événementielle JavaScript n'a pas intrinsèquement d'i/o bloquante (en fait il n'a pas d'i/o du tout sauf via une API Node.js spéciale). Certains problèmes du langage sont corrigés: modularisation, encapsulation, API d'entrées/sorties,... (implémentation des specs. CommonJS). Node.js utilise le moteur V8 de Google qui est très optimisé et compile le JavaScript en langage machine. 2

3 Oui, mais un JavaScript modulaire! Exemple de module (fichier base64.js): var encoding= 'base64'; // variable privée exports.tobase64 = function(s) { return new Buffer(s).toString(encoding); } et d'utilisation du module (fichier apps.js): var b64 = require('./base64'); var a = b64.tobase64('jssaturday'); Les événements Node.js est basé sur les événements. Node.js utilise un seul thread (une boucle d'événements) mais aucune opération n'est bloquante. Les opérations un peu longues (chargement d'un fichier, requête réseau, ) sont lancées en tâche de fond (par un "worker thread") et au terme de l'opération un événement est envoyé, celui-ci déclenche alors l'exécution d'une fonction dite de "callback". Ces fonctions de callback apparaissent dans toutes les applications Node.js. 3

4 Le problème du multi-threads 1. La synchronisation des threads: difficile à gérer, coûteuse question performances. 2. Le passage d'un thread à un autre nécessite un "context switch": coûteux en temps d'exécution et mémoire. La boucle d'événements 4

5 Les événements Un très grand nombre d'objets Node.js émettent des événements: ils héritent tous d'un objet EventEmitter fourni par Node. Par exemple le module "http", utilisable pour créer un serveur web, comprend un objet Server qui émet différents événements: request, connection, close,... Pour écouter un événement il faut faire appel à la méthode on() et indiquer : 1. Le nom de l'événement écouté 2. La fonction de callback à appeler quand l'événement survient Les événements Exemple: var server = http.createserver(); server.on('request', function(req, res) { }); Ou, plus directement, grâce à un raccourci syntaxique proposé par le module http: var server = http.createserver(function(req, res) { }); 5

6 Les événements Pour émettre un événement il faut inclure le module events et créer un EventEmitter. var game= require('events').eventemitter(); Pour émettre un événement il faut faire appel à emit() en précisant le nom de l'événement à émettre et les informations à inclure dans celui-ci: game.emit('gameover', 'Vous avez perdu!'); On peut écouter cet événement avec la technique habituelle: game.on('gameover', function(message) { }); I/O Asynchrones Les entrées/sorties sont asynchrones: Node.js initie la requête d'entrée/sortie et retourne (pas d'attente bloquante). Le serveur peut effectuer d'autres tâches en attendant la complétion de la requête. A la complétion de la requête il y a notification, par événement, du résultat ou de l'erreur. Exemples de serveurs Web "asynchrones": nginx, lighttpd 6

7 I/O Asynchrones: pourquoi? Temps d'attente approximatif d'une requête de type I/O en fonction du support utilisé: Cycles CPU L1 cache 3 L2 cache 14 RAM 250 disk network Métaphore Pièce d à côté Maison d en face A l autre bout du quartier Tour complet de la terre A mi-chemin vers la lune I/O Asynchrones: un exemple Lecture de fichier asynchrone: function getafile(req, res) { fs.readfile("c:/data.xml", function(err, data) { if (!err) res.send(200, JSON.stringify(data)); } ); } 7

8 Bibliothèques JS intégrées Voici la liste des bibliothèques contenues dans Node.js: REPL : c'est l'interpréteur que vous avez quand vous tapez node dans votre console. assert : pour faire des assertions. console : pour les logs. debugger : point d'arrêt, pas à pas,... dns: accès aux serveurs de noms de domaines. event : gestion des événements. fs : gestion du système de fichiers. global : facilités disponibles partout http : gestion du protocole http net : gestion du réseau en mode asynchrone. path : gestion des paths sur un système de fichiers. Bibliothèques JS intégrées os: gestion du système: dossiers temporaires, noms d'hôtes,... querystring : échapper, analyser les arguments d'une requête. string_decoder : permet de passer d'un buffer à une chaîne. timers : permet d'appeler régulièrement des actions, tls : gestion du protocole SSL dgram : support des datagram Socket UDP util : différents outils, héritage, tests de type,... zlib : compression et lecture des formats gzip. 8

9 Le streaming des données Traditionnellement les frameworks HTTP traitent les requêtes et réponses comme des objets "monolitiques", alors qu'en fait ce sont des flux (streams) de données. Node.js étant très performant dans ses I/O, on peut s'en servir pour lire et écrire des flux de données via des WebSockets ou via HTTP. On peut ainsi imaginer, par exemple, transcoder un fichier video tout en le téléchargeant (réduisant ainsi sensiblement le temps de traitement). On peut aussi imaginer "piper" la sortie d'un processus tournant sur le serveur avec le stream d'un websocket à destination du browser et bénéficier ainsi d'une page Web qui s'affiche en temps réel. Voici pourquoi Node excelle dans les applications Web multi-utilisateurs, temps réels comme les "chat" ou les jeux. Un exemple de serveur socket varnet = require('net'); varserver = net.createserver(function(socket) { socket.write('hello\n'); socket.end(); }) server.listen(9898); 9

10 Un exemple de serveur HTTP varhttp = require('http'); varfs = require('fs'); // Chargement du fichier index.html affiché au client var server = http.createserver(function(req, res) { fs.readfile('./index.html', 'utf-8', function(error, content) { res.writehead(200, {"Content-Type": "text/html"}); res.end(content); }); }); server.listen(8080); Meilleur exemple de serveur HTTP varhttp = require('http'); varfs = require('fs'); function callback(req, res) { fs.readfile('./index.html', 'utf-8', function(error, content) { if(!error){ res.writehead(200, {"Content-Type":"text/html"}); res.end(content); }else{ res.writehead(500) res.end() }); } // Chargement du fichier index.html affiché au client var server = http.createserver(); server.on('request', callback); server.listen(8080); 10

11 NPM: Node Package Management npm est un module Node.js très pratique: il permet de rechercher et d'installer des packages, mais aussi de mettre à jour, et gérer leurs versions et plus encore (+/- équivalent de pip en python, gem en Ruby ou encore apt-get dans le monde Linux). npm utilise un registre centralisé de modules. Note: nombreux sont les développeurs qui trouvent, qu'à lui seul, cet outil justifie l'usage de Node.js! NPM: Node Package Management npm est très utile pour installer, mettre à jour et gérer les dépendances nécessaires à une application Node.js, mais il sert aussi à publier un package et permet ainsi de partager une application ou une librairie. Enfin, npm peut aussi être utilisé pour lancer une application Node.js 11

12 NPM: Node Package Management Pour utiliser npm avec une application Node, il faut placer un fichier package.json (un fichier de configuration au format JSON) à la racine du projet. Une commande comme npminit permettra de créer un squelette de fichier package.json mais on peut aussi créer celui-ci à la main. Le fichier package.json permet d'identifier le projet (nom, version, lancement, licences, données de configuration,...) et ses dépendances. NPM: Node Package Management {"name": "testnode", "version": "0.1.0", "description": "Petite application de test", "author": "JP Forestier "dependencies": {"colors": "0.x.x", "express": "3.3.x", "commander": "2.3.1"}, "devdependencies": {"mocha": "0.5.x"}, "engine": "node >= 0.8" } Modules nécessaire à l'exécution Modules nécessaire au développement seulement: unit tests, minification,... 12

13 NPM: Node Package Management Quelques exemples de commandes : npm help npm install packagename [-g]: effectue une installation du package en question dans le projet courant. g effectue une installation du package globalement (pour toutes les applications). npm update: met à jour, si besoin, les dépendances du projet courant npm init: crée un squelette de fichier package.json npm start: démarre l'application courante (section "script" dans package.json nécessaire) npm ls, npm search, npm config, NPM: Node Package Management Le registre central des modules npm est: Quelques chiffres: > modules (privés ou publics) >50 millions de téléchargements par jour Voici quelques modules très utilisés pour les applications Web. 13

14 Modules Node populaires Express "LE" frameworkweb (minimaliste) pour Node.js (inspiré du framework Ruby Sinatra). D'autres frameworksweb existent: Sails, Locomotive,... mais express est le plus utilisé. Request Request est un utilitaire simple, permettant de faire de Node.js un client HTTP (pratique pour utiliser des services REST depuis Nodes.js). Modules Node populaires mongoose Ce module est une librairie de type ODM (Object to Document Mapping) permettant d'interagir facilement avec MongoDB depuis Node.js. mongoose offre la possibilité de construire un schéma précis des données et se charge de vérifier celui-ci lors des insertions et mises à jour. 14

15 Modules Node populaires Underscore (ou Lodash) Underscore est une librairie JavaScript apportant à Node.js différents outils liés à la programmation fonctionnelle chère aux Pythonistes, comme les fonctions each(), map(), reduce(), filter() etc. CoffeeScript CoffeeScript est un langage de programmation qui se compile en JavaScript. Le langage ajoute du "sucre syntaxique", inspiré par Python, Ruby et Haskell, afin d'améliorer la brièveté et la lisibilité du code, tout en ajoutant des fonctionnalités comme le filtrage par motif ou les listes en compréhension. Modules Node populaires EJS (ou Jade) Jade et EJS sont des outils de type "template engine". Un template est un moyen de séparer le contenu rédactionnel (contenu textuel) de la forme (la manière dont il est présenté). Un template fait office de gabarit (modèle) où seuls certains éléments sont modifiables (le contenu texte, les images, le fond, ). L utilisation d un template facilite la conception d un site Internet et sa mise à jour, aussi bien en termes de contenu que de présentation. 15

16 Modules Node populaires Cheerio Une implémentation des fonctionnalités "core" de jquery pour le côté serveur (manipulation du DOM, extraction de données). Cheerio est "léger" et très efficace. Stylus (ou sass ou less) Stylus est un préprocesseur de CSS (tout comme Less ou SASS). Les préprocesseurs viennent combler certains manques du CSS (variables, structures de contrôles,...). Stylus semble le plus avancé des 3, sa syntaxe est proche de Jade. Modules Node populaires Socket.io Ce module permet de faire, très simplement, de la communication synchrone dans les applications Node.js en utilisant le principe des WebSocket HTML5. Comme tous les navigateurs ne connaissent pas encore l API WebSocket, Socket.io est capable de s adapter aux capacités du client et d'utiliser d'autres techniques de communication synchrones: Adobe Flash Socket, AJAX long polling, Socket.io permet une communication par événements entre serveur et client(s) (le broadcast est supporté) (sans toutefois utiliser les SSE HTML 5: vous pouvez utiliser le middleware connect-sse pour cela). 16

17 Modules Node populaires Uglify-js Ce module s'utilise généralement en ligne de commande et sert à minimiser et optimiser le code JavaScript. Ce processus peut être automatisé grâce à une tâche Grunt. async Ce module propose de nombreux outils liés à la programmation fonctionnelle (map, reduce, filter, each ) et implémente quelques design pattern très utile dans le contrôle des tâches asynchrones (parallel, series, waterfall ). Autres modules Sails/Americano (autres framework web) Commander/Optimist/Nopt (parsers d'arguments) Moment (date) Through (gestion de flux) Glob (recherche de fichiers) Rimraf/fs-extra (rm -rf, add-on file-system) Shelljs (Bash dans node) Chalk, Colors (coloration sortie console) Et comme outil de build: Grunt, Cake, Gulp ou Broccoli 17

18 Grunt Grunt est un task runner (exécuteur de tâches) en ligne de commande écrit en JavaScript. Similaire dans les grandes lignes à ANT, Maven ou Gradle, il est conçu principalement pour automatiser le traitement des tâches récurrentes effectuées sur les applications web : minification, optimisation des images, génération de sprites, compilation Sass/Less, etc. Grunt Son principe de fonctionnement repose sur un fichier de configuration: Gruntfile.js qui sert à la configuration des tâches, à gérer leur ordre d'exécution et à charger les modules nécessaires à leur bon déroulement: module.exports = function(grunt) { grunt.initconfig({ pkg: grunt.file.readjson('package.json'), // configuration des tâches grunt }); // Les modules pour gérer les tâches sont chargés ici: grunt.loadnpmtasks('grunt-contrib-jshint'); // Les tâches sont enregistrées ici: grunt.registertask('test', ['jshint', 'qunit']); }; 18

19 Grunt On lance les tâches Grunt en tapant simplement grunt en ligne de commandes, mais on peut même éviter de taper cette commande et automatiser complètement la procédure grâce au module watch. Parmi les concurrents de Grunt on peut citer Gulp, Cake ou Broccoli (Grunt est à ce jour le plus utilisé). Module d'authentification Si une authentification des clients s'avère nécessaire, le module Passport peut être utilisé pour cela. Passport sert à authentifier les requêtes, il délègue toutes les autres fonctionnalités à l'application. Note: Passport ne se charge que de l'aspect authentification, les autorisations peuvent êtres contrôlées par d'autres modules: everyauth, authom, (il n'y a pas de réel consensus sur un module d'autorisation à ce jour). 19

20 Module d'authentification Avec passport, l'authentification peut prendre différentes formes: Traditionnelle: l'utilisateur entre un login et un mot de passe. Utiliser un token d'authentification (JWT ou autre) Passer par le mécanisme SSO (Single sign-on) d'un fournisseur OAuth tel que Facebook, Twitter ou Google. Module d'authentification Passport considère que chaque application a un besoin d'authentification qui lui est propre et chaque technique d'authentification a un module qui lui est propre (passport-local, passport-token, passportfacebook, passport-twitter,...). Au final le code principal est très simple et ressemble à cela: app.post('/login', passport.authenticate('local', { successredirect: '/', failureredirect: '/login' })); 20

21 Node.js pour quel usage? Les serveurs Websocket (ex: serveur de chat) Le serveurs de téléchargement de fichiers (upload) Les serveurs d annonces publicitaires (AD-Server) Tous types de serveurs de données temps réel Le E-Commerce, la gestion des paiements, les médias sociaux, les services Web d'entreprises, En résumé, Node est un environnement JavaScript coté serveur, permettant le développement d'applications Web, de serveurs d'applications, et de toutes sortes d'applications réseau client ou serveur. Node.js adapté aussi pour Servir des documents "statiques", mais on obtient encore de meilleures performances en utilisant le serveur Nginx en "front end" d un serveur Node.js. 21

22 Mais pas ideal pour Les calculs intensifs (sollicitation du CPU): ils peuvent dégrader les temps de réponse du serveur et empêcher les montées en charge. Solutions: On peut améliorer les choses en créant un cluster de serveurs Nodes.js (il y a un module pour cela). On peut aussi installer plusieurs serveurs Node.js derrière un serveur Nginx agissant comme "reverse proxy". Node.js n est en tous cas pas Un framework pour applications Web: il y a des modules pour cela (express, Sails.js, ) Pour les débutants: car de très bas niveau Multi-thread (au sens où on l'entend en général) 22

23 En résumé, les avantages Logiciel libre (licence MIT) Très bonnes performances baisse des coûts d'infrastructure meilleure satisfaction des clients Exemples: Linkedin: Rails->Node.js: 10x moins de serveurs, 20x plus rapide Groupon: baisse de 50% du chargement des pages Paypal: temps de réponse / 2 Large et active communauté de développeurs En résumé, les avantages JavaScript+npm: Productivité élevée (ex: Paypal -> productivité x 2) Satisfaction des développeurs Uniformisation des développements côté client et serveur De grands acteurs l'utilisent (avec satisfaction): Wallmart, PayPal, Yahoo, Linkedin, Différents services d'hébergement d'applications Node.js (type Platform-as-a-Service (PaaS)) comme Modulus ou Heroku permettent un déploiement simple, sécurisé et économique. 23

24 Et pour les dev. Web Echange de données entre client et server facilité grâce au format commun: JSON Le même langage est utilisé côté client et serveur: Une même équipe de développeurs peut intervenir Même si 2 équipes distinctes: meilleure compréhension mutuelle. Mêmes outils de dev., test, profiling, etc.. des 2 côtés. Usage possible des templates côté client et/ou serveur. Un concurrent? io.js un fork ("amical") récent de Node.js. But du fork: échapper à la tutelle de Joyent, pour avoir une réactivité et une souplesse plus grandes (adoption du dernier moteur V8, adoption de nouveautés EcmaScript 6, utilisation de nouvelles librairies, ). io.js améliore encore les performances de Node.js dans de nombreuses situations. Fusion vraisemblable de Node.js et io.js prochainement on en parle, on l'espère, 24

Crédit : Joyent, Inc. Cécile HARDEBOLLE cecile.hardebolle@supelec.fr

Crédit : Joyent, Inc. Cécile HARDEBOLLE cecile.hardebolle@supelec.fr Crédit : Joyent, Inc. Cécile HARDEBOLLE cecile.hardebolle@supelec.fr Prérequis PraDque de JavaScript Compréhension de l'architecture client- serveur web rôle du client vs. rôle du serveur protocole HTTP

Plus en détail

Node.js, le pavé dans la mare

Node.js, le pavé dans la mare Node.js, le pavé dans la mare DekNOD v1.0.0 Un exemple, vite! http://tweetping.net/ 2 1. Présentation de Node Qu'est-ce que Node Projet créé en 2009 par Ryan Dahl (Joyent Inc.) Basé sur le langage JavaScript

Plus en détail

Programmation WEB. Introduction à Node.js. Programmation licence. IUT de Fontainebleau

Programmation WEB. Introduction à Node.js. Programmation licence. IUT de Fontainebleau Introduction à Node.js IUT de Fontainebleau 4 juin 2015 1 Introduction 2 3 4 5 Sommaire Introduction 1 Introduction 2 3 4 5 Nodejs? Introduction Ce n est pas un framework! Programme (environnement) créé

Plus en détail

Valum micro-framework web. Guillaume Poirier-Morency poirigui@iro.umontreal.ca

Valum micro-framework web. Guillaume Poirier-Morency poirigui@iro.umontreal.ca Valum micro-framework web Guillaume Poirier-Morency poirigui@iroumontrealca Résumé Valum est un micro-framework web écrit en Vala génèse et historique du langage Vala présentation du framework Valum exemples

Plus en détail

DEVELOPPEMENT LOGICIEL

DEVELOPPEMENT LOGICIEL DEVELOPPEMENT LOGICIEL LE FRAMEWORK WEB RUBY ON RAIL REF : WELA010 DUREE : 4 JOURS TARIF : 2 060 HT Public Développeurs d applications web, Chefs de projet techniques, Architectes. Pré-requis Programmation

Plus en détail

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS Avant de commencer 1. Introduction 15 2. HTML5 oui, mais pas que... 15 2.1 HTML5 16 2.2 JavaScript 17 2.3 CSS 18 3. Les outils 18 Préparation des outils et création du projet 1. Introduction 21 2. Team

Plus en détail

Développer de nouvelles fonctionnalités

Développer de nouvelles fonctionnalités 19 Développer de nouvelles fonctionnalités Chaque site e-commerce est unique. Bien que Magento soit une application riche, des besoins spécifiques apparaîtront et l ajout de modules deviendra nécessaire.

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

LibreDA : JavaScript pour un logiciel administratif

LibreDA : JavaScript pour un logiciel administratif LibreDA : JavaScript pour un logiciel administratif Le retour de JavaScript Louis Martin Martin Simoneau 2 avril 2015 1 Objectifs 2 Le fureteur 3 JavaScript 4 Écosystème de développement 5 NoSQL 6 Exemples

Plus en détail

Node.js. Julien FONTANET. Olivier LAMBERT. Exploitez la puissance. de JavaScript. côté serveur

Node.js. Julien FONTANET. Olivier LAMBERT. Exploitez la puissance. de JavaScript. côté serveur Node.js Exploitez la puissance de JavaScript côté serveur Julien FONTANET Olivier LAMBERT Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr

Plus en détail

SERIGNE SOUHAIBOU MBACKE SALLA Site web : http://souhaibou.tk/

SERIGNE SOUHAIBOU MBACKE SALLA Site web : http://souhaibou.tk/ SERIGNE SOUHAIBOU MBACKE SALLA Site web : http://souhaibou.tk/ Développeur Freelance Sicap libérté 4 Villa 5122/E Dakar Sénégal 221 77 454 98 93 souhaibou@hansomsenegal.com @souhaibousall souhaibou salla

Plus en détail

Java. et jquery. Intégrer un framework JavaScript. dans l écosystème JEE. Kévin VALETTE

Java. et jquery. Intégrer un framework JavaScript. dans l écosystème JEE. Kévin VALETTE Java et jquery Intégrer un framework JavaScript dans l écosystème JEE Kévin VALETTE Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr Saisissez

Plus en détail

La MEAN stack. Qu'est-ce qu'une stack?

La MEAN stack. Qu'est-ce qu'une stack? La MEAN stack Jean-Philippe FORESTIER (jpf@osyx.com) http://www.mean-stack.info Qu'est-ce qu'une stack? Une stack est une pile de technologies utilisée pour développer une application web. Une stack peut

Plus en détail

Contact. Gérard TOKO. Nom: hello@gerardtoko.com. Email: http://www.gerardtoko.com. Site Web: gerardtoko. Github:

Contact. Gérard TOKO. Nom: hello@gerardtoko.com. Email: http://www.gerardtoko.com. Site Web: gerardtoko. Github: Dossier Technique Contact - Nom: Email: Site Web: Github: Gérard TOKO hello@gerardtoko.com http://www.gerardtoko.com gerardtoko PARCOURS ET COMPÉTENCES Parcours scolaire HETIC, École supérieure des nouvelles

Plus en détail

Application web pour la coordination de trajets piétons jusqu aux transports en commun

Application web pour la coordination de trajets piétons jusqu aux transports en commun Application web pour la coordination de trajets piétons jusqu aux transports en commun PROJET DE FIN D ETUDES ASR Etudiants : Encadrants : Oumar Sharif DAMBABA Clément BERTHOU Olivier BERGER Christian

Plus en détail

HTML5 et PHP 5 - Développez des applications web performantes Exploitez les dernières nouveautés des langages

HTML5 et PHP 5 - Développez des applications web performantes Exploitez les dernières nouveautés des langages Avant-propos 1. HTML5 11 2. PHP5 11 3. Démarche de cet ouvrage 12 4. Pré-requis 13 5. Compatibilité des navigateurs 14 Les apports d'html5 1. Introduction 15 2. Améliorer la structure de son contenu 16

Plus en détail

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Sommaire 1. Introduction 2. Installation 3. Fonctionnement 4. Développement 5. Démonstration 2

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

Joomla! Création et administration d'un site web - Version numérique

Joomla! Création et administration d'un site web - Version numérique Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique

Plus en détail

AngularJS Développez aujourd'hui les applications web de demain

AngularJS Développez aujourd'hui les applications web de demain Avant-propos 1. Pourquoi ce livre? 11 2. À qui s'adresse cet ouvrage? 12 3. Structure de l'ouvrage 12 4. Remerciements 13 Introduction à AngularJS 1. Introduction 15 2. Single Page Application 16 3. AngularJS

Plus en détail

JavaScript'ing. npm install -g javascripting. #nodeschoolparis

JavaScript'ing. npm install -g javascripting. #nodeschoolparis JavaScript'ing Apprendre tranquillement les bases du langage : Variables Strings, Numbers, Arrays, Objects Boucles Propriétés Fonctions Idéal pour démarrer si vous ne connaissez pas encore JavaScript!

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

de survie du chef de projet

de survie du chef de projet KIT de survie du chef de projet 01 1 2 3 4 5 6 04 03 07 07 03 03 LE SERVEUR LE CLIENT TECHNOLOGIE WEB CLIENT LE SERVEUR WEB TECHNIQUES & CADRE DE TRAVAIL APPLICATIONS 101 LE SERVEUR Un serveur informatique

Plus en détail

Zend Framework 2 Développez des applications web mobiles (PHP, HTML5, JavaScript, NoSQL)

Zend Framework 2 Développez des applications web mobiles (PHP, HTML5, JavaScript, NoSQL) Avant-propos 1. À qui s adresse ce livre? 13 2. Comment cet ouvrage est-il structuré? 15 Premiers pas avec Zend 1. Objectif 19 2. Quoi de neuf chez Zend? 20 2.1 Zend Framework 2 20 2.2 Les nouveaux composants

Plus en détail

INTRODUCTION CHAPITRE 1

INTRODUCTION CHAPITRE 1 CHAPITRE 1 INTRODUCTION Query, qu est-ce que c est?... 11 HTML, CSS, JavaScript, PHP : qui fait quoi?... 16 Un environnement de développement simple et gratuit... 19 Ce que vous allez apprendre... 20 9

Plus en détail

SERIGNE SOUHAIBOU MBACKE SALLA

SERIGNE SOUHAIBOU MBACKE SALLA SERIGNE SOUHAIBOU MBACKE SALLA Développeur Freelance Sicap libérté 4 Villa 5122/E Dakar Sénégal 221 77 454 98 93 souhaibou.hansomsenegal@gmail.com @souhaibousall souhaibou salla Informations Personnelles

Plus en détail

Conférence SIG 2011 Versailles 5-6 Octobre 2011 Atelier Technique ArcGIS for Server en 10.1

Conférence SIG 2011 Versailles 5-6 Octobre 2011 Atelier Technique ArcGIS for Server en 10.1 Conférence SIG 2011 Versailles 5-6 Octobre 2011 Atelier Technique ArcGIS for Server en 10.1 Gaëtan LAVENU Plan de la présentation Vision Installation et Configuration Architecture Publication de services

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

Bénéfices de Citrix NetScaler pour les architectures Citrix

Bénéfices de Citrix NetScaler pour les architectures Citrix Bénéfices de Citrix NetScaler pour les architectures Citrix 15 novembre 2007 Auteurs: Mahmoud EL GHOMARI E-mail: mahmoud.elghomari@eu.citrix.com Stéphane CAUNES E-mail: stephane.caunes@eu.citrix.com Riad

Plus en détail

Le client/serveur dans le cas du Web

Le client/serveur dans le cas du Web Le client/serveur dans le cas du Web Olivier Flauzac & Cyril Rabat olivier.flauzac@univ-reims.fr cyril.rabat@univ-reims.fr Licence 3 Info - Info0503 - Introduction à la programmation client/serveur 2015-2016

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

Hébergement de site web Damien Nouvel

Hé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étail

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript...

Projet Web. Tim Burton. Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Projet Web Tim Burton Refonte complète du site de Tim Burton en utilisant les dernières technologies du web : HTML 5 / CSS 3 / JavaScript... Par Omar EDDASSER L3 ISC parcours MIAGE Sous l enseignement

Plus en détail

CHAPITRE 11. Temps réel Remy Sharp

CHAPITRE 11. Temps réel Remy Sharp CHAPITRE 11 Temps réel Remy Sharp LE WEB EN TEMPS RÉEL fait partie de ces aspects d Internet qu on apprécie d utiliser mais qui peuvent être assez effrayants quand il faut les mettre en place. Ce chapitre

Plus en détail

HTML5. Développement d applications Web. Visual Studio 2015 et TFS. L art et la manière. avec. Philippe DIDIERGEORGES

HTML5. Développement d applications Web. Visual Studio 2015 et TFS. L art et la manière. avec. Philippe DIDIERGEORGES Epsilon_GT_v8_Mise en page 1 20/07/2015 15:45 Page 29 Développement d applications Web HTML5 L art et la manière avec Visual Studio 2015 et TFS Préface Avant de commencer Préparation des outils et création

Plus en détail

Sujet Projets 2 nd Semestre

Sujet Projets 2 nd Semestre Sujet Projets 2 nd Semestre Seuls les appels systèmes vus en cours sont autorisés. L usage d autres fonctions doit impérativement être validé par l enseignant. La date d ouverture pour l assignation de

Plus en détail

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

«clustering» et «load balancing» avec Zope et ZEO

«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étail

Maîtrisez Qt 5 Guide de développement d'applications professionnelles

Maîtrisez Qt 5 Guide de développement d'applications professionnelles Introduction 1. Objectifs et méthode 15 2. Glossaire 16 3. Qt, qu'est-ce? 18 3.1 Histoire 19 3.2 Compatibilité 20 3.3 Notoriété 21 3.4 Bibliothèque ou framework? 21 3.5 Documentation 21 3.6 Que peut-on

Plus en détail

Formation GWT. www.objis.com - Formation GWT 1

Formation GWT. www.objis.com - Formation GWT 1 Formation GWT www.objis.com - Formation GWT 1 Sommaire Formation GWT Introduction Qu'est ce qu'une application GWT? Méthodologie et étapes clés gestion projet GWT Interface utilisateur : widgets, panels,

Plus en détail

Ancien utilisateur Amiga et developpeur BeOS enregistré. A propos de moi

Ancien utilisateur Amiga et developpeur BeOS enregistré. A propos de moi A propos de moi Nenad "DocKimbel" Rakocevic Programmeur depuis 25 ans: C/C++, *Basic, ASM, REBOL, Javascript, Co-fondateur d'une entreprise IT à Paris: Softinnov Auteur de plusieurs librairies pour REBOL:

Plus en détail

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013 Introduction 1. Présentation du cas d étude 13 1.1 Présentation générale 13 1.2 Présentation des applications 13 2. Déroulement du projet 14 3. Pré-requis et fondamentaux techniques à connaître 15 3.1

Plus en détail

Tutoriel Ionic framework

Tutoriel Ionic framework INGÉNIEURS EN SCIENCES INFORMATIQUES ADAPTATION DES INTERFACES A L ENVIRONNEMENT Tutoriel Ionic framework Tutoriel et présentation du framework IONIC : technologie permettant la réalisation d applications

Plus en détail

MooTools. Framework Javascript. Florent PRUNETA Vincent SEBILLE Malo RAISIN

MooTools. Framework Javascript. Florent PRUNETA Vincent SEBILLE Malo RAISIN MooTools Framework Javascript Florent PRUNETA Vincent SEBILLE Malo RAISIN 11/06/2013 Problématique Simplifier le développement en Javascript pour certaines fonctionnalités 11/06/2013 MooTools - Florent

Plus en détail

Applications Web : Compilation native ou Offline Apps

Applications Web : Compilation native ou Offline Apps Applications Web : Compilation native ou Offline Apps Programmation Web avancée et mobile Mif38 Aurélien Tabard 1 Rich Internet Application (RIA) Définition (rappel) : application Web riche Utilise des

Plus en détail

Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC)

Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC) Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC) OBJECTIFS - Créer une boutique sous wordpress et la référencer. - Mise en place du contenu, des articles Une bonne connaissance

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

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué

Plus en détail

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence

Plus en détail

Facebook Création d'applications avec PHP et JavaScript - Version numérique

Facebook Création d'applications avec PHP et JavaScript - Version numérique Introduction. Avant-propos 1. Objectif 1 1. Pré-requis 2 1.3 Structure 2 1.4 Conventions 3 1.4.1 Règles 3 1.4.2 Code source 3 2. Historique 4 2.1 2003-200 : les origines 4 2.2 2005-2008 : l'envol 7 2.3

Plus en détail

Point sur les solutions de développement d apps pour les périphériques mobiles

Point sur les solutions de développement d apps pour les périphériques mobiles Point sur les solutions de développement d apps pour les périphériques mobiles Par Hugues MEUNIER 1. INTRODUCTION a. Une notion importante : le responsive web design Nous sommes en train de vivre une nouvelle

Plus en détail

Conception d Applications Réparties

Conception d Applications Réparties Jean-François Roos LIFL - équipe GOAL- bâtiment M3 Extension - bureau 206 -Jean-Francois.Roos@lifl.fr 1 Objectifs du Cours Appréhender la conception d applications réparties motivations et concepts architectures

Plus en détail

WASD en environnement haute disponibilité Jean-Pierre PETIT WASD Le produit WASD WASD signifie Wide Area Surveillance Division C est le nom d une division de la défense australienne qui a accepté en 1996

Plus en détail

HTML5 et JavaScript Développez des applications pour le Windows Store

HTML5 et JavaScript Développez des applications pour le Windows Store Avant-propos 1. Pourquoi ce livre? 15 2. À qui s adresse cet ouvrage? 16 3. Structure de l ouvrage 17 4. Remerciements 17 Le système d exploitation Windows 1. Introduction 19 2. Le système Microsoft Windows

Plus en détail

«Clustering» et «Load balancing» avec Zope et ZEO

«Clustering» et «Load balancing» avec Zope et ZEO «Clustering» et «Load balancing» avec Zope et ZEO IN53 Printemps 2003 1 Python : généralités 1989 : Guido Van Rossum, le «Python Benevolent Dictator for Life» Orienté objet, interprété, écrit en C Mêle

Plus en détail

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox Version utilisée pour la Debian : 7.7 Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox Caractéristiques de bases : Un service web (ou service de la toile) est

Plus en détail

AJAX AJAX. Asynchronous JavaScript And XML. Technologie pour créer des pages web interactives Basées sur XML, HTML et JavaScript

AJAX AJAX. Asynchronous JavaScript And XML. Technologie pour créer des pages web interactives Basées sur XML, HTML et JavaScript AJAX Ajax 1 AJAX Asynchronous JavaScript And XML. Technologie pour créer des pages web interactives Basées sur XML, HTML et JavaScript Utilise: HTML pour le marquage XML pour représenter les résultats

Plus en détail

2014 / 2015 MASTÈRE 1 WEB

2014 / 2015 MASTÈRE 1 WEB COFFEE DASHBOARD A personal smart-board for coffee lovers & others THOMAS ALBEROLA 2014 / 2015 MASTÈRE 1 WEB 1 PLAN DU DOSSIER 1. Introduction... 2. Périmètre du projet... A. Analyse de l'existant / Positionnement

Plus en détail

Redécouvrir JavaScript avec Node.js

Redécouvrir JavaScript avec Node.js Redécouvrir JavaScript avec Node.js Sébastien Castiel Licence Le contenu de ce livre est distribué sous licence Creative Commons Attribution - Pas d Utilisation Commerciale - Partage dans les Mêmes Conditions

Plus en détail

Fiche Technique Windows Azure

Fiche Technique Windows Azure Le 25/03/2013 OBJECTIF VIRTUALISATION mathieuc@exakis.com EXAKIS NANTES Identification du document Titre Projet Date de création Date de modification Fiche Technique Objectif 25/03/2013 27/03/2013 Windows

Plus en détail

Play! Framework. We are Reactive!

Play! Framework. We are Reactive! Play! Framework We are Reactive! Aujourd hui Que favorise les nouveaux frameworks web? Aujourd hui Que favorise les nouveaux frameworks web? 1. Asynchrone 2. Stateless 3. Légèreté Aujourd hui Quels sont

Plus en détail

Performance, rendement Vs Evolutivité

Performance, rendement Vs Evolutivité La Communauté Drupal 1000 cerveaux sont bien plus puissants qu un seul Les fonctionnalités que nous cherchons existent déjà! Ne réinventons pas la roue! Il ya des développeurs Drupal qui sont des génies!

Plus en détail

Un serveur web léger et ouvert

Un serveur web léger et ouvert Un serveur web léger et ouvert A propos de moi Nenad Rakocevic Programmeur depuis 25 ans: C/C++, *Basic, ASM, REBOL, Javascript, Co-fondateur de Softinnov, entreprise IT à Paris Auteur de plusieurs librairies

Plus en détail

Développement WEB en JAVA avec le Framework. Antoine CHAUVIN IR3 22 janvier 2013

Développement WEB en JAVA avec le Framework. Antoine CHAUVIN IR3 22 janvier 2013 Développement WEB en JAVA avec le Framework Antoine CHAUVIN IR3 22 janvier 2013 I) Historique II) Qu est ce que PLAY III) Les grands concepts IV)Développer en java avec PLAY Framework PLAY Antoine CHAUVIN

Plus en détail

Hacking et Forensic Développez vos propres outils en Python

Hacking et Forensic Développez vos propres outils en Python Le réseau 1. Introduction 11 2. Les sockets 12 2.1 Création d'un socket 12 2.2 Échange de données 13 2.3 Les erreurs 14 2.4 Socket et FTP 17 2.5 Utilisation de l'udp 19 3. Création d'un serveur 20 3.1

Plus en détail

Nouveautés Ignition v7.7

Nouveautés Ignition v7.7 ... Nouveautés Ignition v7.7 Nouveautés Ignition v7.7 Découvrez le Nouveau Scada avec plus de 40 nouveautés Principales nouveautés :... Cloud Templates Template Repeater Client Multilingue + Sequential

Plus en détail

Plan. Vérinews, phase 2. Marc-Antoine Tardif Pierre-Emmanuel Viau

Plan. Vérinews, phase 2. Marc-Antoine Tardif Pierre-Emmanuel Viau Vérinews, phase 2 Marc-Antoine Tardif Pierre-Emmanuel Viau Plan Pierre-Emmanuel VériNews L équipe Gestion du projet Phases du projet, besoins et priorités Cas d utilisations priorisés Marc-Antoine Architecture

Plus en détail

PLAN. I. Pourquoi : les besoins, les types d applications

PLAN. I. Pourquoi : les besoins, les types d applications PLAN I. Pourquoi : les besoins, les types d applications II. Comment : les technos et pratiques dont on dispose pour mettre en œuvre les applications III. Avec quels outils III.1 Introduction aux IDE III.2

Plus en détail

TECHNIQUES D INTÉGRATION MULTIMÉDIA DIFFUSION EN LIGNE (582-KGB-JQ) 1-3-2

TECHNIQUES D INTÉGRATION MULTIMÉDIA DIFFUSION EN LIGNE (582-KGB-JQ) 1-3-2 TECHNIQUES D INTÉGRATION MULTIMÉDIA DIFFUSION EN LIGNE (582-KGB-JQ) 1-3-2 Enseignant : Serge Parent Bureau : 841.3G Téléphone : 418-547-2191, poste 7134 Courriel: serge.parent@cjonquiere.qc.ca Élève 2

Plus en détail

ArcGIS 10.1 for Server

ArcGIS 10.1 for Server SIG 2012 - Conférence francophone Esri Versailles, France Atelier Technique - 4 Oct. 2012 ArcGIS 10.1 for Server Gaëtan LAVENU Plan de la présentation La vision Une nouvelle architecture Des nouveaux processus

Plus en détail

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques Introduction 1. Introduction 11 2. La plateforme de développement web de Microsoft 11 3. Définition du modèle de programmation MVC 14 4. L'historique d'asp.net MVC 17 4.1 ASP.NET MVC 1 (2008) 17 4.2 ASP.NET

Plus en détail

Utiliser le Zend Framework avec Symfony

Utiliser le Zend Framework avec Symfony Utiliser le Zend Framework avec Symfony Xavier Gorse ELAO A partir du support de Matthew Weier O'Phinney Chef de Projet, Zend Framework Xavier Gorse - xavier.gorse@elao.com Gérant de la société ELAO Expertise,

Plus en détail

Internet Information Services (versions 7 et 7.5) Installation, configuration et maintenance du serveur Web de Microsoft

Internet Information Services (versions 7 et 7.5) Installation, configuration et maintenance du serveur Web de Microsoft Introduction à IIS 1. Objectifs de ce livre 13 2. Implémentation d un serveur web 14 2.1 Les bases du web 14 2.2 Les protocoles web 16 2.3 Le fonctionnement d un serveur web 21 2.4 Les applications web

Plus en détail

HTML5 Quels enjeux pour la mobilité et le RIA?

HTML5 Quels enjeux pour la mobilité et le RIA? HTML5 Quels enjeux pour la mobilité et le RIA? Julien Roche Philippe Guédez Ludovic Garnier 2 Sommaire Evolution des usages du Web Applications mobiles multiplateformes Contributions d HTML5 au RIA Conclusion

Plus en détail

Bypass et filtre sur les requêtes destinées à la servlet W4

Bypass et filtre sur les requêtes destinées à la servlet W4 Note technique W4 Engine Bypass et filtre sur les requêtes destinées à la servlet W4 Cette note technique décrit le filtre de contrôle du bypass de la servlet W4. Versions de W4 Engine concernées : 5.0

Plus en détail

Single Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO

Single Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO Page 1 Introduction Sommaire I- Présentation de la technologie II- Architectures classiques et étude du marché III- Implémentation en entreprise IV- Présentation de systèmes SSO Annexes Page 2 Introduction

Plus en détail

Guide de sécurité de VMware vrealize Log Insight

Guide de sécurité de VMware vrealize Log Insight Guide de sécurité de VMware vrealize vrealize 2.5 Ce document prend en charge la version de chacun des produits répertoriés, ainsi que toutes les versions publiées par la suite jusqu'au remplacement dudit

Plus en détail

PJS 4 jours (28 heures) 2 000 HT (hors promotion ou remise particulière)

PJS 4 jours (28 heures) 2 000 HT (hors promotion ou remise particulière) L institut de formation continue des professionnels du Web Formation Polymer JS Référence formation : Durée : Prix conseillé : PJS 4 jours (28 heures) 2 000 HT (hors promotion ou remise particulière) Description

Plus en détail

Les templates. Chapitre 7. 1. Principes et généralités

Les templates. Chapitre 7. 1. Principes et généralités 351 Chapitre 7 Les templates 1. Principes et généralités Les templates Nous utilisons le mot anglais de template, car il est communément utilisé, répandu, et compris dans ce contexte par les professionnels.

Plus en détail

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales D 1.3.2 Rapport d analyse Auteurs: Johann Luethi, Laurent Opprecht, Patrick Roth

Plus en détail

SPT2013 - Description du cours NORAMSOFT SPT2013. SharePoint 2013 pour développeurs

SPT2013 - Description du cours NORAMSOFT SPT2013. SharePoint 2013 pour développeurs - Description du cours SharePoint 2013 pour développeurs 1 SHAREPOINT 2013 POUR DÉVELOPPEURS NORAMSOFT 1. Description du cours Ce cours intensif de 3 jours explore les opportunités de développement avec

Plus en détail

Architecture client/serveur

Architecture client/serveur Architecture client/serveur Table des matières 1. Principe du client/serveur...2 2. Communication client/serveur...3 2.1. Avantages...3 2.2. Inconvénients...3 3. HTTP (HyperText Transfer Protocol)...3

Plus en détail

Repérage dans le support de cours. D3.js ~ Data Driven Document. Notes. Notes

Repérage dans le support de cours. D3.js ~ Data Driven Document. Notes. Notes Visualisation interactive de données sur le web Présentation Généralités Repérage dans le support de cours Sur les slides projetés, le numéro de page entre parenthèse correspond à celui de votre support

Plus en détail

Zend Framework 2 Industrialisez vos développements PHP

Zend Framework 2 Industrialisez vos développements PHP Avant-propos 1. Lectorat 15 2. Contenu du livre 15 3. Pré-requis 17 Introduction 1. Un peu d histoire 19 1.1 Petite histoire de l informatique 19 1.2 Petite histoire des langages informatiques 20 1.3 Petite

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

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada AJAX (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre

Plus en détail

Guide d'installation de Citrix EdgeSight pour test de charge. Citrix EdgeSight pour test de charge 3.8

Guide d'installation de Citrix EdgeSight pour test de charge. Citrix EdgeSight pour test de charge 3.8 Guide d'installation de Citrix EdgeSight pour test de charge Citrix EdgeSight pour test de charge 3.8 Copyright L'utilisation du produit documenté dans ce guide est soumise à l'acceptation préalable du

Plus en détail

Programmation en C# avec Visual Studio 2010

Programmation en C# avec Visual Studio 2010 CATALOGUE DE FORMATION Année 2011 Sommaire Programmation en C# avec Visual Studio 2010... 3 Introduction au développement Web avec Visual Studio 2010... 4 Développement d'applications Web avec Microsoft

Plus en détail

Mettre en place un serveur Intranet/Internet

Mettre en place un serveur Intranet/Internet Mettre en place un serveur Intranet/Internet Dans ce chapitre vous apprendrez à installer et configurer un serveur Web grâce au rôle de serveur IIS (Internet Information Services). 1. Présentation d IIS7

Plus en détail

LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6

LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6 LOT03P6 - Domino 8.5 : XPages dans Domino Designer 8.5 - Partie 6 Objectifs du développement en 8.5 Fournir un outil de développement moderne Faire pour les développeurs ce que Notes 8 a fait pour l'utilisateur

Plus en détail

Vous devez IMPERATIVEMENT installer et utiliser ce navigateur

Vous devez IMPERATIVEMENT installer et utiliser ce navigateur GUIDE d utilisation Logiciels requis Les logiciels requis 3 Vous devez IMPERATIVEMENT installer et utiliser ce navigateur Mozilla Firefox (version minimum 2.0). L utilisation du navigateur Mozilla Firefox

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

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

Fonctionnalités de développement

Fonctionnalités de développement 163 Chapitre 5 Fonctionnalités de développement 1. Optimisation des applications ASP.NET Fonctionnalités de développement 1.1 Présentation de ASP.NET ASP.NET est un ensemble de technologies créé par Microsoft

Plus en détail

1. QCM (40 points) (1h)

1. QCM (40 points) (1h) Examen 1ère session 2012-2013 page 1 NSY 102 - AISL IPST-CNAM Intranet et Designs patterns NSY 102 Vendredi 26 Avril 2013 Durée : 3 heures Enseignants : LAFORGUE Jacques 1. QCM (40 points) (1h) Mode d'emploi

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 7 : RMI Nom(s) : Groupe : Date : Objectifs : savoir créer des applications client-serveur mettant en jeu des machines

Plus en détail

Tunnels et VPN. 20/02/2008 Formation Permanente Paris6 86. Sécurisation des communications

Tunnels et VPN. 20/02/2008 Formation Permanente Paris6 86. Sécurisation des communications Tunnels et VPN 20/02/2008 Formation Permanente Paris6 86 Sécurisation des communications Remplacement ou sécurisation de tous les protocoles ne chiffrant pas l authentification + éventuellement chiffrement

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail