Co to jest wstrzykiwanie zależności?
Wstrzykiwanie zależności jest techniką stosowaną w programowaniu obiektowym (OOP). Ta technika odwołuje się lub łączy z innym programem i uzależnia oryginalny program od programu, do którego się odwołuje. Pozwala to programistom na natychmiastowe dodawanie funkcji lub dodatkowych funkcji do oryginalnego programu, ale także komplikuje kodowanie i dodaje nadmierne kodowanie, które może spowolnić program. Większość programów OOP pozwala programistom odwoływać się do różnych zainstalowanych programów bez konieczności dodawania kodu.
Zastosowanie wstrzykiwania zależności jest często oszczędne w większości programów. Aby program był zależny, programista pisze kod, który odwołuje się do innego programu, w części lub w całości. Zwykle można odwoływać się do każdego zainstalowanego programu, ale niektóre schematy kodowania pozwalają na odwołanie się tylko do określonych programów. Na przykład, jeśli programista chce dodać możliwości tekstowe do programu, zamiast ręcznie wykonać tę funkcję, może odwołać się do programu do edycji tekstu. Dzięki temu oryginalny program ma teraz nową funkcję, ale jest zależny od tego, że inny program działa i pozostaje zainstalowany na komputerze.
Większość nowych programistów woli stosować wstrzykiwanie zależności zamiast ręcznie budować funkcje. Wynika to z faktu, że budowanie funkcji może być skomplikowane, a nowi programiści mogą nie wiedzieć, jak skutecznie wykonać tę funkcję. Odwołując się do programu, programista nie musi znać kodowania, a dowolną funkcję można dodać za pomocą zaledwie kilku wierszy kodu.
Jest wiele problemów z wstrzykiwaniem zależności, szczególnie jeśli program jest przeznaczony dla konsumentów, dlatego często nie jest używany ani używany przez specjalistów i dostawców oprogramowania. Jednym z najbardziej oczywistych problemów związanych z wstrzykiwaniem zależności po stronie konsumenta jest możliwość, że konsument może nie mieć programu, do którego się odwołuje. Jeśli program jest skonstruowany tak, aby odwoływał się do funkcji w Programie A, ale konsument nie ma zainstalowanego Programu A, funkcja lub cały program napotka wyniszczający błąd.
Przy wysokich poziomach zależności, do których odwołuje się kilka programów, pojawiają się inne problemy. Odwołanie do jednego lub dwóch programów tworzy niewielką ilość kodu, ale zrobienie więcej może wymagać nadmiernego kodu, który spowalnia program. Jeśli w programie wystąpił błąd, programista musi teraz zanurkować, aby znaleźć błąd, zwłaszcza że błąd może dotyczyć programu, do którego się odwołuje, a nie oryginalnego programu.
Wielu nowych programistów używa wstrzykiwania zależności, więc większość schematów OOP oferuje automatyczny sposób odwoływania się do programu. Umożliwia to programatorowi, za pomocą zaledwie kilku kliknięć myszy, nawiązanie połączenia referencyjnego. Automatyczne odwoływanie się do programu często dodaje nieco więcej kodu niż ręczne pisanie odwołania, ale ponieważ programista jest nowy, a program najprawdopodobniej nie trafi do konsumentów, nie powinno to powodować żadnych poważnych problemów.