[HTML Academy] Онлайн-курс «Паттерны проектирования»

Цена:
404.8
doneМного
doneЗаканчивается
highlight_offНет в наличии
notifications_none
Уведомить

[?IMG]?

Что будет на курсе:

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

Программа курса
Раздел 1

Введение в паттерны проектирования

Познакомимся с паттернами проектирования, разберёмся, зачем они нужны и на какие типы делятся.

– Что такое паттерны проектирования и зачем их нужно знать?
– Что будет на курсе?
– Процедурное, объектно-ориентированное и функциональное программирование
– Типы паттернов проектирования
– Тест по первому разделу

Раздел 2

Порождающие паттерны

В этом разделе рассмотрим порождающие паттерны проектирования

– Введение: что такое порождающие паттерны, для чего и когда они нужны.
?
«Одиночка» (Singleton)
– Демо: счётчик посещений в проекте «Котокафе»
– Задание + решение: создание счётчика посещений страниц проекта «Фермерские продукты»

«Фабричный метод» (Factory method) — Фабричный метод (Factory method)
– Демо: выделение карточки в галерее «Котокафе»
– Задание + решение: вывод типов продуктов на главной странице проекта «Фермерские продукты»
?
«Абстрактная фабрика» (Abstract Factory)
– Демо: изменение формата вывода имени редких котов в проекте «Котокафе»
– Задание + решение: создание шаблонов для карточек и заголовков в проекте «Фермерские продукты»
?
«Строитель» (Builder)
– Демо: вывод промотекста на страницах проекта «Котокафе»
– Задание + решение: добавление промотекста на страницах проекта «Фермерские продукты»

«Пул объектов» (Object Pool)
– Демо: вывод времени посещения страницы в проекте «Котокафе»
– Задание + решение: вывод времени запуска приложения на главной странице проекта «Фермерские продукты»

«Прототип» (Prototype)
– Демо: создание прототипа с информацией о питомце в проекте «Котокафе»
– Задание + решение: создание прототипа для карточек в проекте «Фермерские продукты»
– Тест по второму разделу


Раздел 3

Структурные паттерны

В этом разделе рассмотрим структурные паттерны проектирования
?
– Введение в структурные паттерны

«Адаптер» (Adapter)
?– Демо: вывод данных в новом формате в сервисе по продаже автомобилей
– Задание + решение: вывод данных в новом формате в CRM-системе

«Мост» (Bridge)
– Демо: изменение цветовой темы сервиса по продаже автомобилей
– Задание + решение: механизм цветового оформления CRM-системы

?«Декоратор» (Decorator)
– Демо: ускорение загрузки страниц в сервисе по продаже автомобилей
– Задание + решение: кэширование данных в CRM-системе

«Фасад» (Facade)
– Демо: инкапсуляция базовой конфигурации для новых запросов в сервисе по продаже автомобилей
– Задание + решение: получение задач из внешней CRM-систем

«Компоновщик» (Composite)
– Демо: выделение авто в списке с помощью чекбокса в сервисе по продаже автомобилей
– Задание + решение: выделение задач из списка в CRM-системе

«Прокси» (Proxy)
– Демо: ограничение времени доступа сотрудников к сервису по продаже автомобилей
– Задание + решение: блокировка получения данных в CRM-системе
– Тест по третьему разделу

Раздел 4

Поведенческие паттерны

В этом разделе рассмотрим поведенческие паттерны проектирования

«Цепочка обязанностей» (Chain of Responsibility)
?– Демо: вывод в карточку товара информации о наличии книг в проекте «По полочкам»
– Задание + решение: вывод в карточку рецепта данных о количестве блюд в проекте «Ещё кусочек»

«Команда» (Command)
– Демо: получение данных с сервера с помощью AJAX-запроса в проекте «По полочкам»
– Задание + решение: инструмент для получения данных из нового источника в проекте «Ещё кусочек»

«Итератор» (Iterator)
– Демо: блокировка вывода данных в определённый промежуток времени в проекте «По полочкам»
– Задание + решение: блокировка вывода рецептов в определённое время в проекте «Ещё кусочек»

«Посредник» (Mediator)
– Демо: рамка для контейнера с книгами в проекте «По полочкам»
– Задание + решение: рамка для контейнера с рецептами в проекте «Ещё кусочек»

«Наблюдатель» (Observer)
– Демо: внешний скрипт для удаления блока с новинками в проекте «По полочкам»
– Задание + решение: внешний скрипт для удаления некорректных рецептов в проекте «Ещё кусочек»

«Состояние» (State)
?– Демо: добавление тёмной темы в проекте «По полочкам»
– Задание + решение: тёмная тема в проекте «Ещё кусочек»

«Стратегия» (Strategy)
– Демо: вывод шаблона карточки товара без блока с количеством страниц в проекте «По полочкам»
– Задание + решение: вывод шаблона карточки рецепта без блока автора в проекте «Ещё кусочек»

«Посетитель» (Visitor)
– Демо: выделение нового издания книги по уникальному идентификатору
– Задание + решение: блокировка рецепта в стадии разработки в проекте «Ещё кусочек»

«Хранитель»/«Снимок» (Memento)
– Демо: кнопка для смены обложки книги на главном баннере приложения «По полочкам»
– Задание + решение: кнопка смены заголовка сайта в проекте «Ещё кусочек»

«Шаблонный метод» (Template Method)
– Демо: добавление символов-префиксов к названиям книг в проекте «По полочкам»
– Задание + решение: добавление символов-префиксов к названиям рецептов в проекте «Ещё кусочек»
– Тест по четвёртому разделу

Раздел 5

MV*-паттерны

?В этом разделе мы научимся применять MV*-паттерны проектирования

«MVC»
– Демо: добавление фильтра гостиниц по стоимости в проекте «Седона»
– Задание + решение: добавление фильтра товаров по стоимости в проекте «Девайс»

«MVP»
– Демо: поэтапный вывод элементов на страницу в проекте «Седона»
– Задание + решение: поэтапная загрузка элементов на страницу в проекте «Девайс»

«MVVM»
– Демо: добавление фильтра по типу жилья в реальном времени в проекте «Седона»
– Задание + решение: фильтр по наличию Bluetooth в реальном времени в проекте «Девайс»
– Тест по пятому разделу

Раздел 6

Заключение

В этом разделе мы подведём итоги курса и закрепим полученные знания
?
– Подводим итоги
– Финальное тестирование
– Дополнительные материалы