🔖 Всё по нотации С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
Post #3184
6.91K




- ❤ 21
- 🔥 10
- ❤🔥 3