Une architecture, pourquoi faire? Architecture Logicielle des IHM. IHM et architecture. Découpage par Abstraction
|
|
- Francine Ménard
- il y a 8 ans
- Total affichages :
Transcription
1 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 (fusion) Modifier (une partie) Ré-utiliser Notion : modularité, évolutivité, flexibilité Avec des transparents repris des cours de l équipe IIHM du LIG 2 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 Découpage par Abstraction Séparation IHM / NF Noyau fonctionnel (ou FunctionalCoreou partie Métier) NF IHM Besoin d interface logicielle pour découpler (indépendance) des deux parties NF IHM Jacques concrète concrète Pierre concrète Paul 4
2 Découpage par Abstraction Découpage par Abstraction Besoin d interface logicielle pour découpler (indépendance) des deux parties NF NF IHM IHM Jacques concrète concrète Pierre concrète Paul 5 Marie Partie du NF concret Eva Partie du NF concret Partie Partie du du NF NF Concret concret NF Annie IHM concrète Jacques concrète Pierre concrète Paul 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 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
3 MVC : meilleure conception Plusieurs vues possibles synchronisées, Plusieurs contrôles possibles (exemple : clavier, souris, joypad), Données isolées (BD, fichiers, etc ) Bien entendu : Nécessité de définir des interfaces communes entre le modèle, la vue et le contrôleur MVC et Java utilisation synchrone Les classes Observer / Observable Observer "Fred" Observable 1. Arthur 2. Martin S enregistre S enregistre Observer "Arthur" Observer "Martin" 9 Observer / Observable Exemple : un timer class Test { Timer timer; Test() { timer = new Timer(); Toto toto = new Toto(); timer.addobserver(toto); toto est écouteur du timer public static void main(string[] args) { Test t = new Test(); t.timer.run(); 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( ) 11 12
4 java.util.observable Exemple class Timer extends java.util.observable { private long zzz = 1000; private long zero; Les observables doivent Timer(long zzz) { être d une sous-classe de this.zzz = zzz; Observable public void run () throws InterruptedException { zero = System.currentTimeMillis(); while (true) { setchanged(); notifyobservers(new Long(System.currentTimeMillis() - zero)); Thread.sleep(zzz); On prévient les observateurs, ça appelle update( ) 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 ) Architecture : Modèles à agents pour 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 Architecture : Modèles à agents pour... 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) 15 16
5 PAC : Un modèle hiérarchisé d agent Architecture : Modèles à agents [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 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) Un exemple d application de PAC 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 Capturer un objet (réalité cliquable) Voir les deux vidéos : utilisatrice (équipement) et capture (déroulement du scénario) 19 Données numériques localisées (ANF) Terrain augmenté Caméra Localisation Orientation
6 Exemple de circulation de message Exemple d implémentation PAC Représentation physique M2 M2 hiérarchie PAC Passerelle M2 M1 M2 M1 Réalité cliquable M2 Représentation numérique Evénements souris (stylet) 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) 22 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); 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; package PAC; public interface Presentation { public void affectecontroleur(controleur c); public void recoitmessage(string type, Object attachement); 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); 23 protected void dispatchupmessage(string type, Object att) { if (parent!= null) parent.recoitmessagecontroleur(type, att); 24
7 PAC vs MVC PAC, MVC, HMVC 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 25 Phpet MVC : liste extraite de wikipédia Agaviis a PHP5 application framework that focuses on sustained quality and correctness. akaikiwia PHP 5 lightweight and fast MVC framework with ORM, scaffolding, and more. Alloy A lightweight REST-focused modular Hierarchical MVCPHP 5.3 framework CakePHPA web application framework modeled after the concepts of Ruby on Rails. CodeChargeStudio is a visual rapid application development environment for web-based database driven application development. Code Charge Studioplaces emphasis on code generation technology to provide ASP.NET, PHP, JSP, Servlets, ColdFusion and Perllanguage support. CodeIgniter A simple, light, fast, open source MVC framework for building websites using PHP. DrupalAn 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 CMSA Content Management System web application framework using its own MVC framework modeled after Rails. ezpublishbased on ezcomponentsis an object-oriented web application framework written in PHP that separates its functionality into several abstraction layers, following a strict MVC approach. FengOfficeis an open source MVC Framework Extranetthat 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. Kohanav2.x is an open source MVC framework, while v3.x is HMVC (both supported). LightVCis 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. MODxA full-featured open source OOP MVC/ORB xpdo-based CMS. MooVCAn Object Oriented MVC Framework for PHP. Odin Assemble A Small footprint PHPbased MVC framework. OpenCartShopping cart which is fully based on MVC framework. phpxcorea MVC design pattern based PHP content management framework compatible with PHP4 and PHP5. PRADO FrameworkAn open source PHP5 framework for creating professional web applications. PureMVCA framework for PHP. QcodoAn open-source PHP 5 web application framework. RecessAn open-source framework focused on RESTfulAPI 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 FrameworkAn open source PHP5/OOP MVC framework SymfonyFrameworkA PHP 5 MVC framework modeled after the concepts of Ruby on Rails. YiiAn open source, object-oriented, high-performance component-based PHP web application framework. Zend FrameworkAn open-source PHP 5-based framework featuring an MVC layer and a broad-spectrum of loosely coupled components. 26 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... 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); 27 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(); 28
8 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) Règles Heuristiques Ensemble de règlesheuristiquespour 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 R2 : Vue multiple R2 : Vue multiple Agent vue multiple d'une "œuvre" Environnement Wall Environment Zone Region Preferences? Wall Place Route. Movable Object x Static Object Environment Point Zone 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 Agent vue multiple d'une "œuvre" Un superagent garantit la cohérence visuelle agent vue superagent vue multiple agent vue agent vue Anchor x (m): Anchor y (m): Mouse x (m): 12 Mouse y (m): 15 Length (m): 31 32
9 PAC et MVC : vue multiple D autres Heuristiques C A P C C P C M V1 V2 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 34 Heuristiques de liaison R9 : Ciment syntaxique 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 Agent ciment pour "analyse syntaxique distribuée" Un superagent cimente les actions distribuées superagent ciment agent agent agent 35 action de l'utilisateur action de l'utilisateur action de l'utilisateur
10 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. 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 Exemple de développement : TROC projet France Telecom IIHM (clips, LIG) TROC : analyse des besoins 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
11 Troc : spécifications exeternes Troc : un exemple d architecture 42 Troc : architecture pac (-amodeus) Troc : architecture pac (-amodeus)
12 Troc : retour d expérience, reconception Troc : architecture après re-conception 45 46
Plan. 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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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étailApprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)
Introduction à la POO 1. Histoire de la POO 9 2. Historique du 12 La conception orientée objet 1. Approche procédurale et décomposition fonctionnelle 13 2. La transition vers l'approche objet 14 3. Les
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é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é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é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é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é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étailFormation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux
Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un
Plus en dé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é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é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é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é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étailNotice Technique / Technical Manual
Contrôle d accès Access control Encodeur USB Mifare ENCOD-USB-AI Notice Technique / Technical Manual SOMMAIRE p.2/10 Sommaire Remerciements... 3 Informations et recommandations... 4 Caractéristiques techniques...
Plus en détailAnalyse,, Conception des Systèmes Informatiques
Analyse,, Conception des Systèmes Informatiques Méthode Analyse Conception Introduction à UML Génie logiciel Définition «Ensemble de méthodes, techniques et outils pour la production et la maintenance
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étailAcquisition des données - Big Data. Dario VEGA Senior Sales Consultant
Acquisition des données - Big Data Dario VEGA Senior Sales Consultant The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
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é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étailAVOB sélectionné par Ovum
AVOB sélectionné par Ovum Sources : Ovum ovum.com «Selecting a PC Power Management Solution Vendor» L essentiel sur l étude Ovum AVOB sélectionné par Ovum 1 L entreprise britannique OVUM est un cabinet
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é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é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é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é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é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étailCopyright 2013, Oracle and/or its affiliates. All rights reserved.
1 Moderniser votre back office Finance Oracle Finance Cloud Guy Aguera, Deloitte Partner Valérie Vinges, Oracle Sales Consultant 2 Safe Harbor Statement The following is intended to outline our general
Plus en détailFolio Case User s Guide
Fujitsu America, Inc. Folio Case User s Guide I N S T R U C T I O N S This Folio Case is a stylish, lightweight case for protecting your Tablet PC. Elastic Strap Pen Holder Card Holders/ Easel Stops Figure
Plus en détailInitiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr
Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation
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é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é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étail10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]
10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une
Plus en détailARCHOS Activity Tracker
ARCHOS Activity Tracker «Archos Connected Self» Application Connecté pour votre confort L'ARCHOS Activity Tracker synchronise automatiquement votre activité quotidienne à votre smartphone ou votre tablette
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étailAn Ontology-Based Approach for Closed-Loop Product Lifecycle Management
An Ontology-Based Approach for Closed-Loop Product Lifecycle Management THÈSE N O 4823 (2010) PRÉSENTÉE LE 15 OCTOBRE 2010 À LA FACULTÉ SCIENCES ET TECHNIQUES DE L'INGÉNIEUR LABORATOIRE DES OUTILS INFORMATIQUES
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é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étailAPI04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture
API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant
Plus en détailRefonte front-office / back-office - Architecture & Conception -
Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table
Plus en détailObjectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui
Formation PARTIE 1 : ARCHITECTURE APPLICATIVE DUREE : 5 h Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui automatisent les fonctions Définir une architecture
Plus en détailEditing and managing Systems engineering processes at Snecma
Editing and managing Systems engineering processes at Snecma Atego workshop 2014-04-03 Ce document et les informations qu il contient sont la propriété de Ils ne doivent pas être copiés ni communiqués
Plus en détailcalls.paris-neuroscience.fr Tutoriel pour Candidatures en ligne *** Online Applications Tutorial
calls.paris-neuroscience.fr Tutoriel pour Candidatures en ligne Online Applications Tutorial 1/4 Pour postuler aux Appels d Offres de l ENP, vous devez aller sur la plateforme : calls.parisneuroscience.fr.
Plus en détailArchitecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application
Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces
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étailJava pour le Web. Cours Java - F. Michel
Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications
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é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étailPage 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>
Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances
Plus en détailUnity. Moteur de jeu 3D et 2D. Cross platform: Windows, Mac, Linux, ios, Android, Blackberry, Xbox, Playstation, Wii
Unity Moteur de jeu 3D et 2D Cross platform: Windows, Mac, Linux, ios, Android, Blackberry, Xbox, Playstation, Wii C# / Javascript (UnityScript) / Boo Possibilité de créer ses propres outils Programmation
Plus en détailRAPID 3.34 - Prenez le contrôle sur vos données
RAPID 3.34 - Prenez le contrôle sur vos données Parmi les fonctions les plus demandées par nos utilisateurs, la navigation au clavier et la possibilité de disposer de champs supplémentaires arrivent aux
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étail