Architecture Logicielle des IHM
|
|
- Armand Lambert
- il y a 8 ans
- Total affichages :
Transcription
1 Architecture Logicielle des IHM Principes de bases Modèle MVC Modèle PAC Avec des transparents repris des cours de l équipe IIHM du LIG
2 Une architecture, pourquoi faire? Organiser le code (rangement) Simplifier (diviser pour régner) Organiser le travail Itératif Parallèle (fusion) Modifier (une partie) Ré-utiliser Notion : modularité, évolutivité, flexibilité 2
3 IHM et architecture Séparation possible Code pour IHM Code «Métier» Exemple IHM différente pour une Gestion d un stock de chaussure ou de bibelots? Linux sous gnome ou kde, le système change-t-il? Objectif : éviter de tout modifier si on change la partie fonctionnel ou la partie IHM 3
4 Découpage par Abstraction Séparation IHM / NF Noyau fonctionnel (ou Functional Core ou partie Métier) Besoin d interface logicielle pour découpler (indépendance) des deux parties NF Partie de l IHM concrète IHM Pierre NF IHM Partie de l IHM concrète Jacques Partie de l IHM concrète Paul 4
5 Découpage par Abstraction Partie du NF concret Marie NF IHM Partie de l IHM concrète Jacques Partie de l IHM concrète Pierre Partie de l IHM concrète Paul Eva Partie du NF concret Partie Partie du du NF NF Concret concret Annie
6 Architecture : MVC Smalltalk [Goldberg et Robson ] Cause : difficultés de conception des applications fortement interactives Réponse : modularisation Model : modélisation (données et comportement) View : représentation manipulable de l'objet Control : interprétation des entrées 6
7 MVC : meilleure conception Séparer dans le code les données (le Modèle), La ou les Vues, Le Contrôle V s abonne à M C s abonne à V C modifie M Interfaces logicielles 7
8 MVC et Java utilisation synchrone Les classes Observer / Observable Observer "Fred" Observer "Arthur" Observable 1. Arthur 2. Martin S enregistre S enregistre Observer "Martin"
9 Observer / Observable Exemple : un timer class Test { Timer timer; Test() { timer = new Timer(); Toto toto = new Toto(); timer.addobserver(toto); public static void main(string[] args) { Test t = new Test(); t.timer.run(); toto est écouteur du timer 9
10 java.util.observer Toto est un observateur class Toto implements java.util.observer { public void update(observable o, Object arg) { System.out.println("Temps : " + ((Timer)o).getSeconds() + " secs"); Tous les observateurs doivent posséder une méthode update( ) 10
11 java.util.observable Exemple class Timer extends java.util.observable { private long zzz = 1000; private long zero; Timer(long zzz) { this.zzz = zzz; public void run () throws InterruptedException { zero = System.currentTimeMillis(); while (true) { setchanged(); notifyobservers(new Long(System.currentTimeMillis() - zero)); Thread.sleep(zzz); Les observables doivent être d une sous-classe de Observable On prévient les observateurs, ça appelle update( ) 11
12 Limite de MVC Dans la cas d une vue multiple, nous disposons d un pattern Pour le reste? Besoins d un cadre Jusqu à 80% du code concerne les interfaces Il faut viser la réutilisation et faciliter la maintenance / l évolution Comment faire collaborer des MVC ensemble (solution pour l IHM) 12
13 Architecture : Modèles à agents pour l IHM Un système interactif = une collection d unités de calcul spécialisés (agents) Un agent a un état a une expertise est capable d émettre et de réagir à des événements Un agent en contact direct avec l utilisateur = un interacteur Quelquefois agent = interacteur 13
14 Architecture : Modèles à agents pour l IHM... Motivations Modularité et parallélisme conception itérative (modifiabilité) dialogue à plusieurs fils mise en œuvre des collecticiels Correspondance avec l approche à objets catégorie d agents (réactifs) -> classe événement -> méthode encapsulation : l agent (l objet) est seul à modifier directement son état mécanisme de sous-classe -> modifiabilité Exemple : MVC (modulo pb de hierarchie) 14
15 PAC : Un modèle hiérarchisé d agent [Coutaz 87] Trois facettes : Présentation (C + V de MVC), le V de ALV Abstraction (M de MVC) Contrôle : communication entre agent et expression des dépendances (liaison) entre A et P (le L de ALV) Hiérarchisation : Arbre : relation père-fils Heuristique de conception Communication par message 15
16 Architecture : Modèles à agents PAC Aspects réalisation Aucune recommandation dépend de la plate-forme d accueil 1 agent = 1 module C au minimum, 1 objet ou 1 objet par facette (comme MVC) 16
17 Un exemple d application de PAC Capturer un objet (réalité cliquable) Voir les deux vidéos : utilisatrice (équipement) et capture (déroulement du scénario) 17
18 Exemple de hiérarchie PAC Données à afficher (ANF) Hiérarchie PAC Passerelle Représentation physique Représentation numérique Objets sauvés Réalité cliquable Données numériques localisées (ANF) Terrain augmenté Caméra Localisation Orientation
19 Exemple de circulation de message hiérarchie PAC M2 Passerelle Représentation physique M2 M2 M2 Représentation numérique M2 M1 M1 Réalité cliquable Evénements souris (stylet)
20 Exemple d implémentation PAC Classe Abstraite pour le controleur Implémentation par défaut de certaines méthodes Interfaces logicielles pour l Abstraction et la Présentation Possibilité d héritage Communication par message Une «String» pour identifier le type de message Un objet en attachement (peut être n importe quoi) Traitement : test sur le type de message et traitement adéquate (cast sur l attachement) 20
21 Exemple d Abstraction et de Présentation en Java package PAC; public interface Abstraction { public void affectecontroleur(controleur c); public void recoitmessage(string type, Object attachement); package PAC; public interface Presentation { public void affectecontroleur(controleur c); public void recoitmessage(string type, Object attachement); 21
22 Exemple de Controleur en java package PAC; import java.util.arraylist; public abstract class Controleur { protected Abstraction a; protected Presentation p; protected ArrayList<Controleur> enfants = new ArrayList<Controleur>(); protected Controleur parent; public abstract void recoitmessagecontroleur(string type, Object attachement); public abstract void recoitmessagepresentation(string type, Object attachement); public abstract void recoitmessageabstraction(string type, Object attachement); public void affecteparent(controleur p) { this.parent = p; public void ajouteenfant(controleur arg0) { if (! enfants.contains(arg0)) { enfants.add(arg0); arg0.affecteparent(this); protected void dispatchdownmessage(string type, Object att) { for (Controleur c : enfants) { c.recoitmessagecontroleur(type, att); protected void dispatchupmessage(string type, Object att) { if (parent!= null) parent.recoitmessagecontroleur(type, att); 22
23 PAC, MVC, HMVC PAC vs MVC Communication centralisée dans le C Isolement A et P PAC vs HMVC Hierarchical-Model-View-Controller (HMVC) PAC : 1987 ; HMVC : 2000 Connexion directe V M dans HMVC 23
24 Php et MVC : liste extraite de wikipédia Agavi is a PHP5 application framework that focuses on sustained quality and correctness. akaikiwi A PHP 5 lightweight and fast MVC framework with ORM, scaffolding, and more. Alloy A lightweight REST-focused modular Hierarchical MVC PHP 5.3 framework CakePHP A web application framework modeled after the concepts of Ruby on Rails. CodeCharge Studio is a visual rapid application development environment for web-based database driven application development. Code Charge Studio places emphasis on code generation technology to provide ASP.NET, PHP, JSP, Servlets, ColdFusion and Perl language support. CodeIgniter A simple, light, fast, open source MVC framework for building websites using PHP. Drupal An open source content management system that uses MVC for its add-ons called modules. eddy a lightweight, open-source PHP 5.3 MVC web application framework Exponent CMS A Content Management System web application framework using its own MVC framework modeled after Rails. ez Publish Based on ez Components is an object-oriented web application framework written in PHP that separates its functionality into several abstraction layers, following a strict MVC approach. Feng Office is an open source MVC Framework Extranet that allows a group of geographically distributed people to collaborate by sharing information over the Internet. Joomla! v1.5.x is an open source content management system that employs the MVC model for its extensions, called components and modules. Kohana v2.x is an open source MVC framework, while v3.x is HMVC (both supported). LightVC is a lightweight MVC framework without the model. This decoupling allows any model or object relation mapping (ORM) tool to be used, including none at all if one is not needed. Released under the FreeBSD license. MODx A full-featured open source OOP MVC/ORB xpdo-based CMS. MooVC An Object Oriented MVC Framework for PHP. Odin Assemble A Small footprint PHP based MVC framework. OpenCart Shopping cart which is fully based on MVC framework. phpxcore A MVC design pattern based PHP content management framework compatible with PHP4 and PHP5. PRADO Framework An open source PHP5 framework for creating professional web applications. PureMVC A framework for PHP. Qcodo An open-source PHP 5 web application framework. Recess An open-source framework focused on RESTful API and advanced language features SilverStripe Contains a fully fledged PHP 5.2 ORM/MVC framework focused on building websites. Switch board (framework) A PHP 5 MVC framework with routing. Spawn Framework An open source PHP5/OOP MVC framework Symfony Framework A PHP 5 MVC framework modeled after the concepts of Ruby on Rails. Yii An open source, object-oriented, high-performance component-based PHP web application framework. Zend Framework An open-source PHP 5-based framework featuring an MVC layer and a broad-spectrum of loosely coupled components. 24
25 Exemple d Abstraction et de Présentation en Php interface Abstraction { public function affectecontroleur(control $c); public function recoitmessage($type, $attachement=""); interface Presentation { public function affectecontroleur(control $c); public function recoitmessage($type, $attachement=""); public function getview($type, $option); public function getuserentries(); // pour reception des formulaires... 25
26 Exemple de Controleur en Php abstract class Control { protected $a; protected $p; protected $enfants = array(); protected $parent; abstract public function recoitmessagecontroleur($type, $attachement=""); abstract public function recoitmessagepresentation($type, $attachement=""); abstract public function recoitmessageabstraction($type, $attachement=""); abstract public function getview($type); public function affecteparent(control $p) { $this->parent = $p; public function ajouteenfant(control $arg0) { if (! in_array($arg0, $this->enfants)) { $this->enfants[] = $arg0; $arg0->affecteparent($this); protected function dispatchdownmessage($type, $att) { foreach ($this->enfants as $c) { $c->recoitmessagecontroleur($type, $att); protected function dispatchupmessage($type, $att) { if ($this->parent!= null) $this->parent->recoitmessagecontroleur($type, $att); public function save() { // pour sauvegarde dans une session... Et avoir accès aux facettes $_SESSION[get_class($this)] = $this; if ($this->a) $_SESSION[get_class($this->a)] = $this->a; if ($this->p) $_SESSION[get_class($this->p)] = $this->p; foreach ($this->enfants as $c) { $c->save(); 26
27 function autoload($class_name) { $name = ""; $indice = strpos($class_name, "Control"); autoload if ($indice === 0) { include_once "PAC/Control.inc"; return; else if ($indice) { $name = substr($class_name, 0, strlen($class_name)-7); else { $indice = strpos($class_name, "Abstraction"); if ($indice === 0) { include_once "PAC/Abstraction.inc"; return; else if ($indice) { $name = substr($class_name, 0, strlen($class_name)-11); else { Controler? $indice = strpos($class_name, "Presentation"); if ($indice === 0) { include_once "PAC/Presentation.inc"; return; else if ($indice) { $name = substr($class_name, 0, strlen($class_name)-12); else { include_once "includes/{$class_name.inc"; return; Autre Classe Les agents PAC : dans un répertoire à leur nom et en trois classes : NomControl.inc, NomAbstraction.inc et NomPresentation.inc Abstraction? Présentation? include_once "{$name/{$class_name.inc"; Les autres classes sont dans un répertoire «includes», dans un fichier Nom.inc 27
28 Utilisation de PAC en Php La hiérarchie PAC créée une fois ($_SESSION) Traitement des informations préalables (formulaires, liens, etc.) recoitmessage Demande de page à l agent de plus haut niveau getview Ce controleur «racine» collecte les vues pour les afficher (echo) 28
29 Règles Heuristiques Ensemble de règles heuristiques pour construire la hiérachie d'agents PAC à partir d une maquette À l origine dans le Contrôleur de Dialogue dans PAC-Amodeus Source Modèle d architecture des systèmes interactifs, chapitre 7. 29
30 R2 : Vue multiple Agent vue multiple d'une "œuvre" Environnement Wall Environment Zone Region Preferences Wall Place Route. Movable Object x Static Object Environment Zone Point Region Preferences? Wall Anchor x (m): Place Anchor y (m): Route Mouse x (m): 12. Movable Object Mouse y (m): 15 x Static Object Length (m): Point? Chaleur Anchor x (m): Anchor y (m): Mouse x (m): 12 Mouse y (m): 15 Length (m): 30
31 R2 : Vue multiple Agent vue multiple d'une "œuvre" Un superagent garantit la cohérence visuelle 31
32 PAC et MVC : vue multiple A C C V1 C P C P M V2
33 D autres Heuristiques R1 : fenêtre = un agent R3 : Palette de concepts Une palette de classes de concept = un agent Une barre de menu = un agent R4 : zone d édition Une zone d édition = un agent Condition : être suffisamment complexe R5 : correspondance agent / concept Un concept complexe = un agent 33
34 Heuristiques de liaison R6 : d une fenêtre à une autre Les deux sont sous le même agent parent commun R9 : Ciment syntaxique Agent ciment pour "analyse syntaxique distribuée 34
35 R9 : Ciment syntaxique Agent ciment pour "analyse syntaxique distribuée" Un superagent cimente les actions distribuées superagent ciment agent agent agent action de l'utilisateur action de l'utilisateur action de l'utilisateur
36 Heuristiques de simplification R10 : un agent fils unique peut être regroupé avec son père Attention à la modularité / réutilisation / évolution R11 : un agent dont la fonction est réalisée par un objet de la boîte à outils graphique devient un composant de la présentation de son père. 36
37 Corollaire de R11 Un objet d interaction non implémenté par la plate-forme -> un agent Un espace de travail -> un agent Un objet mur -> un agent 37
38 Exemple de développement : TROC projet France Telecom IIHM (clips, LIG) Analyse des besoins Conception Conception logicielle Evaluation ergonomique Tests utilisateur Tests d intégration Définition du jeu Qui joue Contexte du jeu Règle du jeu Arbre de tâche Tests unitaires Codage Note : le cycle de vie d une interface est ici représenté en V et sans retour sur les étapes précédentes de manière analytique
39 TROC : analyse des besoins
40 Troc : spécifications exeternes
41 Troc : un exemple d architecture 41
42 Troc : architecture pac (-amodeus)
43 Troc : architecture pac (-amodeus)
44 Troc : retour d expérience, reconception 44
45 Troc : architecture après re-conception 45
Une architecture, pourquoi faire? Architecture Logicielle des IHM. IHM et architecture. Découpage par Abstraction
Architecture Logicielle des IHM Principes de bases Modèle MVC Modèle PAC Une architecture, pourquoi faire? Organiser le code (rangement) Simplifier (diviser pour régner) Organiser le travail Itératif Parallèle
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étailPlan. Department of Informatics
Plan 1. Application Servers 2. Servlets, JSP, JDBC 3. J2EE: Vue d ensemble 4. Distributed Programming 5. Enterprise JavaBeans 6. Enterprise JavaBeans: Special Topics 7. Prise de recul critique Enterprise
Plus en détailOnce the installation is complete, you can delete the temporary Zip files..
Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une
Plus en détailCedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/
Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Webographie The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Les slides de cette présentation
Plus en détailWEB page builder and server for SCADA applications usable from a WEB navigator
Générateur de pages WEB et serveur pour supervision accessible à partir d un navigateur WEB WEB page builder and server for SCADA applications usable from a WEB navigator opyright 2007 IRAI Manual Manuel
Plus en détailForthcoming Database
DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailPRODUCTS LIST (updated 11th January 2010)
PRODUCTS LIST (updated 11th January 2010) OPERATING SYSTEMS SUN SOLARIS 10, 9, 10 B OP Application and database servers Red Hat Enterprise Linux Server 4.x and 5.x B OP Single Application Host Windows
Plus en détailLes frameworks au coeur des applications web
Les frameworks au coeur des applications web Mémoire de bachelor réalisé par : Arielle Moro Directeur de mémoire : Peter Daehne, Professeur HES Genève, le vendredi 27 août 2010, Haute Ecole de Gestion
Plus en détailUrbanisation des systèmes d information
Urbanisation des systèmes d information 29-08-2013 Université Lyon 1, 7 Novembre 2013 Présentation Julien VILLANTI (julien.villanti@worldline.net) Unité Public Santé Transport (département Contacts) Fonctions
Plus en détailQuick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.
Rational ClearCase or ClearCase MultiSite Version 7.0.1 Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Product Overview IBM Rational
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailExtension 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étailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailPar Laurent DESECHALLIERS. Mastère Spécialisé en Management de Projets en Milieu Industriel. CESI de Rouen Promotion 2002/2003.
JAVA et Design Pattern Page 1/26 JAVA et Design Pattern Etude des Pattern Design Modélisation UML, Etude et critique des implémentations Java Par Laurent DESECHALLIERS Mastère Spécialisé en Management
Plus en détailEnvironnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Plus en détailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailJADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.
: Java Agent DEvelopment framework Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.fr Introduction à la plateforme JADE 1) Modèle d agent 2) Services 3) Norme FIPA
Plus en détailDOCUMENTATION - FRANCAIS... 2
DOCUMENTATION MODULE CATEGORIESTOPMENU MODULE CREE PAR PRESTACREA INDEX : DOCUMENTATION - FRANCAIS... 2 INSTALLATION... 2 CONFIGURATION... 2 LICENCE ET COPYRIGHT... 3 SUPPORT TECHNIQUE ET MISES A JOUR...
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailDéveloppement Logiciel
Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles
Plus en détailDesign patterns. Design patterns - définition. Design patterns - avantages
Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern
Plus en détailCours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com
Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies
Plus en détailWhat s New. Sun ONE Application Server. Version 7, Enterprise Edition
What s New Sun ONE Application Server Version 7, Enterprise Edition 817-2142-10 September 2003 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Copyright 2003 Sun Microsystems, Inc.
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailOpen Source Professional Training
Excellence in Open Source Training Open Source Professional Training Catalogue des cours Juillet Décembre 2011 Phive Int 1200 Brussels www.opensourcesolutions.be/edu A propos des cours Open Source Acquerez
Plus en détailLES APPROCHES CONCRÈTES POUR LE DÉPLOIEMENT D INFRASTRUCTURES CLOUD AVEC HDS & VMWARE
LES APPROCHES CONCRÈTES POUR LE DÉPLOIEMENT D INFRASTRUCTURES CLOUD AVEC HDS & VMWARE Sylvain SIOU VMware Laurent DELAISSE Hitachi Data Systems 1 Hitachi Data Systems Corporation 2012. All Rights Reserved
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étailLOG4430 : Architecture logicielle et conception avancée
LOG4430 : Architecture logicielle et conception avancée Yann-Gaël Guéhéneuc Cours 3 Bibliothèques et chargement Dynamique de composants Département de génie informatique et de génie logiciel École Polytechnique
Plus en détailSHAREPOINT PORTAL SERVER 2013
Powered by TCPDF (www.tcpdf.org) SHAREPOINT PORTAL SERVER 2013 Sharepoint portal server 2013 DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 CORE SOLUTIONS Réf: MS20488 Durée : 5 jours (7 heures) OBJECTIFS
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailAUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12
GTK+ GLADE Page 1 sur 12 SOMMAIRE INTRO 3 Présentation de GTK+ 3 Présentation de GLADE 3 GTK+ 4 Installation 4 Les Widgets 4 Le système de hiérarchie 5 Les signaux 6 GLADE 7 Installation 7 L interface
Plus en détailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailPoint 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étailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailIntroduction à MapReduce/Hadoop et Spark
1 / 36 Introduction à MapReduce/Hadoop et Spark Certificat Big Data Ludovic Denoyer et Sylvain Lamprier UPMC Plan 2 / 36 Contexte 3 / 36 Contexte 4 / 36 Data driven science: le 4e paradigme (Jim Gray -
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
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étailTechnologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21
INSA - ASI TechnoWeb : Rappels UML 1/21 Technologie Web Conception de sites Web Alexandre Pauchet INSA Rouen - Département ASI BO.B.RC.18, pauchet@insa-rouen.fr INSA - ASI TechnoWeb : Rappels UML 2/21
Plus en détailDOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0
DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0 INDEX : DOCUMENTATION - FRANCAIS... 2 1. INSTALLATION... 2 2. CONFIGURATION... 2 3. LICENCE ET COPYRIGHT... 3 4. MISES
Plus en détailProgramming Server-Side Web Applications with Object-Oriented PHP. 420-060-NC Group 1638. Syllabus. Duration: 75 hours 1-2-2
Programming Server-Side Web Applications with Object-Oriented PHP 420-060-NC Group 1638 Syllabus Duration: 75 hours 1-2-2 Lecturer: Mathieu Viau mathieu.viau@gmail.com COLLÈGE DE MAISONNEUVE 3800, rue
Plus en détailHow to Login to Career Page
How to Login to Career Page BASF Canada July 2013 To view this instruction manual in French, please scroll down to page 16 1 Job Postings How to Login/Create your Profile/Sign Up for Job Posting Notifications
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailen SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com
Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com Fabrice GRELIER fabrice.grelier@fr.ibm.com RATIONAL en SCÈNE 2007 IBM Corporation Objectif
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailIndustrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational
IBM Software Group Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational Fernard Bonaguidi fernand.bonaguidi@fr.ibm.com
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailANGULAR JS AVEC GDE GOOGLE
ANGULAR JS AVEC GDE GOOGLE JUIN 2015 BRINGING THE HUMAN TOUCH TO TECHNOLOGY 2015 SERIAL QUI SUIS-JE? ESTELLE USER EXPERIENCE DESIGNER BUSINESS ANALYST BRINGING THE HUMAN TOUCH TO TECHNOLOGY SERIAL.CH 2
Plus en détailEncapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.
Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres
Plus en détailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailDu point de vue des entreprises, faut-il privilégier les Frameworks PHP aux CMS Open pour la création de sites internet?
Projet de Recherche et Innovation 5ème année Manager des systèmes d information Du point de vue des entreprises, faut-il privilégier les Frameworks PHP aux CMS Open pour la création de sites internet?
Plus en détailCours 1: Java et les objets
Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/
Plus en détailInstructions Mozilla Thunderbird Page 1
Instructions Mozilla Thunderbird Page 1 Instructions Mozilla Thunderbird Ce manuel est écrit pour les utilisateurs qui font déjà configurer un compte de courrier électronique dans Mozilla Thunderbird et
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailTABLE DES MATIERES A OBJET PROCEDURE DE CONNEXION
1 12 rue Denis Papin 37300 JOUE LES TOURS Tel: 02.47.68.34.00 Fax: 02.47.68.35.48 www.herve consultants.net contacts@herve consultants.net TABLE DES MATIERES A Objet...1 B Les équipements et pré-requis...2
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détailTypes d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles
Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce
Plus en détailVers l urbanisation agile d un client mobile ios/android natif, économique, flexible et pérenne
Vers l urbanisation agile d un client mobile ios/android natif, économique, flexible et pérenne Développement des Systèmes Dynamiques, Programmation Sémantique Opérationnelle, Programmation Fonctionnelle
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étailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailSUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2
SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2 Version 1.0.5 Mentions légales Mentions légales Ce document est susceptible de modification à tout moment sans
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étailExercices sur SQL server 2000
Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailPACKZ System Requirements. Version: 2015-05-27. Version: 2015-05-27 Copyright 2015, PACKZ Software GmbH. 1
PACKZ System Requirements Version: 2015-05-27 Copyright 2015, PACKZ Software GmbH. All rights reserved.this manual may not be copied, photocopied, reproduced, translated, or converted to any electronic
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étailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailTP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose.
Université Paris 7 M2 II Protocole Internet TP3 Mail Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose. 1 Protocole SMTP 1. Le protocole SMTP est définit dans
Plus en détailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Plus en détailContrôle d'accès Access control. Notice technique / Technical Manual
p.1/18 Contrôle d'accès Access control INFX V2-AI Notice technique / Technical Manual p.2/18 Sommaire / Contents Remerciements... 3 Informations et recommandations... 4 Caractéristiques techniques... 5
Plus en détail1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7
Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application
Plus en détailLa persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1
La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 Plan 1. Généralités sur la persistance des données dans les applications 2. La connection
Plus en détailLambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Plus en détailJava 7 Les fondamentaux du langage Java
184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque
Plus en détailCours. Cours 8 : Révisions. Importance. Interface homme-machine
Cours 1) Introduction Définitions Histoire Cours 8 : Révisions jgarcia@ircam.fr 2) Programmation des interfaces graphiques principes de conception 3) MVC Java2D Styles d interaction 4) Interaction graphique
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailISTIA INNOVATION. 62, Ave ND du Lac F 49000 Angers www.istia.univ-angers.fr
ISTIA INNOVATION 62, Ave ND du Lac F 49000 Angers www.istia.univ-angers.fr DESS ITIHM RV 02/03 Geoffrey SUBILEAU Ecole des Mines de Nantes Projet européen «REPOSIT» Développement d un environnement virtuel
Plus en détailDrupal un CMS orienté mé2er. Romain JARRAUD Mathieu GROS
Drupal un CMS orienté mé2er Romain JARRAUD Mathieu GROS Romain JARRAUD - Responsable formation Trained People (drupalfrance.com) Mathieu GROS - Directeur Général Actency (actency.fr) Introduction Quelques
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailAPIs de table pour SQL Server
2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et de fin du
Plus en détailWeb Tier : déploiement de servlets
Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation
Plus en détailEclipse atelier Java
Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer
Plus en détailGI81 : Réseaux & Travail Collaboratif Partie I : Travail Collaboratif
GI81 : Réseaux & Travail Collaboratif Partie I : Travail Collaboratif (M1 GEII et M1 RVSI) Samir OTMANE Samir.Otmane@ibisc.univ-evry.fr http://lsc.univ-evry.fr/~otmane/ 1 Plan du Cours Introduction Travail
Plus en détail27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)
Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)
Plus en détailTP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet
TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur
Plus en détailOrganiser vos données - Big Data. Patrick Millart Senior Sales Consultant
Organiser vos données - Big Data Patrick Millart Senior Sales Consultant The following is intended to outline our general product direction. It is intended for information purposes only, and may not be
Plus en détailCours en ligne Développement Java pour le web
Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailDOCUMENTATION - FRANCAIS... 2
DOCUMENTATION MODULE SHOPDECORATION MODULE PRESTASHOP CREE PAR PRESTACREA INDEX : DOCUMENTATION - FRANCAIS... 2 INSTALLATION... 2 Installation automatique... 2 Installation manuelle... 2 Résolution des
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détailTHÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.
École Doctorale d Informatique, Télécommunications et Électronique de Paris THÈSE présentée à TÉLÉCOM PARISTECH pour obtenir le grade de DOCTEUR de TÉLÉCOM PARISTECH Mention Informatique et Réseaux par
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailIntroduction au Génie Logiciel
Introduction au Génie Logiciel Lydie du Bousquet Lydie.du-bousquet@imag.fr En collaboration avec J.-M. Favre, I. Parissis, Ph. Lalanda Qu est-ce que le logiciel? programme, ensemble d instructions Caractéristiques
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détail