Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемAlexanderByndyu
1 Аспектно-ориентированный подход на службе веб- приложений Цытович Павел Леонидович Fuse8, Южно-Уральский государственный университет 3-я конференция.NET разработчиков 25 сентября 2011
2 План Почему вообще появилась эта тема Паттерн «Стратегия» Стратегия привела к аспектам Как реализованы наши аспекты
3 Почему вообще появилась эта тема View Model Controller DB Множество Вариантов
4 Паттерн стратегия 4
5 От стратегии к аспектам 5 Формирование модели (MVC) Рассылка писем Чтение файлов конфигурации мониторинг транзакции Управление Windows Workflow Сквозная функциональность!
6 Аспект 6 аспект это повторно используемый компонент, который инкапсулирует поведение, необходимое множеству классов в проекте
7 Сравнение АОП и DI АОП & DI Оба добиваются слабой связанности в архитектуре Оба добиваются лучшего разделения функционала Оба разгружают часть проблем с основного кода 7
8 Сравнение АОП и DI АОП vs DI DI хорош, когда вы имеете зависимость от компонент, причем вам не важно как они реализованы АОП хорош, когда вам необходимо применить какое-то поведение к большому количеству элементов кода. Причем, целевой код не обязательно зависит от этого поведения 8
9 Наш аспект-фреймворк для ASP.NET MVC Основан на ActionFilter атрибутах ASP.NET MVC Требует реализации интерфейсов IAspectPredicate – условия при котором выполняется аспект IAspectAction – код аспекта, запускаемый при выполнении условия Привязывается к Action-методу с помощью атрибута Aspect Требует, чтобы контроллер наследовался от класса AspectController
10 [Aspect] 10 Условие выполнения аспекта Аспект Время выполнения (before,calltime,after)
11 Предикат 11 Определяет условие выполнение аспекта
12 Аспект 12 Этот метод содержащий код аспекта
13 Контроллер с поддержкой аспектов 13 Словарь для передачи данных между аспектами и между аспектами и контроллером Метод, запускающий выполнение аспектов calltime Метод-ловушка исключений в аспектах
14 ДЕМОНСТРАЦИЯ
15 Дальнейшее направление работы Поддержка транзакций (возможность отмены действия аспектов) Асинхронные аспекты
16 Спасибо за внимание Цытович Павел Леонидович Fuse8, Южно-Уральский государственный университет
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.