Запитання з тегом «inversion-of-control»

Інверсія управління (IoC) - це абстрактний принцип, що описує аспект деяких конструкцій архітектури програмного забезпечення, в якому потік управління системою інвертується порівняно з процедурним програмуванням.

3
Чи є ін'єкція бідної людини в залежність хорошим способом впровадження спадковості у спадщину програму?
Минулого року я створив нову систему, використовуючи Dependency Injection та контейнер IOC. Це мене багато чого навчило щодо DI! Однак, навіть вивчивши поняття та правильні зразки, я вважаю викликом роз'єднати код та ввести контейнер IOC у застарілий додаток. Додаток є досить великим, щоб справжня реалізація була б величезною. Навіть якщо …

2
Яка практична різниця між стилями введення залежності?
Я новачок у вживанні залежностей і у мене є кілька запитань про те, який стиль я повинен використовувати у своїх програмах. Я щойно прочитав інверсію контейнерів управління та схему вприскування залежності від Мартіна Фаулера, але я не можу отримати практичну різницю між конструктором, сетером та інжекційним введенням. Мені здається, що …

1
Як інверсія управління пов'язана з інверсією залежності
У багатьох статтях по всьому Інтернету терміни Принцип інверсії контролю та залежності залежно змішуються і використовуються як синоніми (подальше плутанину застосовується за допомогою інструментів, які називаються "DI-контейнери" та "контейнери IoC"). Стаття у Вікіпедії робить гарну роботу, намагаючись пояснити, що IoC - це не те саме, що DI: інверсія управління (IoC) …

2
МОК під час компіляції
Хтось розпочав проект, щоб зробити IOC під час компіляції (можливо, використовуючи Roslyn або Linq MethodInfo emit)? Мій досвід роботи з контейнерами МОК до цього часу був чудовим і вирішував кілька невеликих питань Багато контейнерів IOC повільно запускаються, оскільки велика частина логіки роздільної здатності відбувається тут Часто важко забезпечити можливу роздільну …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.