ENSTA IN204 Introduction à JAVA

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

Download "ENSTA IN204 Introduction à JAVA"

Transcription

1 ENSTA IN204 Introduction à JAVA Olivier Sigau d LIP6/ Anim atlab olivier.sigau d@lip 6.fr Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 1

2 Plan du cours 12 Découpage en packages De l'analyse à la conception : recours au m odèle MVC Couches génériques Fram eworks Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 2

3 Le découpage en packages Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 3

4 Objectifs Rendre les différents m odules aussi indépendants que possible Perm ettre la com pilation séparée des m odules (m inim iser les «im ports») Eviter à tout prix les dépendances croisées Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 4

5 Exem ple élém entaire : que faire? Package 1 Package 2 Classe C1 Classe C2 Les classes C1 et C2 appellent des m éthodes l une de l autre Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 5

6 Solution 1 Package 1 Package 2 In terface I1 Classe C1 Classe C2 Le package 2 com pile tout seul, et le package 1 dépend du package 2 Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 6

7 Solution 2 In terface I1 Package 1 In terface I2 Classe C1 Package 2 Classe C2 Cette fois, on a isolé une couche abstraite indépendante, et une im plém entation qui en dépend D autres découpages sont possibles Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 7

8 Le pattern observer Instance du schém a précédent Exem ple de «Design pattern» (cours 13) Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 8

9 Plus loin que les packages Découpage en com posants (cours 14) Des m odules séparés, com pilés une fois pour toutes, qui peuvent être connectés ensem ble pour réaliser une architecture spécifique Eventuellem ent distribués, et dans des lan gages différen ts Tendance lourde du génie logiciel actuel A suivre Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 9

10 De l'analyse à la conception : recours au m odèle MVC Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 10

11 Rappel : Analyse / Conception Analyse = Com prendre les spécifications, en extraire les exigences, présenter form ellem ent le problèm e à résoudre Vérifier la conform ité de l analyse aux besoins Eviter de figer des choix de conception pendant l an alyse On ignore qu on réalise un logiciel Conception = Concevoir LA solution au problèm e analysé l analyse = << quoi? >>, la conception = << com m ent? >> On se concentre sur la réalisation d un futur logiciel Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 11

12 Objectifs L analyse a perm is de dégager un certain nom bre d objets m étiers qui seront m anipulés par le systèm e Le systèm e inform atique lui-m êm e n a pas encore été décom posé en fonction de ses traitem en ts Un aspect im portant du passage à la conception consiste à identifier les objets qui m anipulent les données contenues dans les objets m étier Approche : Model, View, Controller Attention : les diagram m es subissent des m odifications im portantes entre analyse et conception Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 12

13 Approche : Model, View, Controller (MVC) Model = les objets m étiers, = les objets porteurs de données m anipulées par l ap p lication View = les interfaces vers le m onde externe, qui donnent des «vues» sur l état des objets m étier Controller = les objets «Manager» de haut niveau qui vont m anipuler les objets m étiers Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 13

14 Dém arche MVC du passage à la conception Les objets m étiers ont été identifiés lors de l an alyse De m êm e pour les principales fonctionnalités et les principaux traitem ents Les «Managers» regroupent les traitem ents selon les types d objets m étiers auxquels ils s appliquent Ils reposent sur des structures de données élém entaires (containers) Les Views perm ettent d appeler (via une interface) les traitem ents définis par les Man agers On ajoute enfin des classes interm édiaires de conception (généricité, découpage en packages ) Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 14

15 Responsabilité et localité Un traitem ent doit être attribué à la prem ière classe qui dispose des données nécessaires pour le réaliser Perm et d assurer une propriété de localité m axim ale Exem ple : Une classe «listedachats» contient une liste de produits et de quantité, chaque produit connaît son coût unitaire Le traitem ent calculermontanttotal() est associé à listedach ats Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 15

16 Couches génériques Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 16

17 Réutilisation (1) Si une classe correspond à un objet concret et si ses m éthodes sont naturelles, tout program m e qui la m et en œ uvre peut réutiliser ses m éthodes Il est donc plus facile de réutiliser des m orceaux de code en program m ation orien tée objets Il est aussi plus facile d'interpréter ce que fait le program m e si les nom s de classe, d'attributs et de m éthodes sont naturels Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 17

