Академический Документы
Профессиональный Документы
Культура Документы
Урок 1
Архитектура веб-
приложений
В рамках курса рассмотрим:
Архитектура
Идентифицирует главные компоненты системы и способы их
взаимодействия. Например: выбор фреймворка, стандартов,
протоколов, моделей взаимодействия модулей и т. д.
Проектирование
Процесс создания ПО, также формализует методы написания кода.
Например: планирование и детализация модулей, оптимизация,
спецификация классов и методов и т. д.
Изменения — главный враг программиста
Откуда взялась сложность?
Grady Booch
Откуда взялась сложность?
Grady Booch
Откуда взялась сложность?
Grady Booch
Откуда взялась сложность?
Grady Booch
Откуда взялась сложность?
дискретных системах.
Grady Booch
Критерии качественного ПО
1. Эффективность.
Критерии качественного ПО
1. Эффективность.
2. Гибкость.
Критерии качественного ПО
1. Эффективность.
2. Гибкость.
3. Расширяемость.
Критерии качественного ПО
1. Эффективность.
2. Гибкость.
3. Расширяемость.
4. Возможность переиспользования.
Критерии качественного ПО
1. Эффективность.
2. Гибкость.
3. Расширяемость.
4. Возможность переиспользования.
5. Тестируемость.
Критерии качественного ПО
1. Эффективность.
2. Гибкость.
3. Расширяемость.
4. Возможность переиспользования.
5. Тестируемость.
6. Сопровождаемость.
Что же такое архитектура ПО?
Grady Booch
Что же такое архитектура ПО?
1. Результат декомпозиции.
Martin Fowler
Клиент-сервер двухзвенный
Куда поместить логику?
«Толстый» клиент
По ссылке
https://github.com/geekbrains-web/architecture вы
найдёте учебный проект — рассмотрите его.
Нарисуйте в произвольной форме схему
взаимодействия классов из папки src этого проекта.
Сгруппируйте и выделите пунктирной линией
компоненты системы (контроллеры, сервисы и
модели).