TGViewer
Аналитик на коне Аналитик на коне @equestrian_analyst · 179 subscribers
Post #103 133
#2.3 C4: иерархия абстракций модели

- Компонент [Component] -

Тут сейчас вообще программистское пойдет. Я немного перефразировала определение с сайта с целью упрощения.

🔵это набор блоков кода, объединенных общей функциональностью, внутри контейнера

🔵не являются самостоятельными единицами развертывания, функционируют только как часть контейнера, отдельно - не могут


Вот тут Саймон Браун приводит примеры компонентов для разных языков программирования. И еще пример, как выделить компоненты из готового кода.

Я по жизни сталкиваюсь только с объектно-ориентированными ЯП, но обычно мне нужны познания для простых скриптов автоматизации... Поэтому то, что компонент в таких ЯП - это набор классов и интерфейсов, как написано на сайте модели - звучит для меня понятно, но процентов на 80.

Мне проще об этом думать на примере кодовой базы сервисов, что я видела. Например, если они были устроены по принципу слоистой архитектуры, то там были API-контроллеры, часть с бизнес-логикой и часть для обращения к БД. Вот это были бы, грубо говоря, 3 компонента в терминах модели C4.

Если у вас есть готовый код, Саймон Браун предлагает выделить компоненты так:

1️⃣ Посмотреть весь перечень блоков кода

2️⃣ Исключить те, что не имеют влияния на архитектуру вашего контейнера

3️⃣ Из оставшихся блоков сформировать компоненты (в своем примере он объединяет их по выполняемой функции - те самые контроллеры API, компонент бизнес-логики и компоненты обращения к БД)

Во многом, конечно, зависит от конкретной кодовой базы. Поэтому, в чуть большей степени чем с контейнерами, не уверена, что легко будет аналитику обойтись без программиста.

- Код [Code] -

Ну тут вроде просто :D
🔵это реальные блоки кода, из которых состоит компонент - классы, интерфейсы, функции, etc


Фуф, про абстракции всё. Завтра будет про общую идею диаграмм и диаграмму контекста :)
  • ❤ 2
  • 👍 1
  • 👀 1
More from @equestrian_analyst
  1. Aug 18, 2026День почти закончился, но грех не запостить про... день рождения 🦄 Да, сегодня мне стукну…
  2. Aug 14, 2026Новая книга по C4: финальное summary, часть 2 Продолжение вчерашнего поста про новую книгу…
  3. Aug 13, 2026Новая книга по C4: финальное summary, часть 1 Дочитала новую книгу Брауна. Что могу сказат…
  4. Aug 5, 2026ИИ-агенты и автономность: кейс AISI с атакой на реальные проекты Я профукала момент, чтобы…
  5. Jul 14, 2026Post #141
  6. Jul 8, 2026И немного про ближайшее будущее Что я предполагаю тут постить в ближайшее время: ▶️Ожидает…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →