Construire des applications «Extensibles»
|
|
- Henri Barrette
- il y a 8 ans
- Total affichages :
Transcription
1 Construire des applications «Extensibles» Extensibilité / Patterns : Builder Factory Provider Module Pipeline Etc. IoC Containers MEF / System.ComponentModel.Composition + interfaces, abstraction Chaque composant doit avoir un contrat des fonctionnalités à remplir, un couplage faible et doit pouvoir être remplacé facilement sans devoir toucher au reste du code. Exemple : un cache a pour contrats : enregistrer des valeurs et les restituer, après peu importe la manière dont cela est fait à l intérieur de la classe, il faut pouvoir changer par un autre cache qui remplira ces fonctionnalités. 1. Pattern Provider Ajouter une référence à System.Configuration L intérêt du Pattern Provider est de permettre de changer les types à charger simplement depuis le fichier de configuration.il est possible ainsi de créer ses propres implémentations et les charger sans toucher au code source de base.
2 App.config <?xml version="1.0" encoding="utf-8"?> <configuration> <configsections> <section name="onesection" type="configurationdemo.onesectionconfigurationsection,configurationdemo"/> </configsections> <onesection> <!--type pointe sur le type à créer--> <mailer name="defaultmailer" type="configurationdemo.mailer,configurationdemo" smtp="xxx.gmail.com"/> </onesection> </configuration> Section contenant une propriété pour chaque élément. // core configuration public class OneSectionConfigurationSection : ConfigurationSection [ConfigurationProperty("mailer", IsRequired = true)] public MailerElement Mailer get return (MailerElement)base["mailer"]; set base["mailer"] = value;
3 Eléments avec une propriété pour chaque attribut. // core configuration public class MailerElement : ConfigurationElement [ConfigurationProperty("name", IsRequired = true, IsKey = true)] public string Name get return (string)base["name"]; set base["name"] = value; [ConfigurationProperty("type", IsRequired = true)] public string Type get return (string)base["type"]; set base["type"] = value; [ConfigurationProperty(" ", IsRequired = true)] public string get return (string)base[" "]; set base[" "] = value; [ConfigurationProperty("smtp", IsRequired = true)] public string Smtp get return (string)base["smtp"]; set base["smtp"] = value; (Charger la section) var config = ConfigurationManager.GetSection("oneSection") as OneSectionConfigurationSection; ConfigurationFactory // core contracts public interface IConfigurationFactory IMailer GetMailer(); // get other elements... // core public class ConfigurationFactory : IConfigurationFactory private IMailer _Mailer; public ConfigurationFactory() var config = ConfigurationManager.GetSection("oneSection") as OneSectionConfigurationSection; if (config!= null) // Création de l instance du type donné dans le fichier de config
4 IMailer mailer = Activator.CreateInstance(Type.GetType(config.Mailer.Type)) as IMailer; // chargement des propriétés du type créé mailer. = config.mailer. ; mailer.smtp = config.mailer.smtp; _Mailer = mailer; public IMailer GetMailer() // retourne l instance créée return _Mailer; Manager // core contracts public interface IManager void DoSomething(); // core public class OneManager : IManager private IMailer _Mailer; public OneManager(IConfigurationFactory configurationfactory) // load providers _Mailer = configurationfactory.getmailer(); public void DoSomething() // do something with mailer _Mailer.Send(); // common public interface IMailer string get; set; string Smtp get; set; void Send(); // Providers public class Mailer : IMailer public string get; set; public string Smtp get; set; public void Send()
5 // MessageBox.Show(string.Format("0, 1", ,Smtp)); Organiser la solution <?xml version="1.0" encoding="utf-8"?> <configuration> <configsections> <section name="onesection" type="configurationdemo.core.configuration.onesectionconfigurationsection,configuratio ndemo.core"/> </configsections> <onesection> <!--type pointe sur Mailer à créer--> <mailer name="defaultmailer" type="configurationdemo.providers.mailer,configurationdemo.providers" smtp="xxx.gmail.com"/> </onesection> </configuration> 2. ConfigurationCollection <?xml version="1.0" encoding="utf-8"?> <configuration> <configsections> <section name="sectiontwo" type="configurationdemo.sectiontwoconfigurationsection,configurationdemo"/> </configsections> <sectiontwo> <Elements>
6 <add name="elementone" /> <add name="elementtwo" /> </Elements> </sectiontwo> </configuration> public class SectionTwoConfigurationSection : ConfigurationSection [ConfigurationProperty("Elements", IsDefaultCollection = false)] [ConfigurationCollection(typeof(SectionTwoElementCollection))] public SectionTwoElementCollection Elements get return (SectionTwoElementCollection)base["Elements"]; [ConfigurationCollection(typeof(SectionTwoElement))] public sealed class SectionTwoElementCollection : ConfigurationElementCollection protected override ConfigurationElement CreateNewElement() return new SectionTwoElement(); protected override object GetElementKey(ConfigurationElement element) return ((SectionTwoElement)element).Name; public class SectionTwoElement : ConfigurationElement [ConfigurationProperty("name", IsRequired = true, IsKey = true)] public string Name get return (string)base["name"]; set base["name"] = value; [ConfigurationProperty(" ", IsRequired = true)] public string get return (string)base[" "]; set base[" "] = value; var config = ConfigurationManager.GetSection("sectionTwo") as SectionTwoConfigurationSection; 3. Module + Pipeline Le module peut être chargé à partir du fichier de config.
7 On a d un côté les events De l autre des modules avec une méthode initialize dans laquelle celui-ci s abonne à un event. Events public delegate void ModuleDelegate<T>(T e); public class ProcessedEvents public ModuleDelegate<ModuleOneEventArgs> ModuleOneProcessed get; set; public ModuleDelegate<ModuleTwoEventArgs> ModuleTwoProcessed get; set; public class ModuleOneEventArgs : EventArgs public ModuleOneEventArgs() public class ModuleTwoEventArgs : CancelEventArgs public ModuleTwoEventArgs() Modules public interface IModule void Initialize(ProcessedEvents events);
8 public class ModuleOne : IModule public string Value = ""; public void Initialize(ProcessedEvents events) events.moduleoneprocessed += OnModuleOneProcessed; private void OnModuleOneProcessed(ModuleOneEventArgs e) // do something Value = "Ok"; public class ModuleTwo : IModule public void Initialize(ProcessedEvents events) events.moduletwoprocessed += OnModuleTwoProcessed; private void OnModuleTwoProcessed(ModuleTwoEventArgs e) if (MessageBox.Show("Cancel?", "Cancel", MessageBoxButton.OKCancel) == MessageBoxResult.OK) e.cancel = true; En cas d interaction avec une base de données on peut encadrer le code avec une transaction : string result = ""; bool cancel = false; // events partagés var events = new ProcessedEvents(); // modules abonnés à un event var moduleone = new ModuleOne(); moduleone.initialize(events); var moduletwo = new ModuleTwo(); moduletwo.initialize(events); using (var scope = new TransactionScope()) // event 1 if (events.moduleoneprocessed!= null) var args = new ModuleOneEventArgs(); events.moduleoneprocessed(args); result = moduleone.value; // event 2 if (events.moduletwoprocessed!= null)
9 var args = new ModuleTwoEventArgs(); events.moduletwoprocessed(args); if (args.cancel) //MessageBox.Show("Canceled"); // throw new ApplicationException(); cancel = true; if (!cancel) scope.complete(); 4. Override Consiste à créer des classes avec des méthodes virtuelles. La classe pourra être héritée facilement afin de redéfinir les méthodes. Il suffit en plus d ajouter une propriété accessible avec un test à l initialisation : public class DefaultCache protected readonly Dictionary<Type, Dictionary<string, object>> Cache = new Dictionary<Type, Dictionary<string, object>>(); public virtual void Register(Type type, string name, object instance) if (!Cache.ContainsKey(type)) Cache[type] = new Dictionary<string, object>(); if (!Cache[type].ContainsKey(name)) Cache[type][name] = instance; public class ReplacementCache : DefaultCache public override void Register(System.Type type, string name, object instance) // private DefaultCache _cache; public DefaultCache Cache get if (_cache == null) _cache = new DefaultCache(); return _cache;
10 set _cache = value; Ainsi on remplace facilement la classe de base Cache = new ReplacementCache(); 5. Mef / Composition On utilise la reflection pour récupérer les éléments exportés et les utiliser à la volée. public partial class MainWindow : Window public MainWindow() InitializeComponent(); AssemblyCatalog catalog = new AssemblyCatalog(Assembly.GetExecutingAssembly()); CompositionContainer container = new CompositionContainer(catalog); speaker = container.getexportedvalue<speaker>(); Speaker speaker; private void okbutton_click(object sender, RoutedEventArgs e) var message = speaker.dosayhello(tb.text); MessageBox.Show(message); [Export] public class Speaker [Import("SayHello")] public Func<string, string> DoSayHello; public class HelperMethods [Export("SayHello")] public string SayHello(string name) var message = string.format("hello 0!", name); return message; 0 ou 1 [Import(AllowDefault=true)] 1 Utiliser [Import] 0..* (enumerable) utiliser [ImportMany]
11 InheritedExport (héritage) [ExportMetadata] + Lazy IEnumerable<Lazy<Func<int,int>> lazymethods; ImportingConstructor (injection dans le constructor) Obtenir les exports GetExport <>(),GetExports (),GetExports<>() Obtenir une instance GetExportedValue<>(),GetExportedValueOrDefault<>(),GetExportedValues<>(), returns Lazy<T>()
Le hub d entreprise est une application de déploiement des applications mais aussi un outil de communication
Le hub d entreprise est une application de déploiement des applications mais aussi un outil de communication Les méthodes clefs pour le management des applications (C#, C++, VB) InstallationManager.FindPackagesForCurrentPublisher
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détailTutoriel: 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étailCréation d objet imbriqué sous PowerShell.
Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en dé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étailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en dé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étailSYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8
SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailHéritage presque multiple en Java (1/2)
Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailConstruire une application marketing Facebook sur la plateforme Windows Azure
Construire une application marketing Facebook sur la plateforme Windows Azure Lorsque le «Social Effect» est au rendez-vous, comment s assurer que votre application va supporter la montée en charge? Nous
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailProgrammation MacOSX / ios
Programmation MacOSX / ios Master Ingénierie Informatique 2011-2012 Jean-Baptiste.Yunès@liafa.jussieu.fr deux extensions objets de C : C++ (Stroustrup) Objective-C (Cox & Love) ajout de constructions à
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailRAPPELS 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étailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailFormation, Audit, Conseil, Développement, UX WinRT Silverlight WPF Android Windows Phone
Formation, Audit, Conseil, Développement, UX WinRT Silverlight WPF Android Windows Phone Articles et Livres Blancs gratuits à télécharger www.e-naxos.com Dot.Blog, le blog www.e-naxos.com/blog Copyright
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étailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailRafraichissement conditionné d'une page en.net
Rafraichissement conditionné d'une page en.net Test avec AJAX pour rafraichissement En utilisant AJAX, voici une possibilité de faire un rafraichissement conditionné. Nous verrons dans cet article une
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
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é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étailWEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13
WEBSERVICES Michael Fortier Master Informatique 2ème année fortier@lipn.univ-paris13.fr A308, Université de Paris 13 https ://lipn.univ-paris13.fr/ fortier/enseignement/webservices/ Sommaire 1 Rappels
Plus en détailREMBO Version 2.0. Mathrice 2004 DESCRIPTION MISE EN OEUVRE CONCLUSION. laurent.renault@u-picardie.fr
REMBO Version 2.0 Mathrice 2004 DESCRIPTION MISE EN OEUVRE CONCLUSION Description Successeur de BPBatch 3 déclinaisons Rembo Auto Deploy (déploiement massif de clients) Rembo Auto Backup (restauration
Plus en détailProjet Android (LI260) Cours 2
Projet Android (LI260) Cours 2 Nicolas Baskiotis Université Pierre et Marie Curie (UPMC) Laboratoire d Informatique de Paris 6 (LIP6) S2-2013/2014 Plan Les ressources Debug Communication entre activités
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailTp 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étailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailHébergement et configuration de services WCF. Version 1.0
Hébergement et configuration de services WCF Version 1.0 2 Configuration et Hebergement de services WCF Sommaire 1 Présentation du chapitre... 3 1.1 Présentation générale... 3 1.1.1 A qui s adresse ce
Plus en détailPackage Java.util Classe générique
Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object
Plus en détailDéveloppement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée)
Développement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée) Propriétés Description Intitulé long Formation concernée Matière Présentation Développement d un logiciel de messagerie
Plus en détailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Plus en détailComposants Logiciels. Le modèle de composant de CORBA. Plan
Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA
Plus en détailLe MSMQ. Version 1.0. Pierre-Franck Chauvet
Le MSMQ Version 1.0 Z Pierre-Franck Chauvet 2 [Le MSMQ] [Date : 10/10/09] Sommaire 1 Introduction... 3 2 Le Concept... 5 2.1 Les messages... 5 2.2 Les files d attentes... 5 2.3 WorkGroup... 7 2.4 Active
Plus en détailUne introduction à la technologie EJB (2/3)
Une introduction à la technologie EJB (2/3) 1 Les singletons des EJB 3.1 1.1 Synchronisation gérée manuellement Depuis la version 3.1, des EJB Statless à instance unique sont maintenant disponibles : ce
Plus en détailApache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011
Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG 07.11.2011 1 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB
Plus en détailUne 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étailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
Plus en détailInterfaces graphiques avec l API Swing
Interfaces graphiques avec l API Swing Les Swing Les classes graphiques Swing dérivent de la classe JComponent, qui hérite ellemême de la classe AWT (Abstract Window Toolkit). Tous les composants Swing
Plus en détail.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é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étailDéveloppement Logiciel
Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles
Plus en détailDéploiement et monitoring
1 Déploiement et monitoring Déploiement et monitoring Sommaire Déploiement et monitoring... 1 1 Introduction... 2 2 Configuration de IIS pour l environnement ASP.NET... 2 2.1 Activer IIS... 2 2.2 Prise
Plus en détailDéfinition des Webservices Ordre de paiement par email. Version 1.0
Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document
Plus en détailChapitre 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],
Plus en détailUn ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Plus en détailA DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT
DOCUMENTATION CAS A DESTINATION DES SERVICES TIERS Titre descriptif du document Référence du document REFO-DT-ENTV2-ServeurCAS-v1.2.docx Nom du fichier REFO-DT-ENTV2-ServeurCAS-v1.2.docx Version du document
Plus en détail[APPLICATON REPARTIE DE VENTE AUX ENCHERES]
2012 Polytech Nice- Sophia El Hajji Khalil Yousfi Hichem SI4 - Log [APPLICATON REPARTIE DE VENTE AUX ENCHERES] Sommaire Architecture de l application... 3 Le Serveur... 3 Le Client... 4 Passage en CORBA...
Plus en détailTD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting
IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances
Plus en détailWebParts. Version 1.0
WebParts Version 1.0 Z 2 WebPart 06/05/09 Sommaire 1 Introduction... 3 2 Le développement d une WebPart... 4 2.1 Les outils de développement... 4 2.2 WebPart Page... 4 2.3 Création d une WebPart... 4 3
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailLicence 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étailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailASP.NET 2.0, C#, Spring.Net et NHibernate
Construction d'une application à trois couches avec ASP.NET 0, C#, Spring.Net et NHibernate serge.tahe at istia.univ-angers.fr, juin 00 /30 Introduction Nous souhaitons écrire une application.net permettant
Plus en détailJADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.
: Java Agent DEvelopment framework Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.fr Introduction à la plateforme JADE 1) Modèle d agent 2) Services 3) Norme FIPA
Plus en détailIntroduction à la programmation concurrente
Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailProgrammation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13
Programmation Réseau Sécurité Java Jean-Baptiste.Yunes@univ-paris-diderot.fr UFR Informatique 2012-2013 Java Sécurité? différentes sécurités disponibles et contrôlables intégrité contrôle d accès signature/authentification/cryptographie
Plus en détailLangage 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étailLa base de données XML exist. A. Belaïd
La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques
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étailUrbanisation des SI Conduite du changement IT 20/03/09. Patrick CHAMBET http://www.chambet.com
Urbanisation des SI Conduite du changement IT 20/03/09 Sécuriser ses Web Services Patrick CHAMBET http://www.chambet.com Bouygues Telecom Direction Gouvernance, Outils et Architecture / Sécurité du SI
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailFlex. Lire les données de manière contrôlée. Programmation Flex 4 Aurélien VANNIEUWENHUYZE
Flex Lire les données de manière contrôlée 1 Plan Lier les données Stocker les données Valider les données 2 Gérer des données Lier des données La notion de DataBinding est l une des plus importantes du
Plus en détailProgrammation par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailPaginer les données côté serveur, mettre en cache côté client
Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule
Plus en détailTutoriel d installation de Hibernate avec Eclipse
Tutoriel d installation de Hibernate avec Eclipse Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création
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étail27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)
Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)
Plus en détailGestion du cache dans les applications ASP.NET
Gestion du cache dans les applications ASP.NET Version 1.0 James RAVAILLE http://blogs.dotnet france.com/jamesr 2 Gestion du cache dans les applications ASP.NET v 1.0 03/01/09 Sommaire 1 Introduction...
Plus en détailPage 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>
Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances
Plus en détail7 Développement d une application de MapReduce
7 Développement d une application de MapReduce Ecrire un programme d Hadoop demande un processus : écrire une fonction map, une fonction reduce et tester localement. Ecrire ensuite un programme pour lancer
Plus en détailOpen Source Job Scheduler. Installation(s)
Open Source Job Scheduler Installation(s) Installations Standard Configuration Superviseur Agent SOS-Paris 2 Pré-requis o Base de données o MySQL, MSACCESS, Oracle o JDBC ou ODBC o Connecteurs o Mysql
Plus en détailRapport 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étailINITIATION AU LANGAGE JAVA
INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal
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étailTypes d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles
Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce
Plus en détailJava Aspect Components (JAC) http://jac.objectweb.org
Java Aspect Components (JAC) JAC http://jac.objectweb.org 2 Lionel Seinturier Lionel.Seinturier@lip6.fr Université Pierre & Marie Curie 23/2/06 Un framework de programmation par aspect pour Java Projet
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étailLMI 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étailPROJET AZURE (par Florent Picard, A2011)
PROJET AZURE (par Florent Picard, A2011) Remarques générales: exécuter toutes les applications en mode Administrateur; tous les logiciels sont gratuits 1 Mettre à jour l'ordinateur (Windows 7, 64 bits)
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détail1. Installation d'un serveur d'application JBoss:
EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download
Plus en détailBases de données et fournisseurs de contenu
8 Bases de données et fournisseurs de contenu Au sommaire de ce chapitre : Créer des bases de données et utiliser SQLite Utiliser les fournisseurs de contenu, les curseurs et les content values pour stocker,
Plus en détailUtilisation 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étailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailThreads. 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étailTP 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
Plus en détailDéveloppement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com
Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailLes processus métiers : concepts, modèles et systèmes
Les processus métiers : concepts, modèles et systèmes Organisation du cours Concepts et notations Modélisation des processus Systèmes de gestion de processus Processus transactionnels Découverte de processus
Plus en détailChapitre 1 Windows Server 2008 11
Chapitre 1 Windows Server 2008 11 1.1. Les fondations du système... 15 1.2. La virtualisation... 16 1.3. La sécurité... 18 1.4. Le Web... 20 1.5. Fonctionnalité disponible dans Windows Server 2008... 21
Plus en détailSupervision et infrastructure - Accès aux applications JAVA. Document FAQ. Page: 1 / 9 Dernière mise à jour: 15/04/12 16:14
Document FAQ Supervision et infrastructure - Accès aux EXP Page: 1 / 9 Table des matières Introduction... 3 Démarrage de la console JMX...4 I.Généralités... 4 II.WebLogic... 5 III.WebSphere... 6 IV.JBoss...
Plus en détail