Diskuze: Použití Dependency Injection
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Ahoj, z hlediska funkčnosti to na danou třídu mít vliv nebude. Obecně se však takovýto způsob nedoporučuje, jedná se o tzv. Service Locator anti-pattern. Jednak tím znepřehledníš kód, protože nebude hned zřejmé na čem je daná třída závislá a navíc je tento přístup obtížně testovatelný.
Více info: https://stackoverflow.com/q/1557781 https://stackoverflow.com/q/1557781
Děkuju moc u webu mě to tolik netrápí. Trápí mě to ale u WPF MVVM, kde používám DI a potřebuji otevřít nové okno po klinutí na tlačítko. Pokud si předám závislost v parametru konstruktoru, tak se okno inicializuje hned což nechci, chci aby se inicializovalo až po tom klinutí...
Aha, co máš namyslí tím, že se inicializuje? Protože při injecknutí
závislosti přes konstruktor se pouze dané proměnné předá reference na
nově vytvořenou (nebo stávající) instanci. Vytvoření instance většinou
není tak časově náročný proces. A inicializace nějakou metodou proběhne
až později. Ale WPF tak dobře neznám a možná je to v tvém případě
jinak Potom by asi bylo
potřeba uvést větší kus kódu.
Zobrazeno 5 zpráv z 5.