Все курсы

Мастер-класс по архитектуре и паттернам

Этот мастер-класс предназначен для JavaScript программистов, которые хотят разобраться в вопросах создания архитектуры фронтенд-приложений, эффективно применять на практике паттерны и принципы проектирования.

Архитектура и паттерны
Ближайшая группа
Перейти к записи

Цели интенсива

  • Изучить основные понятия архитектуры и проектирования.
  • Рассмотреть способы оценки и улучшения качества кода.
  • Разобрать дизайн-принципы SOLID, их применение в реальных приложениях.
  • Разобрать шаблоны проектирования, наиболее часто встречающимися на фронтенде.
  • Научиться видеть шаблоны в существующем коде и самостоятельно их применять.

Как организовано обучение?

Онлайн-интенсив идёт один день

Занятие проходит в формате вебинара из двух частей. Запись занятия будет доступна через 15 минут после окончания.

Общение

Есть групповой чат для общения и вопросов преподавателю. Общаться можно также голосом. Вопросы можно задавать в любой момент вебинара.

Результат

Вы улучшите своё понимание архитектуры фронтенд-приложений.

Вы разберётесь с дизайн-паттернами и принципами SOLID, научитесь применять их на практике.

Сертификат

По окончанию курсов вы получаете сертификат в электронном виде на русском и английском языках.

Хотя сертификатам в нашей профессии обычно не придают значения. Главное - знания и умения, которые вы получите, если будете полноценно участвовать в интенсиве.

img

Программа интенсива

Часть 1

Основные задачи проектирования:

  • Что значит, что система спроектирована "хорошо"
  • Какие принципы критичны, а какими можно пренебречь
  • Как писать новый код так, чтобы не ломать старый
  • Что делать, если в наследство достался плохо спроектированный проект
  • Применимость и неприменимость тех или иных подходов на практике

Базовые понятия архитектуры:

  • Архитектурные границы
  • Внешние и внутренние интерфейсы
  • Отношения и зависимости
  • Сцепленность и связность
  • Закон Деметры
  • Абстракции
  • SOLID и GRASP

Подробно разберём принципы SOLID — зачем нужен каждый из них, какую задачу решает. Рассмотрим примеры кода и особенности фронтенда.

Часть 2

Проанализируем наиболее частые для фронтенда шаблоны проектирования:

Поведенческие:

  • Стратегия (Strategy)
  • Итератор (Iterator)
  • Шаблонный метод (Template Method)
  • Наблюдатель (Observer)
  • Посредник (Mediator/Controller)
  • Команда (Command)

Порождающие:

  • Фабрика (Factory)
  • Фабричный метод (Factory method)
  • Одиночка (Singleton)
  • Прототип (Prototype)

Структурные:

  • Декоратор (Decorator)
  • Примесь (Mixin)
  • Текучий интерфейс (Fluent API)
  • Конвейер (Pipeline)
  • Фасад (Facade)
  • Адаптер (Adapter)
  • Заместитель (Proxy)
  • Приспособленец (Flyweight)

...И ряд других. Рассмотрим применение каждого шаблона на практике. Посмотрим и обсудим конкретные примеры кода.

В процессе вспомним некоторые смежные понятия, такие как иммутабельность, объектно-ориентированный подход, функции первого класса, реактивность и асинхронность.

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

Предварительные требования

  • Опыт JavaScript от 1 года и понимание синтаксиса классов (или пройденный курс JavaScript для программистов или новичков).
  • Интернет 256кб/с или быстрее.

Преподаватель

Photo
Виталий СергеевВедёт курс с 28 сентября 2024

Программист с большим опытом. В индустрии больше десяти лет, с 2019 года специализируюсь на фронтенде. Разрабатывал сервисы инфраструктуры в Лаборатории Касперского, проводил рефакторинг CRM и проектировал фронтенд в Skyeng. Сейчас старший разработчик в компании Датадванс.

Активно помогаю младшим коллегам, провожу консультации. Веду группы по разработке. Делаю акцент на конкретике и целесообразности, учу опираться на общие принципы и строить логические связи.

Что говорят о курсе участники?

Мы занимаемся обучением с 2007 года. За это время у нас обучились тысячи разработчиков из разных стран и компаний.

Все отзывы являются честными. Мы не модерируем их.

Курс регулярно обновляется. Все отзывы относятся к последней версии курса.

Для компаний

У нас большой опыт работы с самыми разными компаниями: как маленькими, так и IT-гигантами.

  • При записи нужно выбрать способ оплаты "счёт на компанию", и документы будут автоматически сгенерированы: договор, акт и счёт, есть лицензия.
  • Для зарубежных компаний выдаём инвойс на английском языке.

Физическим лицам даём справку об оплате, если нужна компании для компенсации расходов и документы для налогового вычета: детали для РФ.

Если остались вопросы – посмотрите в часто задаваемых, напишите на почту help@javascript.ru (ответ обычно в течение дня), а если срочно — задайте по телефону +7-903-5419441.

Комментарии

перед тем как писать…
  • Если вам кажется, что в статье что-то не так - вместо комментария напишите на GitHub.
  • Для одной строки кода используйте тег <code>, для нескольких строк кода — тег <pre>, если больше 10 строк — ссылку на песочницу (plnkr, JSBin, codepen…)
  • Если что-то непонятно в статье — пишите, что именно и с какого места.