Przekazywanie zależności do klasy poprzez konstruktor nazywane jest
Przekazywanie zależności do klasy poprzez konstruktor nazywane jest
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: A
Uzasadnienie i szersze wyjaśnienie:
Opisana technika to wstrzykiwanie zależności (Dependency Injection - DI). Jest to wzorzec projektowy, w którym zależności (czyli obiekty, których dana klasa potrzebuje do działania) są dostarczane z zewnątrz, zamiast być tworzone przez samą klasę. Przekazywanie zależności przez konstruktor (Constructor Injection) jest najpopularniejszą i najczystszą formą implementacji tego wzorca.
Dlaczego pozostałe odpowiedzi są nieprawidłowe?
- C. dziedziczeniem zależności: To nie jest standardowy termin w programowaniu.
- D. odwracaniem zależności (Dependency Inversion): Jest to zasada (litera D w SOLID), a nie wzorzec. Mówi ona, że moduły wysokiego poziomu nie powinny zależeć od modułów niskiego poziomu, a obie powinny zależeć od abstrakcji. Wstrzykiwanie zależności jest jednym ze sposobów na osiągnięcie tej zasady.
Chcesz poćwiczyć całą kwalifikację INF.04?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Zasady SOLIDPięć fundamentalnych zasad projektowania obiektowego: SRP, OCP, LSP, ISP oraz DIP, zwiększających czytelność, elastyczność i łatwość utrzymania kodu.
- Wzorce projektowe (Design Patterns GoF)Sprawdzone, uniwersalne i wielokrotnie wykorzystywane schematy rozwiązań typowych, powtarzających się problemów architektonicznych w programowaniu obiektowym.
- Dziedziczenie (Inheritance w OOP)Mechanizm programowania obiektowego pozwalający klasie pochodnej (podrzędnej) na przejęcie pól i metod z klasy bazowej (nadrzędnej) oraz ich rozszerzenie lub modyfikację.
Podobne pytania z działu „Dziedziczenie i polimorfizm”
Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 20 pytań z tego działu.
- #92
Co można powiedzieć o metodach klasy Point?
- #173
Dziedziczenie jest stosowane, gdy istnieje potrzeba
- #207
W przedstawionym kodzie zostało zaprezentowane jedno z podstawowych założeń programowania obiektowego. Jest to
- #237
Odpowiednikami zmiennych i funkcji programowania strukturalnego są w programowaniu obiektowym
- #285
Mechanizm programowania obiektowego w C++, wykorzystujący funkcje wirtualne (z ang. Virtual), który przy wywołaniu metod zwalnia programistę z obowiązku sprawdzenia jaką klasę pochodną aktualnie obsługuje, np. przez wskaźnik nosi nazwę