Zpo-13-wyk-Slajd19: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Linia 6: Linia 6:
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.
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óą może zapamiętać, a następnie wykorzystać do rozwiązania swoich zależności.
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.
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.

Aktualna wersja na dzień 17:18, 4 lis 2006

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 >>