Що буде на курсі:
- ви навчитеся застосовувати перевірені архітектурні підходи при створенні програм.
- ви дізнаєтеся, як застосовувати патерни в розробці алгоритмів різного спрямування, починаючи від інтерфейсу веб-додатки і закінчуючи серверною частиною мобільного додатку.
Розділ 1
введення в патерни проектування
Познайомимося з патернами проектування, розберемося, навіщо вони потрібні і на які типи діляться.
Породжуючі патерни
У цьому розділі розглянемо породжуючі патерни проектування
- Вступ: що таке породжуючі патерни, для чого і коли вони потрібні.
"Одинак" (Singleton)
"Абстрактна фабрика" (Abstract Factory)
"Будівельник" (Builder)
РОЗДІЛ 3
структурні патерни
У цьому розділі розглянемо структурні патерни проектування
- Введення в структурні патерни
"Адаптер" (Adapter)
поведінкові патерни
У цьому розділі розглянемо поведінкові патерни проектування
"Ланцюжок обов'язків" (Chain of Responsibility)
MV * - патерни
У цьому розділі ми навчимося застосовувати Mv * - патерни проектування
"MVC"
висновок
У цьому розділі ми підведемо підсумки курсу і закріпимо отримані знання
введення в патерни проектування
Познайомимося з патернами проектування, розберемося, навіщо вони потрібні і на які типи діляться.
- Що таке патерни проектування і навіщо їх потрібно знати?
- Що буде на курсі?
- Процедурне, об'єктно-орієнтоване та функціональне програмування
- Типи патернів проектування
- Тест по першому розділу
Породжуючі патерни
У цьому розділі розглянемо породжуючі патерни проектування
- Вступ: що таке породжуючі патерни, для чого і коли вони потрібні.
"Одинак" (Singleton)
- Демо: лічильник відвідувань в проекті "Котокафе"
- Завдання + рішення: створення лічильника відвідувань сторінок проекту "фермерські продукти"
- Демо: виділення картки в галереї "Котокафе"
- Завдання + рішення: виведення типів продуктів на головній сторінці проекту "фермерські продукти"
"Абстрактна фабрика" (Abstract Factory)
- Демо: зміна формату виведення імені рідкісних котів в проекті "Котокафе"
- Завдання + рішення: створення шаблонів для карток і заголовків в проекті "фермерські продукти"
"Будівельник" (Builder)
- Демо: висновок промотексту на сторінках проекту "Котокафе"
- Завдання + рішення: додавання промотексту на сторінках проекту"фермерські продукти"
- Демо: виведення часу відвідування сторінки в проекті "Котокафе"
- Завдання + рішення: виведення часу запуску програми на головній сторінці проекту "фермерські продукти"
- Демо: створення прототипу з інформацією про вихованця в проекті "Котокафе"
- Завдання + рішення: створення прототипу для карток у проекті "фермерські продукти"
- Тест по другому розділу
РОЗДІЛ 3
структурні патерни
У цьому розділі розглянемо структурні патерни проектування
- Введення в структурні патерни
"Адаптер" (Adapter)
- Демо: виведення даних в новому форматі в Сервісі з продажу автомобілів
- Завдання + рішення: виведення даних в новому форматі в CRM-системі
- Демо: зміна колірної теми сервісу з продажу автомобілів
- Завдання + рішення: механізм колірного оформлення CRM-системи
- Демо: прискорення завантаження сторінок в Сервісі з продажу автомобілів
- Завдання + рішення: кешування даних в CRM-системі
- Демо: інкапсуляція базової конфігурації для нових запитів в Сервісі з продажу автомобілів
- Завдання + рішення: отримання завдань із зовнішньої CRM-систем
- Демо: виділення авто в списку за допомогою чекбоксу в Сервісі з продажу автомобілів
- Завдання + рішення: виділення завдань зі списку в CRM-системі
- Демо: обмеження часу доступу співробітників до сервісу з продажу автомобілів
- Завдання + рішення: блокування отримання даних в CRM-системі
- Тест по третьому розділу
поведінкові патерни
У цьому розділі розглянемо поведінкові патерни проектування
"Ланцюжок обов'язків" (Chain of Responsibility)
- Демо: висновок в картку товару інформації про наявність книг в проекті"по поличках"
- Завдання + рішення: висновок в картку рецепта даних про кількість страв в проекті"ще шматочок"
- Демо: отримання даних з сервера за допомогою AJAX-запиту в проекті"по поличках"
- Завдання + рішення: інструмент для отримання даних з нового джерела в проекті"ще шматочок"
- Демо: блокування виведення даних в певний проміжок часу в проекті"по поличках"
- Завдання + рішення: блокування виведення рецептів в певний час в проекті "ще шматочок"
- Демо: рамка для контейнера з книгами в проекті"по поличках"
- Завдання + рішення: рамка для контейнера з рецептами в проекті "ще шматочок"
- Демо: зовнішній скрипт для видалення блоку з новинками в проекті"по поличках"
- Завдання + рішення: зовнішній скрипт для видалення некоректних рецептів в проекті"ще шматочок"
- Демо: додавання темної теми в проекті"по поличках"
- Завдання + рішення: темна тема в проекті"ще шматочок"
- Демо: висновок шаблону картки товару без блоку з кількістю сторінок в проекті"по поличках"
- Завдання + рішення: висновок шаблону картки рецепта без блоку автора в проекті"ще шматочок"
- Демо: виділення нового видання книги за унікальним ідентифікатором
- Завдання + рішення: блокування рецепта в стадії розробки в проекті"ще шматочок"
- Демо: кнопка для зміни обкладинки книги на головному банері додатка"по поличках"
- Завдання + рішення: кнопка зміни заголовка сайту в проекті"ще шматочок"
- Демо: додавання символів-префіксів до назв книг в проекті"по поличках"
- Завдання + рішення: додавання символів-префіксів до назв рецептів в проекті"ще шматочок"
- Тест по четвертому розділу
MV * - патерни
У цьому розділі ми навчимося застосовувати Mv * - патерни проектування
"MVC"
- Демо: додавання фільтра готелів за вартістю в проекті "Седона"
- Завдання + рішення: додавання фільтра товарів за вартістю в проекті "Девайс"
- Демо: поетапне виведення елементів на сторінку в проекті "Седона"
- Завдання + рішення: поетапне завантаження елементів на сторінку в проекті "Девайс"
- Демо: додавання фільтра за типом житла в реальному часі в проекті "Седона"
- Завдання + рішення: фільтр по наявності Bluetooth в реальному часі в проекті "Девайс"
- Тест по п'ятому розділу
висновок
У цьому розділі ми підведемо підсумки курсу і закріпимо отримані знання
- Підводимо підсумки
- Фінальне тестування
- Додаткові матеріали
https://privatelink.de/?https://levelup.htmlacademy.ru/design-patterns