18 Réutilisation (2) Plutôt que de réutiliser un m odule com plet, on peut vouloir réutiliser des traitem ents s ils sont génériques Dans ce cadre (fréquent), la réutilisation est réalisée à l aide de l abstraction On réalise un traitem ent pour une classe générique, et on pourra le réutiliser pour toutes les classes qui en dérivent Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 18

19 Couche générique en pratique Etant donné une architecture de type MVC On abstrait les objets «Model» sous form e d in terfaces gén ériqu es On réalise des objets «Managers» qui m anipulent ces interfaces Les traitem ents pourront être appliqués à tous les objets «Model» qui im plém entent ces in terfaces Les objets «Model» concrets im plém entent des traitem ents spécifiques appelés par les «Managers» Suppose d avoir des «View» génériques Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 19

20 Exem ple in terface Classifier { public boolean m atch(env e); } class Bin aryclassifier im p lem en ts Classifier { public boolean m atch(env e){if (cond.isdontcare()) return true; else if ((cond.istrue() && e.istrue()) (cond.isfalse() && e.isfalse()) return true; else return false; } class In tervalclassifier im p lem en ts Classifier { public boolean m atch(env e){if cond.isdontcare() return true; else if ((cond.m in()<e.val()) && (cond.m ax()>e.val()) return true; else return false; } Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 20

21 Fram ew orks Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 21

22 Bibliothèque Module fourni Module fourni Ap p lication développée par l u tilisateu r Module fourni Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 22

23 Fram ew ork Ap p lication générique fournie Module développé par l utilisateur Module développé par l utilisateur Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 23

24 Définition et im plications Un fram ework est un logiciel constitué principalem ent d une couche générique, prévue pour que les utilisateurs y branchent leur propre couche spécifique en im plém entant quelques in terfaces Nécessité de clairem ent spécifier ce qu il faut dériver ou im plém enter Nécessité que les signatures soient sim ples et bien conçues Quelques im plém entations classiques ou exem plaires peuvent être fournies Travail d abstraction très délicat : prévoir des u tilisation s exotiqu es Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 24

25 Difficultés spécifiques On ne peut pas prévoir à l avance toutes les im plém entations Il faut donc dégager une couche abstraite, cohérente et suffisam m ent riche pour être intéressante (les fram eworks im posent des con train tes) En IA, avoir recours à l abstraction m athém atique pour voir les équivalences entre des approches/ outils Perm et de m axim iser les classes d application Suppose une certaine expertise dans le dom aine m odélisé Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 25

26 Exem ples JEO : Java Evolutionary Optim ization (projet 2003) Perm et de faire tourner des algorithm es génétiques répartis sur des réseaux ouverts (SETI@h om e) Il suffit d im plém enter ses génom es (choix dans un catalogue ou dérivation) et ses fonctions d évaluation SFERES : dédié à l optim isation de com portem ents par algorithm es génétiques Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 26

27 De la conception à l'im plém entation Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 27

28 Attention! Les contraintes d efficacité ou des lacunes dans la conception peuvent entraîner des m odifications entre conception et im plém entation Quand c est le cas, il faut faire évoluer la docum entation et consulter les partenaires concernés S efforcer de concevoir les interfaces de telle façon qu elles ne soient pas concernées par les m odification s S efforcer de faire les m odifications de façon à ne pas toucher aux interfaces Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 28

29 Optim isation Identifier les traitem ents qui sont appliqués le plus souvent (profiling) Chercher à optim iser ces traitem ents en priorité Identifier tous les calculs qui sont effectués plusieurs fois : peut-on stocker les résultats pour ne pas les refaire? On va parfois jusqu à l optim isation de bytecode (m ais c est perdu si on recom pile ) Détail Java : éviter les m éthodes à plus de trois param ètres Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 29

30 Pause urgente! Ce document est mis à votre disposition par l'ensta sous couvert de la licence "Creative Commons" Page : 30

Soucieux de parvenir à un développement durable fondé sur un équilibre harmonieux entre les besoins sociaux, l économie et l environnem ent ;

Soucieux de parvenir à un développement durable fondé sur un équilibre harmonieux entre les besoins sociaux, l économie et l environnem ent ; Recommandation CM/Rec(2008)3 du Comité des Ministres aux Etats mem bres sur les orientations pour la m ise en œuvre de la Convention européenne du paysage (adoptée par le Com ité des Ministres le 6 février

Plus en détail

WTRANSNET FRANCE. Plates-formes électroniques 1 ère ÉDITION. Pour vos appels d offre

WTRANSNET FRANCE. Plates-formes électroniques 1 ère ÉDITION. Pour vos appels d offre Juin 2012 Pour vos appels d offre Plates-formes électroniques 1 ère ÉDITION WTRANSNET FRANCE SupplyChainMagazine.fr 19, rue Saint-Georges - 94700 Maisons-Alfort 1. NOM DE LA SOCIETE Wtransnet France 2.

Plus en détail

Information & Veille Territoriale

Information & Veille Territoriale Information & Veille Territoriale R eprésentation du com plexe local & ém ergence d un projetd intelligence territoriale «Il faut un obstacle nouveau pour un savoir nouveau.» 1 Henri Michaux Yann Bertacchini

Plus en détail

Semaine du 04 au 10 novembre 2013

Semaine du 04 au 10 novembre 2013 n 84 Semaine du 04 au 10 novembre 2013 SOMMAIRE Périodiques du DA La gazette/ L espace Géographique/Le Rail/ Le Moniteur/La lettre du cadre/cahiers français/transport,environnement,circulation Alternatives

Plus en détail

Mémoire de fin d études d orthophonie CENTRE DE FORMATION DE STRASBOURG

Mémoire de fin d études d orthophonie CENTRE DE FORMATION DE STRASBOURG Mémoire de fin d études d orthophonie CENTRE DE FORMATION DE STRASBOURG Objectifs : Au cours de la dern ière ann ée d études, les cand idats ayant v alidé la to talité de s enseignements théoriques et

Plus en détail

Comment initialiser une démarche SOA

Comment initialiser une démarche SOA Comment initialiser une démarche SOA Placer l approche l SOA au cœur c de la vie du Système d Informationd Olivier Dennery IT Architect IBM certified BCS Application Innovation Objectifs Objectifs - Rappeler

Plus en détail

AGENCE CANADIENNE D INSPECTION DES ALIMENTS (ACIA) SYSTÈME AUTOMATISÉ À L IMPORTATION (SAI)

AGENCE CANADIENNE D INSPECTION DES ALIMENTS (ACIA) SYSTÈME AUTOMATISÉ À L IMPORTATION (SAI) AGENCE CANADIENNE D INSPECTION DES ALIMENTS (ACIA) SYSTÈME AUTOMATISÉ À L IMPORTATION (SAI) DOCUMENT D INFORMATION À L INTENTION DES PARTICIPANTS (DIP) Janvier 2009 TABLE DES M ATIÈRES 1.0 INTRODUCTION...

Plus en détail

Programmation en Java IUT GEII (MC-II1) 1

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

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites

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

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections

Plus en détail

Com pte A utodesk Questions et réponses pour les clients Une façon plus efficace de gérer vos relations com m erciales avec Autodesk. Table des matières 1. Présentation 2 1.1 En quoi consiste le portail

Plus en détail

«Ce formulaire doit être entièrement complété et signé par les emprunteurs et les cautions» Nom :... Nom :... Type de crédit.

«Ce formulaire doit être entièrement complété et signé par les emprunteurs et les cautions» Nom :... Nom :... Type de crédit. Demande de crédit «Ce formulaire doit être entièrement complété et signé par les emprunteurs et les cautions» Cellule hypothécaire Intermédiaire de crédit Nom :... Nom :... Tél. :... Tél. :... GSM :...

Plus en détail

Programmer 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) 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étail

Portail Web Collaboratif de Gestion de Projet

Portail Web Collaboratif de Gestion de Projet SOLUBIZ PROJET INNOVANT - 2006 Portail Web Collaboratif de Gestion de Projet M Auteurs : l équipe SoluBiz Florin Duca Duc-Ngoc Tran Hoang-Lan Tran Ioan Moraru Trong-Hieu Dang Yue Gu Remerciements : David

Plus en détail

Corrigé des exercices sur les références

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

Observatoire Régional R Enseignements Supérieurs en Bretagne (ORESB) Quelques chiffres clefs sur l insertion professionnelle

Observatoire Régional R Enseignements Supérieurs en Bretagne (ORESB) Quelques chiffres clefs sur l insertion professionnelle Observatoire Régional R des Enseignements Supérieurs en Bretagne (ORESB) Quelques chiffres clefs sur l insertion professionnelle La méthodologie d enquête Travail commun sur les questionnaires de Licence

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

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

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à 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étail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

Jumelage institutionnel MA11/ENP-AP/FI22 LIVRABLE DEFINITIF

Jumelage institutionnel MA11/ENP-AP/FI22 LIVRABLE DEFINITIF Jumelage institutionnel MA11/ENP-AP/FI22 Renforcement des capacités institutionnelles, organisationnelles et professionnelles de l'inspection Générale des Finances LIVRABLE DEFINITIF Activité A-3 "Elaborer

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

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

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application

Plus en détail

2. Comprendre les définitions de classes

2. Comprendre les définitions de classes Conception objet en Java avec BlueJ une approche interactive 2. Comprendre les définitions de classes Analyser le contenu des classes David J. Barnes, Michael Kölling version française: Patrice Moreaux

Plus en détail

Diacamma. Gestionnaire pour les associations sportives Guide d'utilisation. Version 1.2.2.17

Diacamma. Gestionnaire pour les associations sportives Guide d'utilisation. Version 1.2.2.17 Diacamma Gestionnaire pour les associations sportives Guide d'utilisation Version 1.2.2.17 Sommaire Diacamma Présentation Les adhérents Mise en route L`adhérent Rechercher un adhérent Gestion des form

Plus en détail

Corrigés des premiers exercices sur les classes

Corrigés des premiers exercices sur les classes Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.

Plus en détail

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan

Plus en détail

Autoris ations pour :

Autoris ations pour : MINISTERE DE L ECONOMIE ET DES FINANCES Direction de l Economie Division des Relations Economiques et Financières Extérieures Tél (00228) 22326950/ 22210250 Autoris ations pour : Exercice en qualité de

Plus en détail

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Logiciel Libre Cours 3 Fondements: Génie Logiciel Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

Vérification formelle de la plate-forme Java Card

Vérification formelle de la plate-forme Java Card Vérification formelle de la plate-forme Java Card Thèse de doctorat Guillaume Dufay INRIA Sophia Antipolis Cartes à puce intelligentes Java Card : Environnement de programmation dédié. Dernières générations

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Autoris ations pour :

Autoris ations pour : MINISTERE DE L ECONOMIE ET DES FINANCES Direction de l Economie Division des Relations Economiques et Financières Extérieures REPUBLIQUE TOGOLAISE Travail-Liberté-Patrie Autoris ations pour : Exercice

Plus en détail

as Architecture des Systèmes d Information

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

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

Plus en détail

Tp 1 correction. Structures de données (IF2)

Tp 1 correction. Structures de données (IF2) Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que

Plus en détail

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30 Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

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

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

Les frameworks au coeur des applications web

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

Objets et Programmation. origine des langages orientés-objet

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

Urbanisation des systèmes d information

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

Service d'inform ation des Comités de l'ocde. O LISnet

Service d'inform ation des Comités de l'ocde. O LISnet Service d'inform ation des Comités de l'ocde O LISnet Présentation générale Besoins des utilisateurs Les délégués aux réunions de l OCDE doiventêtre au courantdes travaux en cours au sein des Com ités,des

Plus en détail

UKRAINE. Loisurla responsabilitécivileen m atièrededom m agenucléaire etlesgarantiesfinancièresy afférentes* adoptéele13 décem bre2001

UKRAINE. Loisurla responsabilitécivileen m atièrededom m agenucléaire etlesgarantiesfinancièresy afférentes* adoptéele13 décem bre2001 UKRAINE Loisurla responsabilitécivileen m atièrededom m agenucléaire etlesgarantiesfinancièresy afférentes* adoptéele13 décem bre2001 La présente Loirégitles relations visantla responsabilité civile en

Plus en détail

Les BRMS Business Rules Management System. Groupe GENITECH

Les BRMS Business Rules Management System. Groupe GENITECH Les BRMS Business Rules Management System 1 Présentations Emmanuel Bonnet ebonnet (at) genigraph.fr Responsable Dpt Conseil Consultant, Expert BRMS Formateur IBM/Ilog JRules / JBoss Rules Génigraph SSII

Plus en détail

Intégration de l interface graphique de Ptidej dans Eclipse

Intégration de l interface graphique de Ptidej dans Eclipse Intégration de l interface graphique de Ptidej dans Eclipse Driton Salihu (salihudr@iro.umontreal.ca) Lulzim Laloshi (laloshil@iro.umontreal.ca) Département d informatique et de recherche opérationnelle

Plus en détail

Cours 1 : La compilation

Cours 1 : La compilation /38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà

Plus en détail

Une introduction à Java

Une introduction à Java Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : 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étail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

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

Plateforme de capture et d analyse de sites Web AspirWeb

Plateforme de capture et d analyse de sites Web AspirWeb Projet Java ESIAL 2A 2009-2010 Plateforme de capture et d analyse de sites Web AspirWeb 1. Contexte Ce projet de deuxième année permet d approfondir par la pratique les méthodes et techniques acquises

Plus en détail

Programmation avec des objets : Cours 7. Menu du jour

Programmation avec des objets : Cours 7. Menu du jour 1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes

Plus en détail

Alfstore workflow framework Spécification technique

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

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ; CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe

Plus en détail

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

Lambda! 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étail

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013 CATALOGUE FORMATION Product Lifecycle Management Juin 2013 s de formation ENOVIA V6 ENOVIA V6 Plateforme Collaborative 5 ENOVIA V6 Installation et Administration 9 ENOVIA V6 Implémentation et Développement

Plus en détail

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION Mentions

Plus en détail

Offre Référentiel d échange

Offre Référentiel d échange Offre Référentiel d échange mardi 1er juillet 2014 Groupe CGI inc. CONFIDENTIEL Agenda 1 2 3 4 5 6 7 8 Pourquoi cette solution? Les enjeux et principes de la solution Les acteurs & business case Sa place

Plus en détail

Quels outils pour prévoir?

Quels outils pour prévoir? modeledition SA Quels outils pour prévoir? Les modèles de prévisions sont des outils irremplaçables pour la prise de décision. Pour cela les entreprises ont le choix entre Excel et les outils classiques

Plus en détail

10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]

10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr] 10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une

Plus en détail

JADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.

JADE : 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étail

Programmation de services en téléphonie sur IP

Programmation de services en téléphonie sur IP Programmation de services en téléphonie sur IP Présentation de projet mémoire Grégory Estienne Sous la supervision du Dr. Luigi Logrippo Introduction La téléphonie sur IP comme support à la programmation

Plus en détail

Un serveur d'archivage

Un serveur d'archivage Un serveur d'archivage destiné au Service Commun de Documentation de l'université de la Méditerranée Encadrement : Noël Novelli Représentants client (S.C.D.) : Axelle Clarisse Ronan Lagadic Equipe Projet

Plus en détail

PostgreSQL, le cœur d un système critique

PostgreSQL, le cœur d un système critique PostgreSQL, le cœur d un système critique Jean-Christophe Arnu PostgreSQLFr Rencontres Mondiales du Logiciel Libre 2005 2005-07-06 Licence Creative Commons Paternité - Pas d utilisation commerciale - Partage

Plus en détail

Le génie logiciel. maintenance de logiciels.

Le génie logiciel. maintenance de logiciels. Le génie logiciel Définition de l IEEE (IEEE 1990): L application d une approche systématique, disciplinée et quantifiable pour le développement, l opération et la maintenance de logiciels. Introduction

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

MISE EN Œ UVRE DE POLITIQUES DE CONTRÔLE D ACCÈS FORMELLES PO U R DES APPLICATIONS BASÉES SU R U N E ARCHITECTURE O R IEN TÉE SERVICES

MISE EN Œ UVRE DE POLITIQUES DE CONTRÔLE D ACCÈS FORMELLES PO U R DES APPLICATIONS BASÉES SU R U N E ARCHITECTURE O R IEN TÉE SERVICES MISE EN Œ UVRE DE POLITIQUES DE CONTRÔLE D ACCÈS FORMELLES PO U R DES APPLICATIONS BASÉES SU R U N E ARCHITECTURE O R IEN TÉE SERVICES par Michel Embe Jiague Thèse en cotutelle présentée au Département

Plus en détail

SUR LA PISTE DU CHEF. Allumez le calumet de la paix et préparez vous aux palabres.

SUR LA PISTE DU CHEF. Allumez le calumet de la paix et préparez vous aux palabres. SUR LA PISTE DU CHEF Le grand Manitou vous a désigné parmi les indiens de la tribu du tribunal pour être chef. C'est vous qui allez guider la tribu sur la piste qui mène des objectifs aux résultats en

Plus en détail

&RQVHLO5pJLRQDO 1RUG± 3DVGH&DODLV

&RQVHLO5pJLRQDO 1RUG± 3DVGH&DODLV SRXU &RQVHLO5pJLRQDO 1RUG± 3DVGH&DODLV (WXGH GHIDLVDELOLWpG XQHILOLqUHUpJLRQDOHLQIRUPDWLTXH HQ 2SHQ6RXUFH ª 6RPPDLUH / REMHWGHO pwxgh /HVSURMHWVHWDSSOLFDWLRQVHQ13'& /HVDWRXWVHWIDLEOHVVHVGHODUpJLRQ /HVFRQVWDWV

Plus en détail

Libérez votre intuition

Libérez votre intuition Présentation de Qlik Sense Libérez votre intuition Qlik Sense est une application nouvelle génération de visualisation de données en libre-service qui permet à chacun de créer facilement des visualisations

Plus en détail

F. Barthélemy. 17 mai 2005

F. Barthélemy. 17 mai 2005 Typage de la généricité en Java F. Barthélemy 17 mai 2005 1 Le shéma général La g én éricit é en Java est un ajout r éalis é sur un langage existant depuis d éjà une dizaine d ann ées, avec des contraintes

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

Brique BDL Gestion de Projet Logiciel

Brique BDL Gestion de Projet Logiciel Brique BDL Gestion de Projet Logiciel Processus de développement pratiqué à l'enst Sylvie.Vignes@enst.fr url:http://www.infres.enst.fr/~vignes/bdl Poly: Computer elective project F.Gasperoni Brique BDL

Plus en détail

Auto-évaluation Programmation en Java

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

Applications distribuées: le retour du client "riche"

Applications distribuées: le retour du client riche Applications distribuées: le retour du client "riche" Markus Jaton, Olivier Liechti Olivier Liechti / Markus Jaton /1 Agenda Java a-t-il un avenir sur le "desktop"? Swing vs. AJAX: idées préconçues? Architecture

Plus en détail

.NET - Classe de Log

.NET - Classe de Log .NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de

Plus en détail

TD3: tableaux avancées, première classe et chaînes

TD3: tableaux avancées, première classe et chaînes TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

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

Threads. Threads. USTL http://www.lifl.fr/ routier 1

Threads. Threads. USTL http://www.lifl.fr/ routier 1 Threads USTL http://www.lifl.fr/ routier 1 Rappels - Définitions un Process est un programme qui tourne et dispose de ses propres ressources mémoire. OS multi-tâche plusieurs process en concurrence un

Plus en détail

Rapport de Mini-Projet en ArcGIS Engine

Rapport de Mini-Projet en ArcGIS Engine Rapport de Mini-Projet en ArcGIS Engine Réalisée par : Asmae BENMESSAOUD 3ème Année Cycle d Ingénieur Géoinformation Année Universitaire 2010- Sommaire 1 Introduction L analyse géographique et la visualisation

Plus en détail

UML et les Bases de Données

UML et les Bases de Données CNAM UML et les Bases de Données UML et les Bases de Données. Diagramme de classes / diagramme d objets (UML)...2.. Premier niveau de modélisation des données d une application...2.2. Les éléments de modélisation...2.2..

Plus en détail

Si cet email ne s affiche pas correctement, merci de cliquer ici

Si cet email ne s affiche pas correctement, merci de cliquer ici Si cet email ne s affiche pas correctement, merci de cliquer ici Par Gilles DUTHIL Président de l' SilverLife En finir avec les barrières d'âge François BAR O IN a pré se nté le 6 avril de rnie r e n C

Plus en détail

TD/TP PAC - Programmation n 3

TD/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étail

DG-ADAJ: Une plateforme Desktop Grid

DG-ADAJ: Une plateforme Desktop Grid DG-ADAJ: Une plateforme pour Desktop Grid Olejnik Richard, Bernard Toursel Université des Sciences et Technologies de Lille Laboratoire d Informatique Fondamentale de Lille (LIFL UMR CNRS 8022) Bât M3

Plus en détail

GL - 2 2.1 Le Génie Logiciel

GL - 2 2.1 Le Génie Logiciel GL - 2 2.1 Le Génie Logiciel Lydie du Bousquet Lydie.du-bousquet@imag.fr En collaboration avec J.-M. Favre, I. Parissis, Ph. Lalanda 1 Rappels La production logicielle est une activité complexe de façon

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

Exigences internationales harmonisées pour la certification d un lot

Exigences internationales harmonisées pour la certification d un lot 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 Exigences internationales harmonisées pour la certification d un

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

StormShield v4.0 StormShield - Version 4.0 Presentation OSSIR 10 juillet 2006

StormShield v4.0 StormShield - Version 4.0 Presentation OSSIR 10 juillet 2006 StormShield v4.0 StormShield - Version 4.0 Presentation OSSIR 10 juillet 2006 SkyRecon Systems - éditeur de StormShield Editeur de Logiciels Français De grands groupes parmi les investisseurs: DGA, la

Plus en détail

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007 NFP 121 Java et les Threads Présentation : Thierry Escalarasse Mai 2007 Plan du cour Présentation de la notion de Threads La classe Thread L interface Runnable Les états d un thread La Synchronisation

Plus en détail

Arbres binaires de recherche

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

Surveillance du réseau de l expérience LHCB

Surveillance du réseau de l expérience LHCB Institut Supérieur D'Informatique de Modélisation et de leurs Applications COMPLEXE DES CEZEAUX BP 125 63173 AUBIERE CEDEX Centre Européen de Recherche Nucléaire 1211 Genève Suisse Rapport de Stage 2 ème

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

Zotero : petit guide d installation et d utilisation

Zotero : petit guide d installation et d utilisation Zotero : petit guide d installation et d utilisation Zotero est une extension du navigateur Firefox. C est un logiciel libre et gratuit qui s installe en deux cliques de souris. Il permet de sauvegarder

Plus en détail

Classes et Objets en Ocaml.

Classes et Objets en Ocaml. Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes

Plus en détail

Utilisation d objets : String et ArrayList

Utilisation d objets : String et ArrayList Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons

Plus en détail

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1 Algorithmique 1 Durée : 2h Machines électroniques interdites Tous documents papiers autorisés Il est conseillé de traiter les deux parties dans l ordre du sujet. Veuillez respecter les notations introduites

Plus en détail

Introduction à la SOA. Youen Chéné 15/06/2010

Introduction à la SOA. Youen Chéné 15/06/2010 Introduction à la SOA Youen Chéné 15/06/2010 Les Intervenants Pierre-Yves Gibello : Consultant sénior chez Petals Link Responsable de l'agence de Grenoble Elu au conseil d'administration du consortium

Plus en détail