SlideShare ist ein Scribd-Unternehmen logo
DI == IoC ?
 Eine Begriffsbestimmung

Free Software Foundation Europe



               Autor
           Thomas Schubert
      https://wiki.fsfe.org/Fellows/FunThomas424242
Dependency Injection


                   Achso Du meinst


Inversion of Control


02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
2/4       (http://www.gnu.org/copyleft/fdl.html)
Dependency Injection



         Nein      Achso Du meinst


Inversion of Control


02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
3/4       (http://www.gnu.org/copyleft/fdl.html)
Dependency Injection
     Ein Objekt A ist abhängig von einem
      Objekt B




02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
4/4       (http://www.gnu.org/copyleft/fdl.html)
Dependency Injection
     Ein Objekt A ist abhängig von einem
      Objekt B
     Objekt A erzeugt selbst keine Instanz
      von Objekt B sondern bekommt die
      Instanz von außen injiziert




02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
5/4       (http://www.gnu.org/copyleft/fdl.html)
Dependency Injection
     Ein Objekt A ist abhängig von einem
      Objekt B
     Objekt A erzeugt selbst keine Instanz
      von Objekt B sondern bekommt die
      Instanz von außen injiziert
     Injektion ist möglich über Reflection
      oder über Setter Methoden von A




02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
6/4       (http://www.gnu.org/copyleft/fdl.html)
Dependency Injection
     Ein Objekt A ist abhängig von einem
      Objekt B
     Objekt A erzeugt selbst keine Instanz
      von Objekt B sondern bekommt die
      Instanz von außen injiziert
     Injektion ist möglich über Reflection
      oder über Setter Methoden von A
     Erzeugung und Injektion der Instanz B
      müssen nach der Erzeugung von A aber
      vor der Benutzung von B durch A
      stattfinden.
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
7/4       (http://www.gnu.org/copyleft/fdl.html)
Typischer Steuerfluss
                          A ist von B abhängig



  Objekt A
                                       A hängt von B ab
                                       A besitzt die
                                        Steuerung



                      Objekt B

Übernimmt Steuerung

  02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
  License
  8/4       (http://www.gnu.org/copyleft/fdl.html)
Typischer Steuerfluss
                          A ist von B abhängig



  Objekt A
                                       A hängt von B ab
                                       A besitzt die
                                        Steuerung
       A ruft B auf
      (Steuerfluss)                    A ruft B auf

                      Objekt B

Übernimmt Steuerung

  02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
  License
  9/4       (http://www.gnu.org/copyleft/fdl.html)
Typischer Steuerfluss
                        A ist von B abhängig



Objekt A
                                     A hängt von B ab
                                     A hat B aufgerufen

    A ruft B auf
                                     B übernimmt die
   (Steuerfluss)                      Steuerung

                   Objekt B


                                Übernimmt Steuerung
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
10/4         (http://www.gnu.org/copyleft/fdl.html)
Typischer Steuerfluss
                          A ist von B abhängig



  Objekt A
                                       Nach Abarbeitung
                                        gibt B die
                                        Steuerung an A
                                        zurück
       A ruft B auf
      (Steuerfluss)


                      Objekt B

Übernimmt Steuerung

  02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
  License
  11/4         (http://www.gnu.org/copyleft/fdl.html)
Typischer Steuerfluss
                        A ist von B abhängig



Objekt A                          Zusammenfassung
                                     A hängt von B ab

    A ruft B auf
                                     Steuerfluss und
   (Steuerfluss)                      Abhängikeitsgraph
                                      zeigen in die
                   Objekt B           gleiche Richtung




02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
12/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                        A ist von B abhängig



Objekt A
                                     A hängt von B ab
                                     B besitzt die
                                      Steuerung



                Objekt B


                                Übernimmt Steuerung
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
13/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                        A ist von B abhängig



Objekt A
                                     A hängt von B ab
                                     B besitzt die
                                      Steuerung
    B ruft A auf
   (Steuerfluss)                     B ruft A auf

                   Objekt B


                                Übernimmt Steuerung
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
14/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                          A ist von B abhängig



  Objekt A
                                       A übernimmt die
                                        Steuerung


       B ruft A auf
      (Steuerfluss)


                      Objekt B

Übernimmt Steuerung

  02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
  License
  15/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                        A ist von B abhängig



Objekt A
                                     Nach der
                                      Abarbeitung gibt A
                                      die Steuerung an B
                                      zurück
    B ruft A auf
   (Steuerfluss)


                   Objekt B


                                Übernimmt Steuerung
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
16/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                        A ist von B abhängig



Objekt A                          Zusammenfassung
                                     A hängt von B ab

    B ruft A auf
                                     Steuerfluss und
   (Steuerfluss)                      Abhängigkeitsgraph
                                      sind entgengesetzt
                   Objekt B



02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
17/4         (http://www.gnu.org/copyleft/fdl.html)
Inverser Steuerfluss
                        A ist von B abhängig



Objekt A                          Zusammenfassung
                                     A hängt von B ab

    B ruft A auf
                                     Steuerfluss und
   (Steuerfluss)                      Abhängigkeitsgraph
                                      sind entgengesetzt
                   Objekt B

Beispiel: B is ein Eclipse Plugin
         und A eine Plugin Extension
02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
18/4         (http://www.gnu.org/copyleft/fdl.html)
IoC == Inverser Steuerfluss
     IoC also Inversion of Control bedeutet
      übersetzt Umkehrung des Steuerflusses
      also Inverser Steuerfluss.
     Trotzdem wird das was auf den
      vorangegangenen Folien zu sehen war
      nicht als IoC bezeichnet.
     Als IoC bezeichnet man gewöhnlich
      Container basierte Systeme welche DI
      nutzen. Der Container übernimmt dabei
      die Initialisierung und Steuerung.


02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
19/4         (http://www.gnu.org/copyleft/fdl.html)
IoC == Inverser Steuerfluss
     Doch nur weil jetzt der Container die
      Steuerung übernimmt bedeutet dies
      nicht, dass sich der Steuerfluss
      umkehrt. Sonst wäre IoC bereits im
      J2EE Container zu finden gewesen.
     Diese falsche Begriffszuordnung ist
      historisch gewachsener Schlampigkeit
      anzurechnen. Begonnen beim Pico
      Container und immer noch nicht beendet
      beim Spring Framework.



02.06.2012   Rechtlich geschützt durch die GNU Free Documentation
License
20/4         (http://www.gnu.org/copyleft/fdl.html)
Vielen Dank

                                    für

                        Ihr Interesse
Photos/Grafiken:   ©Thomas Schubert freigegeben zur allgemeinen Verwendung
Ausnahmen:         keine

Schriftsatz:       Courier New
Ersatz Font:       Arial erzeugt durch GoogleDrive, Open Office, Libre Office




  02.06.2012       Rechtlich geschützt durch die GNU Free Documentation
  License
  21/4             (http://www.gnu.org/copyleft/fdl.html)

Weitere ähnliche Inhalte

Andere mochten auch

Bayerische Staatsbibliothek: mobiler OPACplus
Bayerische Staatsbibliothek: mobiler OPACplusBayerische Staatsbibliothek: mobiler OPACplus
Bayerische Staatsbibliothek: mobiler OPACplus
Andreas Neumann
 
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
butest
 
Comunicacion: navegadores, buscadores y metabuscadores
Comunicacion: navegadores, buscadores y metabuscadoresComunicacion: navegadores, buscadores y metabuscadores
Comunicacion: navegadores, buscadores y metabuscadores
martithaliz
 
14. guia sistemas switch y router (1)
14. guia sistemas switch y router (1)14. guia sistemas switch y router (1)
14. guia sistemas switch y router (1)
Katerine Mendosa
 
Energieszenarien 2010
Energieszenarien 2010Energieszenarien 2010
Energieszenarien 2010
metropolsolar
 
Serie aprender a investigar 1
Serie aprender a investigar 1Serie aprender a investigar 1
Serie aprender a investigar 1
JCASTINI
 
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
metropolsolar
 
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
swissestetix
 
Clasificados a la etapa macro regional
Clasificados a la etapa macro regionalClasificados a la etapa macro regional
Clasificados a la etapa macro regional
Harry Paul Ledesma Crisostomo
 
Taller+medios+de+transmisíon++no+guiados kate
Taller+medios+de+transmisíon++no+guiados kateTaller+medios+de+transmisíon++no+guiados kate
Taller+medios+de+transmisíon++no+guiados kate
Katerine Mendosa
 
Articulo cientifico
Articulo cientifico Articulo cientifico
Articulo cientifico
Arlen Ricardo Contreras Pulido
 
Tyler Glenn1
Tyler Glenn1Tyler Glenn1
Tyler Glenn1
juljayty
 
Taller
TallerTaller
Taller
cristian567
 
Die Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit GimpDie Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit Gimp
saxoprint
 
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
Steven Broschart
 
Bm wi eckpunkte-papier-eeg
Bm wi eckpunkte-papier-eegBm wi eckpunkte-papier-eeg
Bm wi eckpunkte-papier-eeg
metropolsolar
 

Andere mochten auch (18)

Bayerische Staatsbibliothek: mobiler OPACplus
Bayerische Staatsbibliothek: mobiler OPACplusBayerische Staatsbibliothek: mobiler OPACplus
Bayerische Staatsbibliothek: mobiler OPACplus
 
Binder1
Binder1Binder1
Binder1
 
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
Praktikumsbericht als docx - HTW Berlin - Hochschule für Technik ...
 
BannaschPEB180709
BannaschPEB180709BannaschPEB180709
BannaschPEB180709
 
Comunicacion: navegadores, buscadores y metabuscadores
Comunicacion: navegadores, buscadores y metabuscadoresComunicacion: navegadores, buscadores y metabuscadores
Comunicacion: navegadores, buscadores y metabuscadores
 
14. guia sistemas switch y router (1)
14. guia sistemas switch y router (1)14. guia sistemas switch y router (1)
14. guia sistemas switch y router (1)
 
Energieszenarien 2010
Energieszenarien 2010Energieszenarien 2010
Energieszenarien 2010
 
Serie aprender a investigar 1
Serie aprender a investigar 1Serie aprender a investigar 1
Serie aprender a investigar 1
 
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
Vortrag Föhrenbach - Forum 11 - Bildung und Qualifizierung - VOLLER ENERGIE 2013
 
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
Anti-Aging: Der Zahn der Zeit nagt beständig (Kurzversion)
 
Clasificados a la etapa macro regional
Clasificados a la etapa macro regionalClasificados a la etapa macro regional
Clasificados a la etapa macro regional
 
Taller+medios+de+transmisíon++no+guiados kate
Taller+medios+de+transmisíon++no+guiados kateTaller+medios+de+transmisíon++no+guiados kate
Taller+medios+de+transmisíon++no+guiados kate
 
Articulo cientifico
Articulo cientifico Articulo cientifico
Articulo cientifico
 
Tyler Glenn1
Tyler Glenn1Tyler Glenn1
Tyler Glenn1
 
Taller
TallerTaller
Taller
 
Die Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit GimpDie Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit Gimp
 
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
SEO-Vortrag auf der Sales & Marketing 2010 (cyberpromote GmbH)
 
Bm wi eckpunkte-papier-eeg
Bm wi eckpunkte-papier-eegBm wi eckpunkte-papier-eeg
Bm wi eckpunkte-papier-eeg
 

Mehr von FunThomas424242

Erstellung Freier Dokumente
Erstellung Freier DokumenteErstellung Freier Dokumente
Erstellung Freier Dokumente
FunThomas424242
 
FSFE Präsentationsvorlage v003 (Cousine)
FSFE Präsentationsvorlage v003 (Cousine)FSFE Präsentationsvorlage v003 (Cousine)
FSFE Präsentationsvorlage v003 (Cousine)
FunThomas424242
 
FSFE Präsentationsvorlage v002 (Arial)
FSFE Präsentationsvorlage v002 (Arial)FSFE Präsentationsvorlage v002 (Arial)
FSFE Präsentationsvorlage v002 (Arial)
FunThomas424242
 
Japanisch Kurzüberblick
Japanisch KurzüberblickJapanisch Kurzüberblick
Japanisch Kurzüberblick
FunThomas424242
 
PiUG Präsentationsvorlage V004
PiUG Präsentationsvorlage V004PiUG Präsentationsvorlage V004
PiUG Präsentationsvorlage V004
FunThomas424242
 
PiUG Präsentationsvorlage V003
PiUG Präsentationsvorlage V003PiUG Präsentationsvorlage V003
PiUG Präsentationsvorlage V003
FunThomas424242
 
Einsteiger Workshop
Einsteiger WorkshopEinsteiger Workshop
Einsteiger Workshop
FunThomas424242
 
Einführung Maven
Einführung MavenEinführung Maven
Einführung Maven
FunThomas424242
 

Mehr von FunThomas424242 (8)

Erstellung Freier Dokumente
Erstellung Freier DokumenteErstellung Freier Dokumente
Erstellung Freier Dokumente
 
FSFE Präsentationsvorlage v003 (Cousine)
FSFE Präsentationsvorlage v003 (Cousine)FSFE Präsentationsvorlage v003 (Cousine)
FSFE Präsentationsvorlage v003 (Cousine)
 
FSFE Präsentationsvorlage v002 (Arial)
FSFE Präsentationsvorlage v002 (Arial)FSFE Präsentationsvorlage v002 (Arial)
FSFE Präsentationsvorlage v002 (Arial)
 
Japanisch Kurzüberblick
Japanisch KurzüberblickJapanisch Kurzüberblick
Japanisch Kurzüberblick
 
PiUG Präsentationsvorlage V004
PiUG Präsentationsvorlage V004PiUG Präsentationsvorlage V004
PiUG Präsentationsvorlage V004
 
PiUG Präsentationsvorlage V003
PiUG Präsentationsvorlage V003PiUG Präsentationsvorlage V003
PiUG Präsentationsvorlage V003
 
Einsteiger Workshop
Einsteiger WorkshopEinsteiger Workshop
Einsteiger Workshop
 
Einführung Maven
Einführung MavenEinführung Maven
Einführung Maven
 

Kürzlich hochgeladen

Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
kylerkelson6767
 
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
Wolfgang Geiler
 
Psychologie an der Universität Duisburg-Essen
Psychologie an der Universität Duisburg-EssenPsychologie an der Universität Duisburg-Essen
Psychologie an der Universität Duisburg-Essen
Team Studienorientierung (Universität Duisburg-Essen)
 
Microsoft Roadshow Stuttgart AI-Presentation Wurzer
Microsoft Roadshow Stuttgart AI-Presentation WurzerMicrosoft Roadshow Stuttgart AI-Presentation Wurzer
Microsoft Roadshow Stuttgart AI-Presentation Wurzer
MIPLM
 
Medizin an der Universität Duisburg - Essen
Medizin an der Universität Duisburg - EssenMedizin an der Universität Duisburg - Essen
Medizin an der Universität Duisburg - Essen
Team Studienorientierung (Universität Duisburg-Essen)
 
Das Biologiestudium an der Universität Duisburg-Essen
Das Biologiestudium an der Universität Duisburg-EssenDas Biologiestudium an der Universität Duisburg-Essen
Das Biologiestudium an der Universität Duisburg-Essen
Team Studienorientierung (Universität Duisburg-Essen)
 
Lehramt an der Universität Duisburg Essen
Lehramt an der Universität Duisburg EssenLehramt an der Universität Duisburg Essen
Lehramt an der Universität Duisburg Essen
Team Studienorientierung (Universität Duisburg-Essen)
 

Kürzlich hochgeladen (7)

Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
Abortion Pills In Dubai☎️ "+971)555095267 " to buy abortion pills in Dubai, A...
 
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
Klimaabkühlung durch die CO2 Kanone, Konvektionskreislauf,Klimaabkühlung stat...
 
Psychologie an der Universität Duisburg-Essen
Psychologie an der Universität Duisburg-EssenPsychologie an der Universität Duisburg-Essen
Psychologie an der Universität Duisburg-Essen
 
Microsoft Roadshow Stuttgart AI-Presentation Wurzer
Microsoft Roadshow Stuttgart AI-Presentation WurzerMicrosoft Roadshow Stuttgart AI-Presentation Wurzer
Microsoft Roadshow Stuttgart AI-Presentation Wurzer
 
Medizin an der Universität Duisburg - Essen
Medizin an der Universität Duisburg - EssenMedizin an der Universität Duisburg - Essen
Medizin an der Universität Duisburg - Essen
 
Das Biologiestudium an der Universität Duisburg-Essen
Das Biologiestudium an der Universität Duisburg-EssenDas Biologiestudium an der Universität Duisburg-Essen
Das Biologiestudium an der Universität Duisburg-Essen
 
Lehramt an der Universität Duisburg Essen
Lehramt an der Universität Duisburg EssenLehramt an der Universität Duisburg Essen
Lehramt an der Universität Duisburg Essen
 

DI == IoC ?

  • 1. DI == IoC ? Eine Begriffsbestimmung Free Software Foundation Europe Autor Thomas Schubert https://wiki.fsfe.org/Fellows/FunThomas424242
  • 2. Dependency Injection Achso Du meinst Inversion of Control 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 2/4 (http://www.gnu.org/copyleft/fdl.html)
  • 3. Dependency Injection Nein Achso Du meinst Inversion of Control 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 3/4 (http://www.gnu.org/copyleft/fdl.html)
  • 4. Dependency Injection  Ein Objekt A ist abhängig von einem Objekt B 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 4/4 (http://www.gnu.org/copyleft/fdl.html)
  • 5. Dependency Injection  Ein Objekt A ist abhängig von einem Objekt B  Objekt A erzeugt selbst keine Instanz von Objekt B sondern bekommt die Instanz von außen injiziert 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 5/4 (http://www.gnu.org/copyleft/fdl.html)
  • 6. Dependency Injection  Ein Objekt A ist abhängig von einem Objekt B  Objekt A erzeugt selbst keine Instanz von Objekt B sondern bekommt die Instanz von außen injiziert  Injektion ist möglich über Reflection oder über Setter Methoden von A 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 6/4 (http://www.gnu.org/copyleft/fdl.html)
  • 7. Dependency Injection  Ein Objekt A ist abhängig von einem Objekt B  Objekt A erzeugt selbst keine Instanz von Objekt B sondern bekommt die Instanz von außen injiziert  Injektion ist möglich über Reflection oder über Setter Methoden von A  Erzeugung und Injektion der Instanz B müssen nach der Erzeugung von A aber vor der Benutzung von B durch A stattfinden. 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 7/4 (http://www.gnu.org/copyleft/fdl.html)
  • 8. Typischer Steuerfluss A ist von B abhängig Objekt A  A hängt von B ab  A besitzt die Steuerung Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 8/4 (http://www.gnu.org/copyleft/fdl.html)
  • 9. Typischer Steuerfluss A ist von B abhängig Objekt A  A hängt von B ab  A besitzt die Steuerung A ruft B auf (Steuerfluss)  A ruft B auf Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 9/4 (http://www.gnu.org/copyleft/fdl.html)
  • 10. Typischer Steuerfluss A ist von B abhängig Objekt A  A hängt von B ab  A hat B aufgerufen A ruft B auf  B übernimmt die (Steuerfluss) Steuerung Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 10/4 (http://www.gnu.org/copyleft/fdl.html)
  • 11. Typischer Steuerfluss A ist von B abhängig Objekt A  Nach Abarbeitung gibt B die Steuerung an A zurück A ruft B auf (Steuerfluss) Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 11/4 (http://www.gnu.org/copyleft/fdl.html)
  • 12. Typischer Steuerfluss A ist von B abhängig Objekt A Zusammenfassung  A hängt von B ab A ruft B auf  Steuerfluss und (Steuerfluss) Abhängikeitsgraph zeigen in die Objekt B gleiche Richtung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 12/4 (http://www.gnu.org/copyleft/fdl.html)
  • 13. Inverser Steuerfluss A ist von B abhängig Objekt A  A hängt von B ab  B besitzt die Steuerung Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 13/4 (http://www.gnu.org/copyleft/fdl.html)
  • 14. Inverser Steuerfluss A ist von B abhängig Objekt A  A hängt von B ab  B besitzt die Steuerung B ruft A auf (Steuerfluss)  B ruft A auf Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 14/4 (http://www.gnu.org/copyleft/fdl.html)
  • 15. Inverser Steuerfluss A ist von B abhängig Objekt A  A übernimmt die Steuerung B ruft A auf (Steuerfluss) Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 15/4 (http://www.gnu.org/copyleft/fdl.html)
  • 16. Inverser Steuerfluss A ist von B abhängig Objekt A  Nach der Abarbeitung gibt A die Steuerung an B zurück B ruft A auf (Steuerfluss) Objekt B Übernimmt Steuerung 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 16/4 (http://www.gnu.org/copyleft/fdl.html)
  • 17. Inverser Steuerfluss A ist von B abhängig Objekt A Zusammenfassung  A hängt von B ab B ruft A auf  Steuerfluss und (Steuerfluss) Abhängigkeitsgraph sind entgengesetzt Objekt B 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 17/4 (http://www.gnu.org/copyleft/fdl.html)
  • 18. Inverser Steuerfluss A ist von B abhängig Objekt A Zusammenfassung  A hängt von B ab B ruft A auf  Steuerfluss und (Steuerfluss) Abhängigkeitsgraph sind entgengesetzt Objekt B Beispiel: B is ein Eclipse Plugin und A eine Plugin Extension 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 18/4 (http://www.gnu.org/copyleft/fdl.html)
  • 19. IoC == Inverser Steuerfluss  IoC also Inversion of Control bedeutet übersetzt Umkehrung des Steuerflusses also Inverser Steuerfluss.  Trotzdem wird das was auf den vorangegangenen Folien zu sehen war nicht als IoC bezeichnet.  Als IoC bezeichnet man gewöhnlich Container basierte Systeme welche DI nutzen. Der Container übernimmt dabei die Initialisierung und Steuerung. 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 19/4 (http://www.gnu.org/copyleft/fdl.html)
  • 20. IoC == Inverser Steuerfluss  Doch nur weil jetzt der Container die Steuerung übernimmt bedeutet dies nicht, dass sich der Steuerfluss umkehrt. Sonst wäre IoC bereits im J2EE Container zu finden gewesen.  Diese falsche Begriffszuordnung ist historisch gewachsener Schlampigkeit anzurechnen. Begonnen beim Pico Container und immer noch nicht beendet beim Spring Framework. 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 20/4 (http://www.gnu.org/copyleft/fdl.html)
  • 21. Vielen Dank für Ihr Interesse Photos/Grafiken: ©Thomas Schubert freigegeben zur allgemeinen Verwendung Ausnahmen: keine Schriftsatz: Courier New Ersatz Font: Arial erzeugt durch GoogleDrive, Open Office, Libre Office 02.06.2012 Rechtlich geschützt durch die GNU Free Documentation License 21/4 (http://www.gnu.org/copyleft/fdl.html)