Открыто

Анализ систем [Тариф - Аптечка] [Школа сильных программистов] [А.Давыдов, Т. Зарудный, М.Онысько, Ф.Борщев]

Тема в разделе "Курсы по программированию", создана пользователем Топикстартер, 10 июн 2024.

Основной список: 22 участников

Резервный список: 2 участников

  1. 10 июн 2024
    #1
    Топикстартер
    Топикстартер ЧКЧлен клуба

    Складчина: Анализ систем [Тариф - Аптечка] [Школа сильных программистов] [А.Давыдов, Т. Зарудный, М.Онысько, Ф.Борщев]

    2024-06-10_21-33-58.jpg

    Курс о том, как проектировать системы. Новые — чтобы не переделывать, старые — чтобы разобрать на части и ускорить разработку.

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

    Урок 1. Работа с требованиями, разделение системы на элементы
    Когда мы только начинаем проектировать системы, обычно нет ни внятных требований, ни времени на проектирование. После урока будет понятно, что даже в таких условиях можно собрать что-то рабочее.

    Также в уроке разбиваем два антипаттерна — разбивание бизнес-логики по техническим шагам или по сущностям (entity service).

    Ключевые концепции и термины:
    • Работа с требованиями
    • Event Storming
    • Модель данных
    • Базовое сравнение микросервисов и монолитов
    • Система, форма и функция системы
    Урок 2. Стратегический анализ бизнеса и архитектурные стили
    Программисты склонны принимать решения вокруг технологий, а не устройства бизнеса. Требования обычно этому не препятствуют. В уроке чиним это: учимся проектировать системы на основе стратегического анализа бизнеса, подробнее изучаем распределенные и монолитные архитектурные стили.

    Ключевые концепции и термины:
    • Strategic DDD, subdomains
    • Coupling & cohesion, temporal coupling, local & global complexity
    • Quality attributes/non functional requirements/architecture characteristics
    • Поиск характеристик и перевод бизнес-терминов в характеристики
    • Циклы жизни систем

    Урок 3. Внешние ограничения и документация
    Добавляем внешние ограничения: комплаенс, географические ограничения, количество инвестиций, общий уровень разработчиков. В уроке определяем и приоритизируем их.

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

    Изучим новые архитектурные стили: microkernel, pipeline, event-driven (привет, попуги!).

    Ключевые концепции и термины:
    • Ограничения системы
    • Выбор вида БД в зависимости от характеристик
    • Выбор вида коммуникаций и брокера для событий
    • Fitness function
    Урок 4. Распиливаем монолит
    Учимся рефакторить сложные системы: добавлять новую функциональность, выносить не подходящую по характеристикам, объединять сервисы, переписывать существующие сервисы и избавляться от антипаттернов вроде entity-сервисов.

    Ключевые концепции и термины:
    • Добавление новой функциональности в отдельных сервисах
    • Объединение сервисов
    • Вынос функциональности из монолита в сервис
    • Strangler Fig Application, Volatility Based Decomposition, Tactical Forking, Component-Based Decomposition

    Урок 5. Итоги и дальнейшие шаги
    Цель: подвести общие итоги и обсудить необходимые шаги для дальнейшей работы. Разобраться, как описывать систему. Спланировать этап развития собственных навыков после курса и повторить концепции, пройденные в курсе.

    Ключевые концепции и термины:
    • Всё, что в курсе было
    • 4+1, C4, arc42, iso42010
    Тариф - Аптечка
    Стоимость 25000
    Скрытая ссылка
     
    Последнее редактирование модератором: 10 июн 2024
    1 человеку нравится это.
  2. Последние события

    1. Petr152
      Petr152 не участвует.
      1 фев 2026
    2. A13x8
      A13x8 участвует.
      6 янв 2026
    3. Magenta001
      Magenta001 участвует.
      22 дек 2025
    4. Dmitry_K
      Dmitry_K участвует.
      21 дек 2025

    Последние важные события

    1. skladchik.com
      Нужен организатор складчины.
      30 апр 2025
    2. skladchik.com
      Назначен организатор.
      10 июн 2024