Zpo-13-wyk-Slajd19

Z Studia Informatyczne
Wersja z dnia 17:18, 4 lis 2006 autorstwa Bwalter (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Wstrzykiwanie zależności przez interfejs

Wstrzykiwanie zależności przez interfejs


Wstrzykiwanie zależności poprzez interfejs w zasadzie nie polega na wstrzykiwaniu (co sugeruje pasywną rolę komponentu), a na aktywnym wyszukiwaniu komponentów w rejestrze kontenera. Jest to ciągle najpopularniejsza metoda rozwiązywania zależności, stosowana powszechnie m.in. w technologii J2EE. Przykładami jej zastosowań w praktyce są mechanizmy JNDI znany z języka Java oraz Naming Service stosowana w specyfikacji CORBA.

Metoda ta polega na implementacji w komponencie specjalnego interfejsu, stanowiącego znacznik wskazujący, że komponent ten wymaga pewnych zależności. Interfejs definiuje metodę posiadającą parametr, który jest obiektem kontekstu – wyszukiwarką innych obiektów. Komponent w momencie utworzenia otrzymuje od kontenera instancję kontekstu, którą może zapamiętać, a następnie wykorzystać do rozwiązania swoich zależności.

Poważną wadą tego rozwiązania jest silne powiązanie z konkretnym kontenerem, jakie wynika z konieczności implementacji przez komponent specyficznego interfejsu. W niektórych sytuacjach – np. gdy dostępny jest jedynie komponent w wersji binarnej – użycie tego sposobu rozwiązywania zależności jest niemożliwe.

Dlatego technika ta, mimo swojej popularności, powoli traci obecnie znaczenie na rzecz innych, prostszych metod, przede wszystkim wstrzykiwania zależności


<< Poprzedni slajd | Spis treści | Następny slajd >>