Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
course_(Windows&Web).docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.68 Mб
Скачать

Краткие итоги

В данной теме были рассмотрена архитектура композитного MVVM приложения, в котором соответствие между моделями представления и представлениями осуществляется при помощи IoC контейнера MEF. Также описано расширение контейнера, позволяющее автоматически реализовывать интерфейс INotifyPropertyChanged на всех моделях представления, помеченных атрибутом. Может показаться, что используемые приемы достаточно перегружены для реализации небольшого проекта, но необходимо осознавать, что при расширении проекта, выстроенная архитектура принесет свои плоды и позволит сопровождать проект с минимальными усилиями.

Набор для практики

Вопросы:

  1. Инверсия зависимости. Активная и пассивная.

  2. Назначение IoC контейнера

  3. Библиотека MEF

  4. Построение композитного MVVM приложения с применением IoC контейнера MEF

Тесты

Задача 1.

Вариант 1 Задачи 1.

Укажите неверный принцип инверсии зависимостей:

Ответ 1. абстракция не должна зависеть от реализации. Реализация должна зависеть от абстракции

+ Ответ 2. модули верхнего уровня должны зависеть от модулей нижнего уровня

Ответ 3. модули верхнего и нижнего уровня должны зависеть от абстракций

Ответ 4. все перечисленные принципы верны

Вариант 2 Задачи 1.

Укажите верные принцип инверсии зависимостей:

+ Ответ 1. абстракция не должна зависеть от реализации. Реализация должна зависеть от абстракции

Ответ 2. модули верхнего уровня должны зависеть от модулей нижнего уровня

+ Ответ 3. модули верхнего и нижнего уровня должны зависеть от абстракций

Ответ 4. абстракция должна зависеть от реализации. Реализация не должна зависеть от абстракции

Вариант 3 Задачи 1.

Зависимости между классами превращаются в … между объектами.

Ответ 1. ассоциации

Задача 2.

Вариант 1 Задачи 2.

Какого атрибута для указания внедрения зависимости не определены в MEF:

Ответ 1. ImportAttribute;

+ Ответ 2. ImportingPropertyAttribute

Ответ 3. ImportingConstructorAttribute

Ответ 4. все перечисленные атрибуты определены в MEF

Вариант 2 Задачи 2.

Какие атрибуты для указания внедрения зависимости определены в MEF:

+ Ответ 1. ImportAttribute;

Ответ 2. ImportingPropertyAttribute

+ Ответ 3. ImportingConstructorAttribute

Ответ 4. ImportingFieldAttribute

Вариант 3 Задачи 2.

Зависимости от компонент в терминологии MEF называются импортами. Импорты с внедрением через устанавливаемое свойство или поле задаются при помощи атрибута …

Ответ 1. ImportAttribute

Задача 3.

Вариант 1 Задачи 3.

Какое значение необходимо передать в атрибут PartCreationPolicyAttribute, для создания нового объекта при каждом разрешении зависимости:

+ Ответ 1. CreationPolicy.NonShared

Ответ 2. CreationPolicy.Multiple;

Ответ 3. CreationPolicy.Single;

Ответ 4. CreationPolicy.Shared

Вариант 2 Задачи 3.

Какое значение необходимо передать в атрибут PartCreationPolicyAttribute, для создания нового объекта при каждом разрешении зависимости:

+ Ответ 1. CreationPolicy.NonShared

Ответ 2. CreationPolicy.Multiple;

Ответ 3. CreationPolicy.Single;

Ответ 4. CreationPolicy.Shared

Вариант 3 Задачи 3.

Атрибут способный принять в качестве параметра CreationPolicy.NonShared и указать на то, что экспорт необходимо создавать заново при удовлетворении каждой новое зависимости:

Ответ 1. PartCreationPolicy

Задача 4.

Вариант 1 Задачи 4.

Создание объекта с помощью IoC контейнера не предоставляет следующего преимущества перед оператором new:

Ответ 1. разрешение внутренних зависимостей

Ответ 2. возможность использования элементов аспектно-ориентированного программирования

+ Ответ 3. скорость создания объекта

Ответ 4. создание объекта с помощью IoC контейнера превосходит по всем критериям оператор new

Вариант 2 Задачи 4.

Создание объекта с помощью IoC контейнера предоставляет следующего преимущества перед оператором new:

+ Ответ 1. разрешение внутренних зависимостей

+ Ответ 2. возможность использования элементов аспектно-ориентированного программирования

Ответ 3. скорость создания объекта

+ Ответ 4. Абстрагирование от реализации

Вариант 3 Задачи 4.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]