Мастер-класс по архитектуре и паттернам
Этот мастер-класс предназначен для JavaScript программистов, которые хотят разобраться в вопросах создания архитектуры фронтенд-приложений, эффективно применять на практике паттерны и принципы проектирования.
Цели интенсива
- Изучить основные понятия архитектуры и проектирования.
- Рассмотреть способы оценки и улучшения качества кода.
- Разобрать дизайн-принципы SOLID, их применение в реальных приложениях.
- Разобрать шаблоны проектирования, наиболее часто встречающимися на фронтенде.
- Научиться видеть шаблоны в существующем коде и самостоятельно их применять.
Как организовано обучение?
Онлайн-интенсив идёт один день
Занятие проходит в формате вебинара из двух частей. Запись занятия будет доступна через 15 минут после окончания.
Общение
Есть групповой чат для общения и вопросов преподавателю. Общаться можно также голосом. Вопросы можно задавать в любой момент вебинара.
Результат
Вы улучшите своё понимание архитектуры фронтенд-приложений.
Вы разберётесь с дизайн-паттернами и принципами SOLID, научитесь применять их на практике.
Сертификат
По окончанию курсов вы получаете сертификат в электронном виде на русском и английском языках.
Хотя сертификатам в нашей профессии обычно не придают значения. Главное - знания и умения, которые вы получите, если будете полноценно участвовать в интенсиве.
Программа интенсива
Часть 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)
...И ряд других. Рассмотрим применение каждого шаблона на практике. Посмотрим и обсудим конкретные примеры кода.
В процессе вспомним некоторые смежные понятия, такие как иммутабельность, объектно-ориентированный подход, функции первого класса, реактивность и асинхронность.
Завершим интенсив обзором направлений дальнейшего развития и списком рекомендуемых источников.
Преподаватель
Программист с большим опытом. В индустрии больше десяти лет, с 2019 года специализируюсь на фронтенде. Разрабатывал сервисы инфраструктуры в Лаборатории Касперского, проводил рефакторинг CRM и проектировал фронтенд в Skyeng. Сейчас старший разработчик в компании Датадванс.
Активно помогаю младшим коллегам, провожу консультации. Веду группы по разработке. Делаю акцент на конкретике и целесообразности, учу опираться на общие принципы и строить логические связи.
Что говорят о курсе участники?
Мы занимаемся обучением с 2007 года. За это время у нас обучились тысячи разработчиков из разных стран и компаний.
Все отзывы являются честными. Мы не модерируем их.
Курс регулярно обновляется. Все отзывы относятся к последней версии курса.
Для компаний
У нас большой опыт работы с самыми разными компаниями: как маленькими, так и IT-гигантами.
- При записи нужно выбрать способ оплаты "счёт на компанию", и документы будут автоматически сгенерированы: договор, акт и счёт, есть лицензия.
- Для зарубежных компаний выдаём инвойс на английском языке.
Физическим лицам даём справку об оплате, если нужна компании для компенсации расходов и документы для налогового вычета: детали для РФ.
Запись на курс
Если остались вопросы – посмотрите в часто задаваемых, напишите на почту help@javascript.ru (ответ обычно в течение дня), а если срочно — задайте по телефону +7-903-5419441.
Комментарии
<code>
, для нескольких строк кода — тег<pre>
, если больше 10 строк — ссылку на песочницу (plnkr, JSBin, codepen…)