Generic Morpher: un design pattern adaptatif
|
|
- Édouard Laurin
- il y a 8 ans
- Total affichages :
Transcription
1 Generic Morpher: un design pattern adaptatif David Lesage Séminaire du LRDE, 19 Septembre 2002
2 Table des matières Table des matières Contexte... 3 Problématique... 6 Rappel : Design Patterns Le Décorateur Rappel : paradigme de programmation générique Le Décorateur Générique L héritage conditionnel Et les méthodes spécialisées? Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
3 Table des matières Conclusion Questions? Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
4 Contexte Contexte Bibliothèque Olena Domaine : traitement d images, calcul scientifique besoin de performances Programmation générique en C++ Templates Manipulations statiques Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
5 Contexte Olena : hierarchie existante Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
6 Contexte algorithmes existants ValueType Sum(const Image& ima) { ValueType s; Image::iter i (ima); } for_all ( i ) s += ima[i ]; return s; Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
7 Problématique Problématique Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
8 Problématique Effectuer des Transformations sur les images, par exemple : extraire la composante rouge d une image RGB extraire une couche 2D d une image 3D masquer une image à l aide d un masque binaire... Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
9 Problématique Du point de vue des éléments existants : Système non intrusif Algorithmes inchangés : Image (RGB) d origine : somme des valeurs RGB (triplet) Transformation RGB Rouge : somme des valeurs des points rouges Extraction d une couche 3D 2D : somme des points de la couche Image Masquée : somme des points non masqués Seule l apparence des entrées de l algorithme change. Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
10 Problématique Généricité Généricité connue : 1 Algorithme : T types de données * S structures de données Ex : Conteneurs STL, itérateurs Apport : 1 Algorithme : T types de données * S structures de données * M modifications Modifications sur types, structures, et sémantique de l algorithme Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
11 Problématique Généricité accrue Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
12 Rappel : Design Patterns Rappel : Design Patterns Qu est-ce qu un Design Pattern? Eléments d architectures logicielles réutilisables Idiomes de design logiciel Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
13 Rappel : Design Patterns Classification selon Gamma, Helm, Johnson et Vlissides Patterns Générateurs : Factory... Patterns Structurels : Adaptateur, Pont, Décorateur... Patterns Comportementaux : Itérateur, Visiteur, Stratégie... Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
14 Rappel : Design Patterns Classification selon la paramétrisation (Czarnecki & Eisenecker) Generative Programming Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
15 Le Décorateur Le Décorateur Design Pattern Structurel But : Etendre les fonctionnalités, ajouter des responsabilités à un objet. Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
16 Le Décorateur Structure : algo(image& input) { // utilisation de input[ point ] //... } Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
17 Le Décorateur Limitations du Décorateur algo(image2d& input) { // traitements sur des images 2D //... } Une Image2d décorée n est pas une Image2D! Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
18 Rappel : paradigme de programmation générique Rappel : paradigme de programmation générique Paradigme de programmation générique : paramètres statiques Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
19 Le Décorateur Générique Le Décorateur Générique Etre paramétré par le type à décorer Hériter de son paramètre (héritage mixin, Bracha & Cook) (Coots 01, A. Duret-Lutz, T. Geraud & A. D le, LRDE) Intégration : une Image2d décorée est une Image2D! Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
20 Le Décorateur Générique Limitations du Décorateur Générique Décoration statique : pas de notion de composition... wrapper de classe, pas d objet... Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
21 L héritage conditionnel L héritage conditionnel hériter directement de ce que l on décore : inadapté hériter des abstractions/interfaces : l ImageDécoréeParFonction, décorant (paramétrée par) une Image2dRGB hériterait de Image2D... Oui, mais... Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
22 L héritage conditionnel Couper une tranche 2D d une image3d : Image3D Image2D Etre capable de définir un héritage tenant compte du type de ce que l on décore et de la transformation que le décorateur effectue. Héritage conditionnel : possible grace aux outils de programmation statique Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
23 L héritage conditionnel Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
24 L héritage conditionnel if l ImageDécorée est une ImageDécoréeParFonction then if décorée(deco) est une Image2dRGB then hériter de Image2d else if décorée(deco) est une Image3dRGB then hériter de Image3d end if end if Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
25 L héritage conditionnel // trait for conditionnal inheritance template<class DecorateurConcret> struct CondInherit; // specialization for ImageDecoreeParFonction and Image2dRGB template<> struct CondInherit<ImageDecoreeParFonction<Image2dRGB> > { typedef Image2d ret_t; }; // specialization for ImageDecoreeParFonction and Image3dRGB template<> struct CondInherit<ImageDecoreeParFonction<Image3dRGB> > { typedef Image3d ret_t; }; Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
26 L héritage conditionnel template<class Deco, class DecorateurConcret> struct ImageDecoree: public CondInherit<DecorateurConcret>::ret_t { //... }; template<class Deco> struct ImageDecoreeParFonction: public ImageDecoree<ImageDecoreeParFonction<Deco>, Deco> { //... }; Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
27 Et les méthodes spécialisées? Et les méthodes spécialisées? Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
28 Et les méthodes spécialisées? Comment récupérer une implémentation (délégation) par défaut pour les opérateurs () spécialisés? Conserver la généricité sur les transformations, sans grever la généricité sur les structures de données. Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
29 Le Generic Morpher Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
30 Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
31 Le Generic Morpher Dérivations semblables à la hiérarchie d origine Autant de niveaux à rajouter au Décorateur que de niveaux de spécialisations désirés Deux héritages conditionnels, dont un automatisé Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
32 Le Generic Morpher Avantages Intégration maximale : extensions, redefinitions possibles Récupération par défaut de toutes les propriétés (spécialisations) voulues Modularité de la granularité Généricité des transformations conservée, sans entraver la généricité existante (tout le système est adaptatif suivant un unique héritage conditionnel relatif à la classe finale utilisée) Système complètement non intrusif Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
33 Le Generic Morpher Inconvénients Contraintes sur la hiérarchie d origine : modélisation favorable Stabilité : deux hiérarchies à maintenir parallèlement Risque d incomplétude : héritage conditionnel défini à la main... Désagréments usuels de la MetaPOO... Puissance et possibilités du système pas encore entièrement découverts... Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
34 Le Generic Morpher Le Generic Morpher et DP usuels Proxy : mêmes notions d aggrégation, possibilités de contrôle d accès et de masquage d informations Décorateur : mêmes propriétés d extensibilité, décorations successives, + intégration plus précise Décorateur Générique : mêmes propriétés d intégration (en + précise), composition (proxy pour des données) Adaptateur : mêmes possibilités de modifications d interfaces, + extensibilité + récursivité Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
35 Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
36 Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
37 Le Generic Morpher Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
38 Conclusion Conclusion Généricité accrue : nombreuses utilisations sémantiquement différentes Danger : Quel est le rôle de ce design pattern? Répond à des besoins imprécis : On sait qu on veut faire des choses avec des trucs... Peut on réellement parler de Design Pattern? Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
39 Conclusion Point sur l avancée des recherches, Perspectives Applications concrètes réalisées Composantes Rouges d une image RGB Tranche 2d d une image 3d Image Masquée... Intégration à Olena Tentative de formalisation dans un article. Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
40 Questions? Questions? Generic Morpher: un design pattern adaptatif, David Lesage - Séminaire du LRDE, 19 Septembre
Composants génériques de calcul scientifique
Composants génériques de calcul scientifique T. Géraud et A. Duret-Lutz RAPPORT TECHNIQUE 9901 MARS 1999 Laboratoire de Recherche et Développement d EPITA 14-16, rue Voltaire 94276 Le Kremlin-Bicêtre cedex
Plus en détailPlan. 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
Plus en détailPatrons 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
Plus en détailSemarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire
FICHE PRODUIT Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire BENEFICES POUR LES DSI Réussir les projets de gouvernance dans les délais et les budgets Démarrer de manière tactique tout en
Plus en détailLogiciel 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étailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
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é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étailClasses 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étailChapitre 2 - Architecture logicielle et construction d applications client-serveur
Chapitre 2 - Architecture logicielle et construction d applications client-serveur «Toute technologie suffisamment avancée est indiscernable de la magie» (Arthur Clarke) Résumé La méthodologie MEDEVER
Plus en détailPHP 5.4 Développez un site web dynamique et interactif
Editions ENI PHP 5.4 Développez un site web dynamique et interactif Collection Ressources Informatiques Table des matières Table des matières 1 Chapitre 1 Introduction 1. Objectif de l'ouvrage.............................................
Plus en détailProgrammation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006
vendredi 8 septembre 2006 Programmation d'agents intelligents Vers une refonte des fils de raisonnement Stage de fin d'études Master IAD 2006 Benjamin DEVEZE Responsable : M. Patrick TAILLIBERT Plan Plan
Plus en détailMaster CCI. Compétences Complémentaires en Informatique. Livret de l étudiant
Master CCI Compétences Complémentaires en Informatique Livret de l étudiant 2014 2015 Master CCI Le Master CCI (Compétences Complémentaires en Informatique) permet à des étudiants de niveau M1 ou M2 dans
Plus en détailBusiness Intelligence avec Excel, Power BI et Office 365
Avant-propos A. À qui s adresse ce livre? 9 1. Pourquoi à chaque manager? 9 2. Pourquoi à tout informaticien impliqué dans des projets «BI» 9 B. Obtention des données sources 10 C. Objectif du livre 10
Plus en détailGestion mémoire et Représentation intermédiaire
Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailProgrammation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
Plus en détailFramework Agile Global
PUMA Architecte d une génération d entreprises performantes Framework Agile Global Une organisation est fonctionnellement Agile lorsque ses composants opérationnels (ressources humaines, processus opérationnels,
Plus en détailLes 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étail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
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étailPrincipes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
Plus en détailPrésentation du PL/SQL
I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailArchitectures 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
Plus en détailLe 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:
Plus en détailLa solution pour gérer vos connaissances techniques et scientifiques
La solution pour gérer vos connaissances techniques et scientifiques La solution pour gérer, sécuriser et réutiliser vos connaissances techniques et scientifiques TEEXMA est le premier outil collaboratif
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailBES WEBDEVELOPER ACTIVITÉ RÔLE
BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et
Plus en détailINDUSTRIALISATION ET RATIONALISATION
INDUSTRIALISATION ET RATIONALISATION A. LA PROBLEMATIQUE La mission de toute production informatique est de délivrer le service attendu par les utilisateurs. Ce service se compose de résultats de traitements
Plus en détailMandataires, caches et filtres
Mandataires, caches et filtres Pascal AUBRY IFSIC - Université de Rennes 1 Pascal.Aubry@univ-rennes1.fr Plan : mandataires caches filtrage serveur de proxy exemple de mise en œuvre Mandataire (proxy) Mandataire
Plus en détailProcessus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace
Processus 1) Contexte 2) Modèles de Notion de Points de vue Modèle fourni par le SX Opérations sur les 3) Gestion des Représentation des Opérations 4) Ordonnancement des Niveaux d ordonnancement Ordonnancement
Plus en détailUE 8 Systèmes d information de gestion Le programme
UE 8 Systèmes d information de gestion Le programme Légende : Modifications de l arrêté du 8 mars 2010 Suppressions de l arrêté du 8 mars 2010 Partie inchangée par rapport au programme antérieur Indications
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étailProcessus d Informatisation
Processus d Informatisation Cheminement de la naissance d un projet jusqu à son terme, deux grandes étapes : Recherche ou étude de faisabilité (en amont) L utilisateur a une idée (plus ou moins) floue
Plus en détailTravaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)
Travaux soutenus par l ANR Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting) 03 Avril 2012 1. Test de sécurité et génération de tests à partir de modèle 2. Le projet SecurTest à DGA Maîtrise de l
Plus en détailFormula Negator, Outil de négation de formule.
Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente
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étailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailCentre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Plus en détailRapport d activité. Mathieu Souchaud Juin 2007
Rapport d activité Mathieu Souchaud Juin 2007 Ce document fait la synthèse des réalisations accomplies durant les sept premiers mois de ma mission (de novembre 2006 à juin 2007) au sein de l équipe ScAlApplix
Plus en détailQuatrième partie IV. Test. Test 15 février 2008 1 / 71
Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion
Plus en détailANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT
école sciences industrielles & technologies de l information ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT Crédit : 120 ECTS Code DIE20 Niveau d entrée : Bac Niveau de sortie : Bac + 2 EN VAE Diplômes accessibles
Plus en détailReconstruction de bâtiments en 3D à partir de nuages de points LIDAR
Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains
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étailUne bibliothèque de templates pour CUDA
Une bibliothèque de templates pour CUDA Sylvain Collange, Marc Daumas et David Defour Montpellier, 16 octobre 2008 Types de parallèlisme de données Données indépendantes n threads pour n jeux de données
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailAutomatisation de l administration système
Automatisation de l administration système Plan Problèmatique : trop de systèmes, trop de solutions Typage des solutions Puppet : gestion de configuration de systèmes Capistrano : déploiement d applications
Plus en détailMéthodes d évolution de modèle produit dans les systèmes du type PLM
Résumé de thèse étendu Méthodes d évolution de modèle produit dans les systèmes du type PLM Seyed Hamedreza IZADPANAH Table des matières 1. Introduction...2 2. Approche «Ingénierie Dirigée par les Modèles»
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étailCatalogue des formations Edition 2015
Antidot - Formations Catalogue des formations Edition 2015 : catalogue_formation_2015 Révision du 06.01.2015 Sommaire!!"##$%&'( )! $*$+,(-'(."##'+.'&( /!,'.0+"1"2%'( /!!."3'( /! $(3&"3"!(-4(5(.$,$1"24'(-'!(6"&#$,%"+!(7('-%,%"+()89:(;(
Plus en détailLicence 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étailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailObjectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique
Objectifs Clustering On ne sait pas ce qu on veut trouver : on laisse l algorithme nous proposer un modèle. On pense qu il existe des similarités entre les exemples. Qui se ressemble s assemble p. /55
Plus en détailVé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
Plus en détailProgrammes des classes préparatoires aux Grandes Ecoles
Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voies : Mathématiques, physique et sciences de l'ingénieur (MPSI) Physique, chimie et sciences de l ingénieur (PCSI) Physique,
Plus en détailTalend Technical Note
Mars 2011 Page 1 sur 5 Le MDM offre un hub central de contrôle et une vision unique des données maître de l'entreprise, quelles que soient les disparités entre les systèmes source. Il assure que les données
Plus en détailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailSystèmes de recommandation de produits Projet CADI Composants Avancés pour la DIstribution
Journée DAPA du 26 mars 2009 Systèmes de recommandation de produits Projet CADI Composants Avancés pour la DIstribution Michel de Bollivier michel.debollivier@kxen.com Agenda Projet CADI La recommandation
Plus en détailLambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Plus en détailIntroduction au Data-Mining
Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme
Plus en détailBUSINESS INTELLIGENCE. Une vision cockpit : utilité et apport pour l'entreprise
BUSINESS INTELLIGENCE Une vision cockpit : utilité et apport pour l'entreprise 1 Présentation PIERRE-YVES BONVIN, SOLVAXIS BERNARD BOIL, RESP. SI, GROUPE OROLUX 2 AGENDA Définitions Positionnement de la
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailBusiness Intelligence
avec Excel, Power BI et Office 365 Téléchargement www.editions-eni.fr.fr Jean-Pierre GIRARDOT Table des matières 1 Avant-propos A. À qui s adresse ce livre?..................................................
Plus en détailCours 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
Plus en détailSolutions informatiques (SI) Semestre 1
Solutions informatiques (SI) Cette unité vise l acquisition de compétences générales à partir desquelles sont construites les compétences propres aux parcours de spécialisation. Elle comprend, d une part,
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détailGé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étailExceptions. 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étailLe "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique
Introduction à l informatique : Information automatisée Le premier ordinateur Définition disque dure, mémoire, carte mémoire, carte mère etc Architecture d un ordinateur Les constructeurs leader du marché
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailIntroduction à la Programmation Parallèle: MPI
Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4
Plus en détail7 ingrédients pour personnaliser l expérience client et booster votre chiffre d affaires en seulement 5 semaines
7 ingrédients pour personnaliser l expérience client et booster votre chiffre d affaires en seulement 5 semaines 24 S e p t e m b r e 2014 @Emarsys_France #ECP14 23 > 25 SEPTEMBRE 2014 I PARIS I PORTE
Plus en détailBrique 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Évaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
Plus en détailMerise. Introduction
Merise Introduction MERISE:= Méthode d Etude et de Réalisation Informatique pour les Systèmes d Entreprise Méthode d Analyse et de Conception : Analyse: Etude du problème Etudier le système existant Comprendre
Plus en détailCatalogue de Pattern pour le CSCW
Catalogue de Pattern pour le CSCW La création d application dans le cadre du CSCW (Computer Supported Cooperative Work), ou TCAO en français (Travail collaboratif assisté par ordinateur) a donné lieu à
Plus en détailProgrammation 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étailIFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL
IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL Un bus de services Un bus de services (ESB) permet d assembler des web services existants, le résultat de cet
Plus en détailContexte et motivations Les techniques envisagées Evolution des processus Conclusion
Vérification de logiciels par analyse statique Contexte et motivations Les techniques envisagées Evolution des processus Conclusion Contexte et motivations Specification Design architecture Revues and
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailOS Réseaux et Programmation Système - C5
OS Réseaux et Programmation Système - C5 Rabie Ben Atitallah rabie.benatitallah@univ-valenciennes.fr RPC - XDR Rappel RPC: Remote Procedure Call Besoin d un environnement de haut niveau pour le développement
Plus en détailMaster 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
Plus en détailProjet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :
CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i
Plus en détailAngularJS pour une application d'entreprise
AngularJS pour une application d'entreprise SAVOIR FAIRE SERIAL Jean-Philippe Laurent Responsable pôle Web Benoit Charpié-Pruvost Expert AngularJS 18 juin 2015 BRINGING THE HUMAN TOUCH TO TECHNOLOGY BRINGING
Plus en détail= constante et cette constante est a.
Le problème Lorsqu on sait que f(x 1 ) = y 1 et que f(x 2 ) = y 2, comment trouver l expression de f(x 1 )? On sait qu une fonction affine a une expression de la forme f(x) = ax + b, le problème est donc
Plus en détailSécurité des réseaux Firewalls
Sécurité des réseaux Firewalls A. Guermouche A. Guermouche Cours 1 : Firewalls 1 Plan 1. Firewall? 2. DMZ 3. Proxy 4. Logiciels de filtrage de paquets 5. Ipfwadm 6. Ipchains 7. Iptables 8. Iptables et
Plus en détailEPREUVE 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
Plus en détailUML 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étailIFT2255 : Génie logiciel
IFT2255 : Génie logiciel Chapitre 6 - Analyse orientée objets Section 1. Introduction à UML Julie Vachon et Houari Sahraoui 6.1. Introduction à UML 1. Vers une approche orientée objet 2. Introduction ti
Plus en détailIntroduction 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
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailWINDOWS SHAREPOINT SERVICES 2007
WINDOWS SHAREPOINT SERVICES 2007 I. TABLE DES MATIÈRES II. Présentation des «content types» (Type de contenu)... 2 III. La pratique... 4 A. Description du cas... 4 B. Création des colonnes... 6 C. Création
Plus en détail2. 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