Содержание
- 2. Принцип разделения ответственностей (напоминание) Разделение ответственности (separation of concerns, SoC) – программа должны состоять из функциональных
- 3. Связь с требованиями Функциональность программы проистекает из требований к ней. Требования бывают: (разделение по сути требований)
- 4. Виды ответственностей Core concerns (ответственности 1-го класса) – бизнес-логика приложения, следует непосредственно из функциональных требований Cross-cutting
- 5. Роль ООП (как методологии) в разработке ПО Функциональные требования Модель предметной области Концептуальная модель системы Архитектура
- 6. ООП + CCC Предметная область Функциональные требования Модель предметной области Концептуальная модель системы Архитектура Программный код
- 7. Нефункциональные требования Платформа («железо», ОС, языки, библиотеки) Производительность (performance) Масштабируемость (scalability) Распределение по физическим узлам Простота
- 8. Cross-cutting concerns Инициализация, конфигурация Управление жизненным циклом объектов Оптимизация (в т.ч. кэширование) Персистентность Журналирование Транзакции Многопоточность
- 9. Ограничения распространенных парадигм (или их общепринятых реализаций) Структурное программирование: процедура не может быть разделена на взаимно-независимые
- 10. Способы борьбы с CCC Композиция разных парадигм Расширенные объектные модели интроспекция вспомогательные методы динамические модели Meta-Object
- 11. Аспектно-ориентированное программирование Как парадигма программирования: Расщепление классов Расщепление методов «Контекстный полиморфизм» Как методология: архитектура строится в
- 12. Hollywood principle Don’t call us, we’ll call you
- 13. Цикл обработки сообщений WinAPI /* Так начиналось 99% программ образца 90х под Windows. Подсветка синтаксиса оригинала
- 14. Инверсия управления (Inversion of Control, IoC, Hollywood Principle) Задача: использовать альтернативный механизм запуска и/или исполнения приложения
- 15. Понятие framework Framework вводит новые или изменяет существующие механизмы абстрагирования. В частности, практически любая реализация IoC
- 16. IoC и жизненный цикл объекта Garbage Collector: вместо явного уничтожения объект «забывается» и далее обрабатывается некоторой
- 17. Инициализация зависимостей без применения Dependency Injection public interface ITool{ …} public class Fork implements ITool{ …
- 18. Тривиальный Dependency Injection (DI) на основе конструктора //constructor-based DI class public class Person2{ ITool tool; //требуем
- 19. Преимущества DI Агрегирующие классы (т.е. те, для которых работает DI) не обязаны зависеть от конкретных классов
- 20. Проблемы с тривиальным DI DI реализует «божественная» сущность, зависящая от всей системы Явно позволяет реализовать только
- 21. DI на основе контейнера Контейнер (сущность, реализующая IoC) универсален и не зависит от конкретных классов реализации.
- 23. Скачать презентацию




















Литературные герои тоже имеют права
Elementele sistemului de marketing profitabil sunt strategiile
Святые места Воронежа
Презентация (1)
Что учитывать при перепланировке
Тема 1
We help podiatrists attract more new patients from the web
ОГУ «Региональный центр развития образования» Отдел сопровождения проектов
кма презентация М2
Перетягивание палки
Проект ресторана на 96 мест с открытой кухней
Организация работы с клиентами автосервисных центров
Вопросы 1. Порядок расчета основных параметров при авариях на химически опасных объектах с выбросом АХОВ ИД. 2. Краткое содержание м
Уголовное право. Общая часть. Понятие и признаки преступления
Lorem ipsum dolor sit amet consectetuer adipiscing elit
Глаза - один из ценнейших органов чувств человека. Благодаря глазам мы получаем почти всю информацию об окружающем мире.
Весенние операции
Урок – игра «В мире числительных»
Изобретение велосипеда
Логистика на предприятии ООО Мегастрой
Акселераторы
Международное налоговое право
Образование и формирование жизненных планов
Картины из соломки. Технология обработки и изготовления картин
Эпоха Возрождения или Ренессанс
Познавательная и коммуникативная деятельность
Архетипы
Использование СМС технологий в высоконагруженных WEB проектах. Дмитрий Булычков. - презентация