🔖
Всё по нотации С4 для схем архитектуры 🔵Можешь показать архитектуру системы в виде прямоугольников и стрелочек? Отлично!
Но если в отрасли есть стандарты, лучше использовать их.C4 - нотация моделирования архитектуры.Помогает архитекторам, разработчикам и аналитикам представлять архитектуру системы в виде
4-х уровней:👉 (1)
Контекст (C4 / Context)Система, её интеграции и пользователи.
✔️ Главный прямоугольник - наша система
✔️ Серые прямоугольники вокруг - внешние
✔️ Пользователи
👩💻 Полезна бизнес- и техническим специалистам
👉 (2)
Контейнеры (C4 / Container)Независимые по коду приложения в системе, детализация главного прямоугольника c C4 / Context.
✔️ Пользователи и внешние системы с уровня C4 / Context
✔️ Мобильные, веб- и десктоп приложения
✔️ Сервер-приложения: монолит, сервисы, микросервисы, API Gateway
✔️ Базы данных и файловые хранилища
✔️ Виды API
✔️ Технологии (языки программирования, СУБД, протоколы для API и др)
✔️ Базы данных и файловые хранилища
✔️ Очереди и брокеры
Схему удобнее использовать в адаптированном виде, когда на этом уровне не показывают сервисы и микросервисы, а переносят их на уровень глубже - C4 / Component. Иначе она очень перегружена.
👩💻 Полезна архитекторам, разработчикам и системным аналитикам.
👉 (3)
Компоненты (C4 / Component)Модули кода и зависимости между ними.
Детализирует один из контейнеров с C4 / Container.
На каждый контейнер своя схема.
Отлично подходит для детализации модульного монолита.
👉 (4)
Код (C4 / Code)На этом уровне детализируют каждый компонент c C4 / Component, показывая его реализацию в коде. Обычно это UML-диаграмма классов или другая визуализация.
Ключевые элементы нотации для каждого уровня прикреплены в картинках к посту 🖼
📚
Материалы по C4:🔗
Официальный сайт C4🔗
Нотация С4 — примеры диаграмм и инструменты🛠
Основные инструменты:🔗
Draw.io - графический
🔗
Structurizr - код
🔗
MermaidChart - код
🔗
PlantUML - код, самый неудобный
🖼
Примеры диаграмм C4:Монолит:
🔗
RideFlow [С4] - заказ такси
🔗
TelMed [С4] - телемедицина
🔗
Пример архитектуры C4 в MiroМикросервисная архитектура (МСА) с брокерами:
🔗
BookingGA [С4] - сервис аренды недвижимости
🔗
GreenChargeGA [С4] - зарядки для электроавто
🔗
CityGA [С4] - поиск мероприятий в городе
🔖Это максимально полный гайд по C4.
Сохраняйте, чтобы использовать как базу с теорией+примерами при проектировании архитектуры.
#АрхитектураGA
Автор:
@getanalysts |
Max