Learning Platform
Глоссарий Troubleshooting
Урок 02.04 · 15 мин
Средний
Trade-offsArchitecture Decision RecordsEvaluation Criteria

Trade-off Analysis и архитектурные решения

Нет правильных ответов — есть обоснованные решения

Главный навык System Design — не знание «правильного» решения, а умение анализировать trade-offs и выбирать подход, оптимальный для конкретных ограничений.

Каждое архитектурное решение — это компромисс:

Хотим большеЖертвуем
ДецентрализацииСкоростью и throughput
БезопасностиГибкостью и upgradability
ПроизводительностиСтоимостью газа
Простоты контрактаФункциональностью
МасштабируемостиАтомарностью операций

Framework для анализа trade-offs

1. Определить критерии оценки

Для каждого решения определите, что важно:

Критерии оценки архитектуры
Gas Cost
Latency
Security
Upgradability
Extensibility
Scalability

2. Оценить варианты

Для каждого варианта оцените по критериям (1-5):

КритерийВариант A: МонолитВариант B: Sharded
Gas Cost4/5 (один контракт)2/5 (сообщения между контрактами)
Latency5/5 (без cross-shard)3/5 (cross-shard messages)
Security3/5 (один attack surface)4/5 (изоляция)
Scalability2/5 (один шард)5/5 (шарды параллельно)

3. Документировать решение (ADR)

Architecture Decision Record (ADR) — стандартный формат документирования:

## ADR-001: Sharded vs Monolithic Token Contract

**Status:** Accepted
**Context:** Проектируем Jetton с ожидаемым числом холдеров 1M+
**Decision:** Sharded pattern (master + wallet contracts)
**Consequences:**
  - [OK] Масштабируется до любого числа холдеров
  - [OK] Параллельная обработка transfer в разных шардах
  - [NO] Transfer = 3 сообщения вместо 1 (дороже в gas)
  - [NO] Balance не атомарен — возможны временные несоответствия

Пример: Проектирование DEX — trade-off analysis

Задача: спроектировать DEX на TON. Два основных подхода:

Trade-off: AMM vs Orderbook DEX
AMM (STON.fi, DeDust)
Orderbook

Почему TON DEX-ы выбирают AMM

  1. Gas cost: Хранение orderbook на блокчейне — дорого (storage fee за каждый ордер)
  2. Асинхронность: Матчинг ордеров в async среде — сложно гарантировать fairness
  3. Простота: AMM = один контракт с формулой x * y = k, orderbook = десятки контрактов
  4. UX: AMM swap — одна транзакция, orderbook — создание ордера + ожидание матчинга
TIP

Правильный ответ зависит от контекста

Для low-frequency trading на дорогих активах — orderbook лучше (точные цены). Для массовых мелких swap-ов — AMM (простота и скорость). В модуле M07 мы детально разберём архитектуру обоих подходов.

Антипаттерны при принятии решений

Resume-Driven Development

Выбирать технологию, потому что она красиво смотрится в резюме, а не потому что подходит для задачи.

Premature Optimization

Оптимизировать gas для контракта с 10 пользователями, вместо того чтобы сфокусироваться на корректности.

One-Size-Fits-All

Использовать один паттерн (например, sharded) для всех контрактов, независимо от требований.

Copy-Paste Architecture

Копировать архитектуру STON.fi для своего DEX без анализа — ваши требования могут отличаться.

Чек-лист для каждого архитектурного решения

Перед фиксацией решения проверьте:

  • Определены ли критерии оценки (что важно для этой конкретной системы)?
  • Рассмотрены ли минимум 2 альтернативы?
  • Документированы ли trade-offs каждого варианта?
  • Учтены ли специфики TON (async, sharding, storage fees)?
  • Есть ли план отступления, если решение окажется неверным?
  • Записан ли ADR?
Проверка знанийKnowledge check
ОтветAnswer

Проверьте понимание

Результат: 0 из 0
Аналитический
Вопрос 1 из 3. Почему большинство DEX на TON (STON.fi, DeDust) выбрали AMM, а не orderbook?

Закончили урок?

Отметьте его как пройденный, чтобы отслеживать свой прогресс

Войдите чтобы оценить урок

Прогресс модуля
0 из 5