Онлайн-курс «Чистий код та патерни проєктування» | robot_dreams
  • онлайн-курс
  • 21 заняття
  • 30+ патернів
  • індивідуальний фідбек

ЧИСТИЙ КОД І ПАТЕРНИ ПРОЄКТУВАННЯ

Створюйте код, який масштабують, а не переписують.

Лектор: Олег Фокін

Principal Software Engineer у

SoftServe

Курс для розробників та QA Automation, які:

 
icon
Постійно переписують код
Ви додаєте фічу, а отримуєте нові баги. Системної архітектури немає, тож найменші зміни призводять до падіння.
 
 
icon
Бояться торкатися legacy
В коді плутанина, а тимчасові рішення стали постійними. Простіше переписати, ніж розібратись — але і на це не вистачає ресурсу.
 
 
icon
Хочуть зростати у кар’єрі
Задачі складнішають, а ви досі сумніваєтесь у своїх рішеннях та не маєте зрозумілих інструментів, які реально працюють.
 

На курсі ви

  • Бонус:

    1:1 з обговоренням
    вашого проєкту для
    трьох лідерів курсу

  • Курсовий проєкт:

    кейс для портфоліо
    з використанням
    патернів

  • Тривалість:

    21 онлайн-заняття
    протягом 1,5 місяців

Навчитеся проєктувати рішення, які легко підтримуються, масштабуються та вписуються в бізнес-логіку продукту. Впорядкуєте знання, структуруєте підходи, опануєте 30+ патернів, зокрема GoF, GRASP та DDD для міцної архітектури. Дізнаєтесь, як рефакторити чужий код, оптимізувати й спрощувати власний, та отримаєте практичні поради від лектора.

Олег Фокін

Principal Software Engineer в SoftServe
former Lead Developer в Ubisoft

  • має 20+ років досвіду в розробці програмного забезпечення

  • працював з іграми, CAD-системами, хмарною архітектурою, AI/ML, поліграфічними програмами та редакторами векторної графіки

  • навчався в програмах Google Bootcamp та Google Cloud Professional Architect, має сильну експертизу в проєктуванні масштабованих систем

  • основна спеціалізація — програмування на С++

  • навчить не просто писати код «правильно», а мислити як інженер, що розуміє код у контексті систем, бізнесу й команди

