Home
Cours Composant 1. Introduction - Master informatique
Contents
1. bind service MyService provides component 1 component Client Provider amp s MyService Client SE bind service MyService uns 0 use funct2 use if service null throw new Error Missing required service else service functl service funct2 2005 2008 Fr d ric Peschanski Design patterns pour les composants gt gn P P Services requis fournis Mod le de composition Composition d une architecture Client client new Client Provider provider new Provider client bind provider client use Ea MyService client Client provides provider Provider 2005 2008 Fr d ric Peschanski Cours Composant1 Introduction Noti omp t log Design patterns pour les compos D couple structurellement les fournisseurs et clients de service D pendances explicit es dans les deux sens client et fournisseur M taphore du service et client fournisseur cf conception par contrat Pas de d couplage du contr le le client g re la liaison Pattern un peu lt lourd gt beaucoup d interfaces en Java mode actuelle code java simple mais XML pour d crire les liaisons cf plugins eclipse 2005 2008 Fr d ric Peschanski Conclusion Questions 05 2008 Fr
2. UPMC Paris Universitas Master Informatique S TL 2005 2008 Fr d ric Peschanski UPMC Paris Universitas 13 f vrier 2008 2005 2008 Fr d ric Peschanski Articulation entre e Technologies du moment e Java avanc XML sch mas OSGi Plugins Eclipse etc e M thodes scientifiques d ing nierie e Sp cifications alg briques e Conception par contrat e Logique de Hoare 2005 2008 Fr d ric Peschanski Introduction Constat e Conception logicielle cr ation ou construction e Informaticiens vs non informaticiens ex UML e M thodes cadr es mais empiriques Glissement progressif vers les outils d aide au d veloppement bas s sur des techniques formelles ex Spec e Rappel le m tier d ing nieur ex ing nieur en BTP 9 La s ret et la s curit du logiciel notion plus g n rale de En Composant nous nous int ressons aux m thodes formelles dites l g res lightweight formal methods un bon compromis 2005 2008 Fr d ric Peschanski pour Connaissances techniques e Ma trise des encapsulation relations h ritage designs patterns etc e Bonne pratique de language de support du cours Familiarit avec les technologies notamment XSchema e Plus fondamentalement Manipulation des structures discr tes ensembles relations fonctions etc Revoir ses cours de pour la logique de Hoare
3. 2005 2008 Fr d ric Peschanski 9 Cours e Concepts fondamentaux e M thodologie e Cas particuliers JavaBeans OSGi et Plugins Eclipse e Travaux dirig s e Illustration des concepts e Mise en ceuvre de la m thodologie e Travaux sur machine encadr s e Acquisition de technologies r centes qui illustre le concept de e JavaBeans composants contractualis s Tamago OSGi Plugins Eclipse Web services 2005 2008 Fr d ric Peschanski Introduction Pr paration e Lecture d un document de type Tutoriel e Important les cours et TD ne pr parent pas en g n ral aux TME Notamment concernant les technologies employ es Q S ance de TME exercice de lt rapidit gt e la fin des 2 heures relev des TME formal jar normalis Remarque pr paration n cessaire point 1 Q Soumission version 2 e Remarque en g n ral pas le temps de finir en 2 heures e Possibilit de soumettre un TME compl t envoy au plus tard la veille de la prochaine s ance 2005 2008 Fr d ric Peschanski In Notion de compos Important notion difficilement r ductible une d finition exercice d finition d objet gt Quelques d finitions propos es e C Szyperski Une unit de composition avec des interfaces sp cifi es contractuellement et seulement des d pendances vis vis de son contexte Un composant logiciel doit pouvoir tre d ploy ind pendamment et est l objet de compositi
4. d ric Peschanski Cours Composant1 Introducti
5. patterns pour les composants Qualit logicielle sp cifications alg briques Conception par contrat Conception par contrat 11 Interlude 1 d ploiement avec OSGI Logique de Hoare I Logique de Hoare 11 Interlude 2 plugins Eclipse Concurrence et coordination 9 9 Q Q Q Q Q Q Q 9 Interlude 3 services Web et processus m tiers 2005 2008 Fr d ric Peschanski Design patterns pour le pour la conception et l impl mentation de 9 sp cifications alg briques cours 2 9 par contrat partir des sp cifications cours 3 et 4 9 garantie vis vis des contrats Conception par contrat v rification lt l g re gt en ligne self testing e Logique de Hoare v rification lourde priori cours 6 et 7 2005 2008 Fr d ric Peschanski Notion de composant Design patterns pour les composants Conclusion Patterns des Javabeans Pattern lt Observable properties gt Pattern lt Event based communication connector gt Pattern lt Require Provide connector gt 2005 2008 Fr d ric Peschanski Design patterns pour les composants Un composant doit tre capable d expliciter ce que l on peut observer sur son tat interne Un composant doit tre galement configurable Sinon on ne peut rien sp cifier l avance sur l tat et rien n est v rifiable ensuite Pattern Observable properties Javabeans Propri t o
6. bservable d finie par e un e un e un lecture seule lecture criture criture seule configuration 2005 2008 Notion de co Design patterns pour le Exemple JavaBean Propri t de nom de type en lecture criture Access read public get O Access write public void set value component Component 2 hidden attributes getPropl Typel getProp2 Type2 setProp2 p2 Type2 void setProp3 p3 Type3 void 2005 2008 Fr d ric Peschanski Notion de comp Design patterns pour les composants Conclusion public class Interrupteur public enum ON OFF State private boolean internalState public Interrupteur internalState false Propri t s public State get 01 if internalState true return ON else return OFF Fonctionalit s public boolean isOn return state true public void switch state state Autres exemples composants Swing 2005 2008 Fr d ric Peschanski Notion de compos Design patterns pour les com Conclusion Observabilit concept fondamental plus qu il n y para t e Mise en ceuvre simple e En lui m me le pattern ne fait pas grand chose il faut des outils pour l exploiter e Difficult s cach es types observables 2005 2008 Fr d ric Peschanski Un composant doit expliciter ses d pendances externes
7. notion de Javabeans mode de con ication venementiel e Composant et ou d v nements e objet passif et immuable Constituants Classes types d v nements Interfaces d coute listener e m thodes de r action d pend de l v nement 2005 2008 e composan Design patterns pour les composants java util EventObject EventObject source Object getSource Object event source MyActionEvent MySource 2 listeners ArrayList lt MyActionListener gt addMyActionListener I MyActionListener void MyActionEvent datal Typel data2 Type2 amp send event MyActionEvent void getDatal Typel getData2 Type2 interface send MyActionEvent event java util EventListener Zon for MyActionListener 1 listeners Lactionl event 1 interface MyActionListener actionl event MyActionEvent Typel action2 event MyActionEvent Type2 listener MyReceiver actionl event MyActionEvent Typel actionZ event My ActionEvent Type2 008 Fr d ric Peschansk Notion de compos Design patterns pour les com Conclusion Pr alabe les deux couteurs sont enregistr s aupr s de la source source addMyActionListener dest1 source addMyActionListener dest2 destl Recei
8. on par des tiers e B Meyer Un composant logiciel est un l ment logiciel unit de modularit qui satisfait les trois conditions suivantes il peut tre utilis par d autres l ments logiciels ses clients il poss de un mode d emploi officiel qui est suffisant pour que ses clients puissent l utiliser il n est pas li un client unique gt 2005 2008 Fr d ric Peschanski Notion de composant log gn p ns pour les Conception et impl mentation par assemblage statique ou dynamique de briques logicielles Sp cification du mode d emploi associ un l ment logiciel ce que fait le logiciel ind pendamment de comment il le fait Sp cification entre le fournisseur du logiciel qui con oit et impl mente les composants et ses clients qui utilise et ou assemble les composants Conception du logiciel en int grant en amont la sp cification explicite des d pendances externes Conception et sp cification s par e de l architecture du logiciel ind pendamment de sa conception et impl mentation interne De la conception impl mentation l utilisation ex cution 2005 2008 Fr d ric Peschanski Cours CPS vers le composant logiciel de confiance e B Meyer Un trustable component est un lement logiciel r utilisable qui sp cifie et garantit des propri t s li es la qualit Crit re de qualit Propri t d un l ment logiciel tre employ s dan
9. s plusieurs contextes diff rents potentiellement pas des clients vari s Important ce crit re ne se d cr te pas on le constate posteriori Document plus ou moins formel qui d crit pr cis ment ce que l on attend du logiciel tant en termes de conception que d impl mentation cf cours 2 2005 2008 Fr d ric Peschanski Design patterns pour les composants Conclusion Les interfaces sp cifient clairement ce que fait le composant e Interface interne fonctionnalit s du composant e Interface externe sp cification du contexte d utilisation d pendances explicites le composant a vocation tre avec d autres composants e Garanties sur les impl mentations Relie la sp cification et ses possibles impl mentations e Approche l g re conception par contrat e Approche lourde logique de Hoare e Unit de d ploiement packaging versioning chargement cycle de vie etc 2005 2008 Fr d ric Peschanski Les objets sont des composants minimaux e Encapsulation cycle de vie minimal cr ation utilisation destruction e Interface interne minimale classe et ou interface Mais il manque entre autre des sp cifications plus lt s mantiques gt e l explicitation du contexte d utilisation interface externe e les garanties sur la qualit exception conception par contrat e la probl matique du d ploiement 2005 2008 Fr d ric Peschanski Designs
10. ver action ft send event source MySource listeners dest1 dest2 acon event dest2 Receiver 2005 2008 Fr d ric Peschanski Noti omp t log Design patterns pour les compos D couple structurellement les metteurs et r cepteurs d v nements Permet la communication lt 1 metteur vers N r cepteurs gt Explicite la d pendance du r cepteur interface d coute e Ev nements multiples et s lection par typage e Branchements dynamiques si n cessaires e Pas de d couplage du contr le la source doit contr ler la communication e D pendances explicit es seulement dans un sens le r cepteur est identifi comme tel mais pas la source e Pattern un peu lourd 2005 2008 Fr d ric Peschanski Design patterns pour jte composants Conclusion Un composant doit expliciter ses d pendances externes bis Description s par es des fonctionalit s impl ment es par les composants notion d ou de 2 otivation Ne pas confondre interface de composant et interface java Un regroupe des fonctionnalit s e Client du service interface de liaison e Fournisseur de service impl mente le service 2005 2008 Fr d ric Peschanski comp Design patterns pour les composants Conc service MyService functl funct2 binder RequireMyService meri
Download Pdf Manuals
Related Search
Related Contents
Foster S4000 PONTOS E BIBLIOGRAFIAS DO CONCURSO PARA Elleci Classic 60 S550-SFW1U User`s Manual JVC XM-R70 User's Manual - General Heater Chapter 1 Attendant Console Introduction Copyright © All rights reserved.
Failed to retrieve file