Injection de d©pendances

  • View
    833

  • Download
    1

Embed Size (px)

DESCRIPTION

Injections de dépendances pour Flex et AS3

Text of Injection de d©pendances

  • 1. Injectionde dpendance Mathurin BODY TTFx Breizh User Group 1
  • 2. Les dpendances En programmation orient objet, des dpendances existent entre les classes du modle MovieLister FileMovieFinder Array moviesDirectedBy(String d) Array findAll() TTFx Breizh User Group 2
  • 3. Dpendances codes en dur MovieLister FileMovieFinder create List moviesDirectedBy() List findAll()SimpleCouplage fort avec une implmentation spcifiquePas de rutilisation possiblePas facile tester TTFx Breizh User Group 3
  • 4. Injection de dpendance Couplage lche par interface Dlgue un composant tiers la rsolution de la dpendance en passant la bonne implmentationAssembleur MovieLister MovieFinder create Array moviesDirectedBy() Array findAll() FileMovieFinder create Array findAll() Inversion de contrle Principe Hollywood : Dont call us, well call you ! TTFx Breizh User Group 4
  • 5. 3 types dinjection de dpendances Injection par constructeur Injection par setter Injection par interface (ou mthode) TTFx Breizh User Group 5
  • 6. 3 faons dinjecter une dpendance Programmatiquement Par configuration xml (ou mxml) TTFx Breizh User Group 6
  • 7. 3 faons dinjecter une dpendance Par annotation (type ou id) TTFx Breizh User Group 7
  • 8. Les frameworks Flex de DI (ou IoC) SwizFramework Spring Actionscript (prana) Parsley / spicelib Mate SmartyPants (inspired by Guice) Robotlegs TTFx Breizh User Group 8
  • 9. Conclusion Couplage faible (limit linterface) Rutilisation de composants Testabilit (injection de bouchons ou mocks) Apprentissage du framework ou conteneurMartin Fowler:http://martinfowler.com/articles/injection.html TTFx Breizh User Group 9