Програма

  • 01 заняття
    8/20/2025 19:00

    Знайомство з курсом

    • Познайомитеся з лектором та куратором курсу
    • Дізнаєтесь, як користуватися LMS
    • Розглянете структуру курсу, завдання та особливості
  • 02 заняття
    8/20/2025 19:00

    Принципи створення структурованого коду

    • Розберетеся в концепціях програмування, дізнаєтеся, які основні інструменти та підходи існують для покращення коду
    • Навчитеся пояснювати свої думки та код за допомогою діаграм UML
    • Розглянете поняття «чистий код», «рефакторинг», Test-Driven Development
  • 03 заняття
    8/27/2025 19:00

    Рефакторинг «поганого» коду

    • Розберетеся в типах рефакторингу
    • Ознайомитеся з ознаками «поганого» коду
    • Наочно побачите, чим «гарний» код відрізняється від «поганого»
    • Дізнаєтесь, як рефакторити «поганий» код під час livecoding-сесії
  • 04 заняття
    9/1/2025 19:00

    Антипатерни

    • Дізнаєтеся, що таке антипатерни
    • Навчитесь уникати або виправляти антипатерни
    • Зрозумієте, що таке надмірне та недостатнє проєктування
    • Опануєте «критичне» та «конструктивне» бачення структурування коду
  • 05 заняття
    9/3/2025 19:00

    Категорії та класифікації патернів

    • Навчитеся класифікувати патерни
    • Ознайомитеся з GRASP- та GoF-патернами
    • Розглянете способи реалізації патернів
  • 06 заняття
    9/8/2025 19:00

    Q&A з лектором

    • Розглянете основні помилки з домашніх завдань
    • Матимете чіткіше оверв’ю пройденого матеріалу
    • Отримаєте відповіді на незрозумілі запитання
  • 07 заняття
    9/10/2025 19:00

    Породжувальні патерни. Part № 1

    • Дізнаєтесь, які завдання розв’язують породжувальні патерни
    • Навчитеся створювати об’єкти за допомогою породжувальних патернів: Factory Method, Abstract Factory, Builder, Prototype
  • 08 заняття
    9/15/2025 19:00

    Породжувальні патерни. Part № 2

    • Ознайомитеся з патерном Singleton та прикладами його реалізації
    • Навчитесь уникати його недоліків та застосовувати альтернативні техніки
    • Попрацюєте з іншими корисними породжувальними патернами
  • 09 заняття
    9/17/2025 19:00

    Q&A з лектором

    • Розглянете основні помилки з домашніх завдань
    • Матимете чіткіше оверв’ю пройденого матеріалу
    • Отримаєте відповіді на незрозумілі запитання
  • 10 заняття
    9/22/2025 19:00

    Структурні патерни. Part № 1

    • Дізнаєтесь, які завдання розв’язують структурні патерни
    • Зрозумієте відмінність між композицією та успадкуванням та як обрати механізм взаємодії об’єктів
    • Розберете структурні патерни: Adapter, Proxy, Composite, Facade
    • Навчитеся застосовувати ці патерни на практиці
  • 11 заняття
    9/24/2025 19:00

    Структурні патерни. Part № 2

    • Розберете патерни Decorator та Flyweight та дізнаєтесь, які проблеми вони розв’язують
    • Застосуєте Decorator для логування та обробки помилок
    • Задієте Flyweight для оптимального використовування об’єктів, залежних від контенту
  • 12 заняття
    9/29/2025 19:00

    Структурні патерни. Part № 3

    • Розглянете патерн Bridge та впораєтеся з його використанням
    • Застосуєте Opaque pointer (Pimpl) для приховування деталей імплементації
    • Зрозумієте концепцію функціональної композиції та побудови Pipeline
  • 13 заняття
    10/1/2025 19:00

    Q&A з лектором

    • Розглянете основні помилки з домашніх завдань
    • Матимете чіткіше оверв’ю пройденого матеріалу
    • Отримаєте відповіді на незрозумілі запитання
  • 14 заняття
    10/6/2025 19:00

    Патерни поведінки. Part № 1

    • Дізнаєтесь, які завдання розв’язують патерни поведінки
    • Зрозумієте концепцію First-class function
    • Розглянете патерни: Command, Scheduled task, Null object, Mock object
    • Навчитесь застосовувати ці патерни на практиці
  • 15 заняття
    10/8/2025 19:00

    Патерни поведінки. Part № 2

    • Розглянете патерни: State, Memento, Mediator, Observer, Chain of Responsibility, Template Method, Strategy, Interpreter та побачите їх застосування на практиці
    • Використаєте патерн State для реалізації програми як кінцевого автомата, інкапсуляції поточного стану та передбачуваних змін стану програми
    • Опануєте патерн Memento для реалізації автозбереження
    • Застосуєте патерн Observer для синхронізації/узгодження поведінки різних частин програми
  • 16 заняття
    10/13/2025 19:00

    Патерни поведінки. Part № 3

    • Дізнаєтесь, які бувають ітератори та як вони реалізовані
    • Зрозумієте подвійну диспетчеризацію та патерн Visitor
    • Навчитеся застосовувати Visitor в різних практичних завданнях
    • Побачите зв’язки між патернами та складете повну картину їхньої взаємодії
  • 17 заняття
    10/15/2025 19:00

    Q&A з лектором

    • Розглянете основні помилки з домашніх завдань
    • Матимете чіткіше оверв’ю пройденого матеріалу
    • Отримаєте відповіді на незрозумілі запитання
  • 18 заняття
    10/20/2025 19:00

    Patterns of Enterprise Application. Part № 1

    • Дізнаєтесь, як розвивалися принципи проєктування та розв’язання проблем масштабування
    • Розберетеся в завданнях, що стоять перед сучасними програмними системами
  • 19 заняття
    10/22/2025 19:00

    Patterns of Enterprise Application. Part № 2

    • Розберетеся в ORM-патернах
    • Попрактикуєте найкращі патерни паралелізму
  • 20 заняття
    10/27/2025 19:00

    Підсумки та roadmap із розвитку кар’єри

    • Отримаєте рекомендації від лектора щодо подальшого кар’єрного розвитку
    • Дізнаєтесь, які найпопулярніші запитання ставлять на співбесідах в IT-компаніях
  • 21 заняття
    11/3/2025 19:00

    Презентація курсового проєкту

    • Презентуєте курсовий проєкт лектору та колегам

реєстрація

Реєструйтеся на курс, щоб опанувати понад 30 патернів проєктування та спростити процес розробки.

 
 
 
Реєструючись, ви погоджуєтеся з умовами договору-оферти та політикою конфіденційності.