PRO курс

JS: Предметно-ориентированное проектирование

344 сообщения в сообществе 981 учащихся

Курс посвящен процессу создания программных абстракций — моделей предметных областей. На примере разработки онлайн-системы для продажи билетов в кинотеатр, мы рассмотрим выделение правильных сущностей, нахождение связей между ними, и поговорим о предметно-ориентированном проектировании, инверсии контроля, принципе инверсии зависимостей, конечных автоматах.

Последнее обновление: 22 мая 2020

Подготовительный курс

JS: Автоматное программирование

Уроки курса

  • 1

    Введение

    Познакомиться с курсом и ответить на вопрос: какая у программиста основная задача в работе? Рассмотреть проект, работа над которым будет проходить в течение всего курса.
  • 2

    Use cases

    Рассмотреть UML и понятие use case. Выделить use cases в нашем проекте.

    тесты

  • 3

    Сущности и связи

    Понять, что такое сущности и связи между сущностями. Выделить сущности в рассматриваемой нами системе, описать их свойства.

    тесты

    упражнение

  • 4

    Архитектура

    Познакомиться с несколькими важными аспектами архитектур и рассмотреть стандартные, принятые в индустрии подходы к проектированию систем.

    тесты

    упражнение

  • 5

    Валидация

    Познакомиться с темой валидации, рассмотреть пример использования библиотеки Yup и добавить валидацию в нашу систему.

    тесты

    упражнение

  • 6

    Dependency Injection Container

    Познакомиться с идеей инверсии зависимостей и внедрения зависимостей. Рассмотреть паттерн Service locator и перейти к DI Container как к самому продвинутому решению.

    тесты

    упражнение

  • 7

    Предметная область

    Понять, что такое Domain-Driven Design (предметно-ориентированное проектирование) и ограниченный контекст.

    тесты

    упражнение

  • 8

    Изменяемость

    Рассмотреть сценарий изменения сущности и выявить первое правило изменяемости: «не изменяй!». Взглянуть на несколько примеров изменений в нашей системе.

    тесты

    упражнение

Автор

Аватар пользователя Kirill Mokevnin

Кирилл Мокевнин

Сооснователь и CEO образовательного проекта Хекслет. Программирую с 2007 года. За это время прошёл путь от разработчика до технического директора и управляющего отдельным подразделением (филиалом). Управлял командами, в которых больше 50 разработчиков.

  • Программирую на языках: Elixir, Clojure, JavaScript, PHP, Ruby.
  • Соорганизатор конференции Nastachku.ru.
  • Вимер.
  • Топлю за DevOps и автоматизированные тесты.

Впечатления

Стоящий курс. Потратил много часов на прохождение практик, некоторые пришлось запускать локально для более глубокой отладки.

Хочу сказать, что охре.... задание, офигенное задание!!! Спасибо!

Курс JS: Предметно-ориентированное проектирование
продолжительность
9 часов
награда
40 баллов