База
Fundamentals of Software Architecture
Системное введение в архитектурные характеристики и стили.
Архитектура ПО — это набор ключевых решений о структуре системы, границах модулей, взаимодействиях и нефункциональных требованиях. Это те решения, которые сложнее всего поменять позже и которые определяют качество, скорость изменений и стоимость поддержки.
Что такое архитектура софта
- Структура системы: компоненты, границы, зависимости.
- Нефункциональные характеристики: latency, reliability, security, cost.
- Операционная модель: деплой, мониторинг, эволюция.
- Архитектурные решения и их обоснование (ADR, trade-offs).
Зачем думать про архитектуру в System Design
Качество и риски
Архитектура задаёт SLA, устойчивость, безопасность и limit-ы системы.
Скорость изменений
Границы и интерфейсы позволяют развивать продукт без постоянных переделок.
Стоимость владения
Правильные trade-offs помогают контролировать инфраструктурные и операционные затраты.
Почему эти книги в этой части
Эта часть собрана как «архитектурная база»: от требований и характеристик качества до эволюции и модульности. Все книги дополняют друг друга и отвечают на ключевые вопросы архитектора: что строим, как устроим, как будем менять.
Про требования, приоритизацию и управление изменениями.
Архитектурные характеристики и базовые стили.
Декомпозиция монолита, data ownership, orchestration vs choreography.
Trade-offs, ATAM, практичный подход к архитектуре.
Эволюция системы и fitness functions.
Архитектура как процесс и продуктовый подход.
Снижение сложности через модули и API.
Границы, зависимости, принципы SOLID.
Дизайн-системы, процессы и масштабируемый фронтенд.
Как читать раздел
- Начните с требований и архитектурных характеристик.
- Перейдите к сложным решениям и декомпозиции.
- Закрепите материал на эволюции и чистоте архитектуры.
Если нужна опора на практику, начните с архитектурных решений в масштабе и эволюционной архитектуры на практике.
