MI3/GL Cours de Génie Logiciel Programmation Orientée Objet (Avancée)
|
|
|
- Liliane Brousseau
- il y a 9 ans
- Total affichages :
Transcription
1 MI3/GL Cours de Génie Logiciel Programmation Orientée Objet (Avancée) Daniel Le Berre dans une classe CRIL-CNRS FRE 2499, Université d Artois, Lens, FRANCE {[email protected] 2 décembre 2004 MI3GL 2004/ MI3GL 2004/ : définition dans une classe 1 DOD = Department of Defense cathedrale-bazar_monoblock.html magic-cauldron-fr_monoblock.html MI3GL 2004/ Changer la structure du code sans changer son comportement Utilisation de tests unitaires pour le vérifier Utilisation de mauvaises odeurs dans le code pour détecter les parties à changer Popularisé par Martin Fowler [4] Beaucoup d outils de développement (dont Eclipse) facilitent le refactoring. Plus d infos sur MI3GL 2004/ Extract Method 1/2 Extract Method 2/2 Un ensemble d instructions peuvent être groupées. Remplacer ces instructions par une méthode dont le nom explique son rôle. void printowing () { printbanner (); //print details System. out. println ( name: + name ); System. out. println ( amount + getoutstanding ()); void printowing () { printbanner (); printdetails (getoutstanding ()); void printdetails (double outstanding ) { System. out. println ( name: + name ); System. out. println ( amount + outstanding ); MI3GL 2004/ MI3GL 2004/ Rename Method Rename Method Le nom d une méthode ne révèle pas son rôle. Le nom d une méthode ne révèle pas son rôle. Changer le nom de la méthode. Changer le nom de la méthode. MI3GL 2004/ MI3GL 2004/2005 8
2 Introduce Assertion 1/2 Introduce Assertion 2/2 Unepartieducodefaitdessuppositionsàproposdel état du programme. Rendre ces suppositions explicites en utilisant une assertion. double getexpenselimit () { // should have either expense limit or // a primary project return ( expenselimit!= NULL EXPENSE )? expenselimit : primaryproject. getmemberexpenselimit (); double getexpenselimit () { assert ( expenselimit!= NULL EXPENSE primaryproject!= null ); return ( expenselimit!= NULL EXPENSE )? expenselimit : primaryproject. getmemberexpenselimit (); MI3GL 2004/ MI3GL 2004/ Replace Temp with query 1/2 Replace Temp with query 2/2 Le code utilise une variable temporaire pour connaître le résultat d une expression. Remplacer l expression par une méthode. Remplacer toutes les références à la variable temporaire par la méthode. La nouvelle méthode peut être utilisée dans d autres méthodes. double baseprice = quantity itemprice ; if ( baseprice > 1000) return baseprice 0.95; else return baseprice 0.98; if ( baseprice() > 1000) return baseprice () 0.95; else return baseprice () 0.98;... double baseprice () { return quantity itemprice ; MI3GL 2004/ MI3GL 2004/ Introduce Parameter Object Introduce Parameter Object Un groupe de paramètres vont naturellement ensemble. Un groupe de paramètres vont naturellement ensemble. Les remplacer par un objet. Les remplacer par un objet. MI3GL 2004/ MI3GL 2004/ Preserve whole Object Plusieurs valeurs sont demandées àunobjetetpassées comme paramètres d une méthode. Passer directement l objet en paramètre. int low = daystemprange().getlow(); int high = daystemprange().gethigh(); withinplan = plan. withinrange(low, high ); withinplan = plan.withinrange(daystemprange()); Replace Method with Method Object 1/2 Il existe une longue méthode qui utilise des variables locales telles que l utilisation de Extract Method est impossible. Déplacer la méthode dans son propre objet de telle sorte que les variables locales deviennent ses attributs. Il est alors possible de décomposer la méthode en plusieurs méthodes sur le même objet. class Order... double price () { double primarybaseprice ; double secondarybaseprice ; double tertiarybaseprice ; // long computation ;... MI3GL 2004/ MI3GL 2004/
3 Replace Method with Method Object 2/2 Replace Parameter with Method Un objet appelle une méthode, et passe le résultat en paramètre d une autre méthode. L autre méthode peut aussi appeler cette méthode. Enlever le paramètre et laisser le seconde méthode appeler la première. int baseprice = quantity itemprice ; discountlevel = getdiscountlevel (); double finalprice = discountedprice ( baseprice, discountlevel ); int baseprice = quantity itemprice ; double finalprice = discountedprice ( baseprice ); MI3GL 2004/ MI3GL 2004/ Pull Up Field Pull Up Field Deux sous classes ont le même attribut. Deux sous classes ont le même attribut. Déplacer l attribut dans la superclasse. Déplacer l attribut dans la superclasse. MI3GL 2004/ MI3GL 2004/ Form template method 1/3 Form template method 2/3 Il existe deux méthodes dans des sous classes qui effectuent des tâches similaires dans le même ordre, mais ces tâches sont différentes. Remplacer ces tâches par des méthodes ayant la même signature, telles que les méthodes originales deviennent identiques. Ensuite, vous pouvez les faire remonter. MI3GL 2004/ MI3GL 2004/ Form template method 3/3 MI3GL 2004/ Substitute Algorithm 1/2 Vous voulez remplacer un algorithme par un autre. Remplacez le corps de la méthode par le nouvel algorithme. String foundperson( String [] people){ for ( int i = 0; i < people. length ; i++) { if ( people [ i ]. equals ( Don )){ return Don ; if ( people [ i ]. equals ( John )){ return John ; if ( people [ i ]. equals ( Kent )){ return Kent ; return ; MI3GL 2004/
4 Substitute Algorithm 2/2 Extract class String foundperson( String [] people){ List candidates = Arrays. aslist ( new String [] { Don, John, Kent ); for ( int i=0; i<people. length ; i++) if ( candidates. contains(people [ i ])) return people [ i ]; return ; Uneclassefaitletravailquidevraitêtre fait par deux. Declarer une nouvelle classe et déplacer les membres appropriés vers la nouvelle classe. MI3GL 2004/ MI3GL 2004/ Extract class Extract subclass Uneclassefaitletravailquidevraitêtre fait par deux. Declarer une nouvelle classe et déplacer les membres appropriés vers la nouvelle classe. Une classe a des services utilisés uniquement par certaines instances. Créer une sous classe pour ces services. MI3GL 2004/ MI3GL 2004/ Extract subclass Une classe a des services utilisés uniquement par certaines instances. Créer une sous classe pour ces services. Collapse Hierarchy Une classe et une sous classe ne sont pas très différentes. Les fusionner MI3GL 2004/ MI3GL 2004/ Collapse Hierarchy Une classe et une sous classe ne sont pas très différentes. Inline class Les fusionner Uneclassenefaitpasgrandchose. Déplacer toutes ses responsabilités dans une autre classe et l enlever. MI3GL 2004/ MI3GL 2004/
5 Inline class Remove parameter Uneclassenefaitpasgrandchose. Déplacer toutes ses responsabilités dans une autre classe et l enlever. Un paramètre n est plus utilisé dans une méthode. Enlever ce paramètre. MI3GL 2004/ MI3GL 2004/ Remove parameter Un paramètre n est plus utilisé dans une méthode. Enlever ce paramètre. MI3GL 2004/ Kent Beck. extreme Programming explained, Embrace Change. Addison Wesley, B. Boehm. Software Engineering Project Management, chapter A spiral model of software development and enhancement Bernd Bruegge and Allen H. Dutoit. Object Oriented Software Engineering: Conquering Complex and Changing Systems. Prentice Hall, ISBN: : Improving the Design of Existing Code. Object Technology Series. Addison Wesley, Indispensable! MI3GL 2004/ Patterns of Enterprise Application Architecture. The Addison-Wesley Signature Series. Addison Wesley, UML distilled: A brief Guide to the Standard Object Modelling Language. Object Technology series. Addison Wesley, 3rd edition, Indispensable! Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns, Elements of Reusable Object-Oriented Software. Addison Wesley, Aposséder absolument! Marie-Claude Gaudel, Bruno Marre, Françoise Schienger, and Gilles Bernot. MI3GL 2004/ Précis de Génie Logiciel. Enseignement de l Informatique. Masson, ISBN : Andrew Hunt and David Thomas. The Pragmatic Programmer. Addison Wesley, Un livre interessant (mais en anglais) pour tous les programmeurs. Robert C. Martin. Agile Software Development: Principles, Patterns and Practices. Prentice Hall, Utile. Robert C. Martin. UML for Java Programmers. Prentice Hall, MI3GL 2004/ Bertrand Meyer. Conception et programmation orientées objet. Eyrolles, Indispensable pour tout programmeur dans un langage objet, même si les exemples donnés sont plutôt en Eiffel. P. G. Neumann. Computer-Related Risks. Reading. Addison-Wesley, MA, W. W. Royse. Managing the development of large software systems. In IEEE Computer Society, editor, Tutorial: Software Engineering Project Management, pages , Washington, DC, Jack Shirazi. Java Performance Tuning, 2nd edition. O Reilly, MI3GL 2004/
Langage 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 [email protected]
Patrons de Conception (Design Patterns)
Patrons de Conception (Design Patterns) Introduction 1 Motivation Il est difficile de développer des logiciels efficaces, robustes, extensibles et réutilisables Il est essentiel de comprendre les techniques
ACTIVITÉ 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,
Types 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
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
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
Le développement d'applications informatiques
Le développement d'applications informatiques Des bibliothèques de fonctions aux "design patterns" Copyright 2011-2015 Yves Marcoux 1 Sources bibliographiques Ramon, Jorge. "Preface". Ext JS 3.0 Cookbook:
Analyse,, Conception Objet
Analyse,, Conception Objet Design Patterns Introduction Sommaire Conception Réutilisabilité Bibliothèque de classe vs. Framework Design Pattern Historique Catégories de Patterns Bibliographie O. Boissier,
Gestion de projet Agile. STS IRIS Module 4.2 - «Gérer et organiser un projet informatique»
Gestion de projet Agile Module 4.2 - «Gérer et organiser un projet informatique» Sommaire Introduction Principes et méthodes Agiles Scrum 2 Introduction Gestion de projet : démarche structurante assurant
Génie logiciel (Un aperçu)
(Un aperçu) (sommerville 2010) Laurent Pérochon INRA URH 63122 St Genès Champanelle [email protected] Ensemble d activités conduisant à la production d un logiciel Sur un échantillon de
Ne renvoyez pas vos architectes! Utilisez-les avec agilité
Ne renvoyez pas vos architectes! Utilisez-les avec agilité Intégration du travail architectural dans un cycle de développement Agile Jean-Louis Maréchaux [email protected] Qui suis-je? Jean-Louis
Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration
Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration Pluquet Frédéric July, 3rd 2012 Etude de techniques efficaces de versionnement d objets pour les langages orientés
Bibliographie sommaire pour le programme de B. Sc. (informatique de gestion), concentration en génie logiciel
Bibliographie Bibliographie sommaire pour le programme de B. Sc. (informatique de gestion), concentration en génie logiciel Émetteur Dates Luc Lavoie dernière modification : 2008-04-10 dernière impression
AGILE Historique et évolution
AGILE Historique et évolution Itératif Incrémental Adaptatif 2 Méthode Agile Historique et évolution AGILE Historique et évolution Itératif et incrémental Les notions sous-jacentes aux principes incrémental
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
Bases 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
Environnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut [email protected] http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement
Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement distribué Éric Leclercq Département IEM / Laboratoire LE2i Septembre 2014
Design 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
Introduction au génie logiciel
Introduction au génie logiciel Guillaume Laurent ENSMM 2007 G. Laurent (ENSMM) Introduction au génie logiciel 2007 1 / 36 Plan du cours 1 Problématique du génie logiciel 2 Méthodes de développement logiciel
Introduction à l extreme Programming et au développement agile
Introduction à l extreme Programming et au développement agile Gauthier Picard SMA/G2I/ENS Mines Saint-Etienne gauthierpicard@emsefr Octobre 2009 Adapté de XP ou les bienfaits d un développement «agile»
Les méthodes Agile. Implication du client Développement itératif et incrémental
Les méthodes Agile Simon ALEXANDRE - CETIC Plan Overview Agile ne signifie pas Agile signifie Objectifs poursuivis Pourquoi les méthodes Agile apparaissent-elles? Principales causes des échecs de projets
Les méthodes Agiles Introduction. Intervenant : Tremeur Balbous [email protected] http://www.agilegardener.com/ 04/09/2008
Les méthodes Agiles Introduction Intervenant : Tremeur Balbous [email protected] http://www.agilegardener.com/ 04/09/2008 Les méthodes Agiles Le contexte Le Manifeste Agile Une tentative de définition
CREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Agile Maroc 24 Novembre 2010. Méthodes agiles. Thierry Cros. http://etre-agile.com. Agile Maroc 24 novembre 2010
Agile Maroc 24 Novembre 2010 Méthodes agiles Thierry Cros 1 Thierry Cros 10 ans déjà... 2010 Création Extreme Programming France 2009 SigmaT Les Agilistes Toulousains 2010 Membre de «Fédération Agile»
Plan. Patrons de conception. Motivations. Design Pattern : principe. Philippe Collet
Plan Patrons de conception Philippe Collet Master 1 Informatique 2005-2006 http://deptinfo.unice.fr/twiki/bin/view/minfo/gloo Introduction Premier exemple Principes et classification Présentation des patrons
Le cadre des Web Services Partie 1 : Introduction
Sécurité en ingénierie du Logiciel Le cadre des Web Services Partie 1 : Introduction Alexandre Dulaunoy [email protected] Sécurité en ingénierie du Logiciel p.1/21 Agenda (partie 1) 1/2 Introduction Services
Alignement avec les métiers par le test fonctionnel et d acceptation en projets agiles
Alignement avec les métiers par le test fonctionnel et d acceptation en projets agiles Laurent PY CEO, Smartesting [email protected] @py_laurent www.smartesting.com Guillaume Coquelle Testeur,
Projet 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
http://www-adele.imag.fr/users/didier.donsez/cours Didier Donsez
http://www-adele.imag.fr/users/didier.donsez/cours Annuaires (Directory) Didier Donsez Université Joseph Fourier - Grenoble 1 PolyTech Grenoble - LIG/ADELE [email protected] [email protected] Sommaire
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
Bases de données relationnelles : Introduction
Bases de données relationnelles : Introduction historique et principes V. Benzaken Département d informatique LRI UMR 8623 CNRS Université Paris Sud [email protected] https://www.lri.fr/ benzaken/
Architectures Ouvertes pour l Adaptation des Logiciels
Architectures Ouvertes pour l Adaptation des Logiciels Frédéric Duclos 1, Jacky Estublier 2, Rémy Sanlaville 1 Published in review Génie Logiciel And proceedings ICSSEA, Paris 2001 1 Dassault Systèmes
Génie Logiciel Avancé Cours 1 Introduction
Génie Logiciel Avancé Cours 1 Introduction Stefano Zacchiroli [email protected] Laboratoire PPS, Université Paris Diderot - Paris 7 3 Février 2011 URL http://upsilon.cc/zack/teaching/1011/gla/ Copyright
1-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
Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier
Master MIDO 2ème année Spécification et Conception en UML Maude Manouvrier Spécifications initiales Analyse Conception du système Conception des classes Bibliographie Modélisation et conception orientées
Cours Base de données relationnelles. M. Boughanem, IUP STRI
Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),
Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.
Analyse et conception objet du logiciel : Méthode de conception objet et notation UML Rémy Courdier Email : [email protected] Rémy Courdier V2.1 1 Plan du cours Introduction au Génie Logiciel
Algorithmes : conception et réalisation MQT 63834
Algorithmes : conception et réalisation MQT 63834 Professeur Antoine Gautier, Ph. D. Département Opérations et systèmes de décision Faculté des sciences de l administration, Université Laval Session d
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
IT203 : Systèmes de gestion de bases de données. A. Zemmari [email protected]
IT203 : Systèmes de gestion de bases de données A. Zemmari [email protected] 1 Informations pratiques Intervenants : Cours : (A. Zemmari [email protected]) TDs, TPs : S. Lombardy et A. Zemmari Organisation
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.
LOG4430 : 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
Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé. http://www.rzo.free.fr
Cours de Java Sciences-U Lyon Java - Introduction Java - Fondamentaux Java Avancé http://www.rzo.free.fr Pierre PARREND 1 Octobre 2004 Sommaire Java Introduction Java Fondamentaux Histoire de Java Machine
UML : Unified Modeling Language
UML : Unified Modeling Language Recommended: UML distilled A brief guide to the standard Object Modeling Language Addison Wesley based on Frank Maurer lecture, Univ. of Calgary in french : uml.free.fr/index.html
JADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry [email protected].
: Java Agent DEvelopment framework Laboratoire IBISC & Départ. GEII Université & IUT d Evry [email protected] Introduction à la plateforme JADE 1) Modèle d agent 2) Services 3) Norme FIPA
OpenPaaS 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
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
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
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
Développement ebusiness
Développement ebusiness Cédric Pulrulczyk ( [email protected] ) Alcatel Université Lille I March 2005 Plan Analyse des besoins Méthodologie XP Modélisation UML Outil de développement Tests et
Étude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
Université Catholique de Louvain Faculté des Sciences Appliquées Département d Ingénierie Informatique Étude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
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
Agile et CMMi. L agilité et la norme. Jean-Pierre Vickoff
Agile et CMMi L agilité et la norme 2 Méthode Agile CMMI Le courant de pensée CMM Il n est pas dans mon intention de détailler ici la «galaxie» CMMi (Figure 1) d autant qu il suffit de chercher sur le
Chapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Séance 1 Méthodologies du génie logiciel
Séance 1 Méthodologies du génie logiciel Objectifs : Histoire du développement du logiciel. La crise du logiciel. Explorer les différentes méthodologies de développement. Comprendre l importance d adopter
Chapitre 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
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
Par 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
énie avec Scrum, Lean, extreme Programming
énie ogiciel Véronique Messager Préface de Jean Tabaka Gestion de projet agile avec Scrum, Lean, extreme Programming Groupe Eyrolles, 2007, 2009, 2010, ISBN : 978-2-212-12750-8 Groupe Eyrolles, 2013, pour
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é
Architecture 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
Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski [email protected]
Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski [email protected] Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université
Plan. Tests. 1. Introduction. 1. Introduction
Plan Tests Lionel Seinturier Université des Sciences et Technologies de Lille [email protected] 28/11/06 Tests 1 Lionel Seinturier Tests 2 Lionel Seinturier Objectifs du test de programmes Détecter
Génie logiciel avec UML. Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique
Génie logiciel avec UML Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique Claude Boutet Session hiver 2008 Modélisation de systèmes Table des matières TABLE DES
Besoins utilisateurs. Quelle démarche pour passer des besoins au code? Code. chapitre1 UNIFIED MODELING LANGUAGE. package LogiqueMetier.
chapitre1 Besoins utilisateurs Quelle démarche pour passer des besoins au code?? UNIFIED MODELING LANGUAGE package LogiqueMetier.Gestion; import LogiqueMetier.Catalogue.Livre; import java.util.*;public
Introduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Vérifier la qualité de vos applications logicielle de manière continue
IBM Software Group Vérifier la qualité de vos applications logicielle de manière continue Arnaud Bouzy Kamel Moulaoui 2004 IBM Corporation Agenda Analyse de code Test Fonctionnel Test de Performance Questions
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
Introduction Les processus traditionnels extreme Programming Conclusion. extreme Programming. vers plus d agilité. F. Miller francois.miller@inpg.
vers plus d agilité F. Miller [email protected] FC INPG Octobre 2008 - version 1.0 Introduction Contexte Le monde bouge économie des moyens (humains, financier,...) ; recherche de plus d efficacité
Les Bases de Données et l Objet Introduction
Les Bases de Données et l Objet Introduction Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes [email protected] Plan Définitions d un Objet Propriétés
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
Ingénierie et gestion des connaissances
Master Web Intelligence ICM Option Informatique Ingénierie et gestion des connaissances Philippe BEAUNE [email protected] 18 novembre 2008 Passer en revue quelques idées fondatrices de l ingénierie
Générer du code à partir d une description de haut niveau
Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,
DES SYSTÈMES D INFORMATION
URBANISATION & CONCEPTION DES SYSTÈMES D INFORMATION Le concept d urbanisation repose sur une analogie connue entre le Système d Information (SI) et la ville, dans lesquels interviennent tour à tour urbanistes
Programmation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Présentation des experts
A Présentation des experts Christophe Addinquy Impliqué depuis 15 ans dans le développement orienté objet, Christophe Addinquy a notamment participé à l émergence d UML au sein de la société Softeam. Consultant
Vérifica(on et Valida(on de Business Process. Ang Chen et Levi Lúcio
Vérifica(on et Valida(on de Business Process Ang Chen et Levi Lúcio Résumé Méthodologie de développement Architecture & environnement pour le développement des processus mé(er Modèle opéra(onnel Vérifica(on
Règles d engagement. Présentation Diapositives Bibliographie Questions Les vertus de la marche
Règles d engagement Présentation Diapositives Bibliographie Questions Les vertus de la marche Plan Rappels sur l agilité Scrum : une implantation de l agilité Scrum ou XP? Conclusion Historique sélectif
UE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Cours Composant 2. Qualité logicielle et spécications algébriques
UPMC Paris Universitas Master Informatique STL Cours Composant 2. Qualité logicielle et spécications algébriques c 2005-2008 Frédéric Peschanski UPMC Paris Universitas 24 février 2008 c 2005-2008 Frédéric
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Stage Ingénieur en développement logiciel/modélisation 3D
Ingénieur en développement logiciel/modélisation 3D Schlumberger recrute un(e) stagiaire ingénieur en modélisation 3D pour la plate-forme Petrel. Vous serez intégré(e) au sein d une équipe innovante, Petrel
Flux de données Lecture/Ecriture Fichiers
Flux de données Lecture/Ecriture Fichiers 1 Un flux de données est un objet qui représente une suite d octets d un programme pour une certaine destination ou issus d une source pour un programme flux d
Dé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
Introduction à la modélisation
Formation INRA-ACTA-ICTA Introduction à la modélisation Les modèles mathématiques pour l agronomie et l élevage 2 nde session, du 28 novembre au 1 er décembre 2005 - Informatique et modèles - Nathalie
Cours 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/
Programmation MacOSX / ios
Programmation MacOSX / ios Master Ingénierie Informatique 2011-2012 Jean-Baptiste.Yunè[email protected] deux extensions objets de C : C++ (Stroustrup) Objective-C (Cox & Love) ajout de constructions à
Introduction au Génie Logiciel
Introduction au Génie Logiciel Lydie du Bousquet [email protected] En collaboration avec J.-M. Favre, I. Parissis, Ph. Lalanda Qu est-ce que le logiciel? programme, ensemble d instructions Caractéristiques
Dafoe Présentation de la plate-forme UIMA
Laboratoire d Informatique de l université Paris-Nord (UMR CNRS 7030) Institut Galilée - Université Paris-Nord 99, avenue Jean-Baptiste Clément 93430 Villetaneuse, France 11 juillet 2007 Plates-formes
Eclipse Process Framework et Telelogic Harmony/ITSW
Eclipse Process Framework et Telelogic Harmony/ITSW Boris Baldassari 1 Résumé Une introduction à Eclipse Process Framework (EPF) et au processus OpenUP, et comment tirer profit de ces initiatives dans
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
Méthodologies Orientées-Objet!
MAI NFE103 Année 2013-2014 Méthodologies Orientées-Objet! F.-Y. Villemin ([email protected]) Plan!!Les différentes méthodologies! Démarche! Cycle de vie!!rational Unified Process (RUP)!!La méthode Layman!!Notre
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)
Modélisation Conceptuelle et Ingénierie des Systèmes d Information
Modélisation Conceptuelle et Ingénierie des Systèmes d Information Manuel KOLP Alain PIROTTE Université catholique de Louvain, IAG-QANT 1 Place des Doyens, 1348 Louvain-la-Neuve, Belgique, e-mail: [email protected],
Analyse,, 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
Conventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert [email protected] Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
