Відеокурс: Дизайн-принципи SOLID+

Складні принципи простими словами: проєктування класів та взаємодія між ними на прикладах з реальних проєктів.

Менторка: Наталя Ништа, Senior Software Engineer, 15+ років досвіду в IT, авторка статей на тему дизайн-принципів та програмування
Відеокурс: Дизайн-принципи SOLID+

    Курс присвячений вивченню принципів проєктування, побудові ефективних рішень в межах сервісу при проектуванні класів, їх відповідальності та взаємодії:
  • Як ефективно визначити межі і обовʼязки структур та класів.
  • Як навчитися контрактному програмуванню.
  • Як вчасно зупинитися і не використовувати зайве.
  • Аналіз мотивів “за” та “проти”, критичний підхід до інженерних викликів.
  • Закони проєктування та причини їх відкриття.

Менторка: Наталя Ништа, Senior Software Engineer, 15+ років досвіду в IT, авторка багатьох статей на тему дизайн-принципів та програмування


Чому курс зосереджується саме на принципах проєктування, а не на шаблонах? Якщо ви хочете круто грати в шахи, то вам потрібно почати спочатку розібратися, як шахові фігури мають рухатися по дошці (аналог принципів проєктування), а не зубрити одразу відомі шахові комбінації (аналог патернів програмування). Після проходження курсу, ви зрозумієте, чому принципи проєктування лежать в основі дизайн-патернів, та чому без них майже неможливо використати та адаптувати патерни під вашу конкретну задачу.

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

Ви навчитесь застосовувати на практиці:

Закон Конвея, закон Деметри, сегрегація інтерфейсів, принцип підстановки Барбари Лісков, єдина відповідальність, низька звʼязаність, висока спорідненість, API контракти, принципи DRY, YAGNI, KISS, лезо Оккама та багато іншого.

Ми записали всі матеріали та розділили їх на модулі: ви можете навчатися у зручному для вас темпі. А щоб поставити будь-які питання авторці курсу - приєднуйтесь до live Q&A сесій!

Формат

    Всі матеріали та відео курсу розташовані на навчальній платформі Workademy. Після покупки квитка, ви отримуєте доступ до курсу на пошту, вказану при реєстрації (протягом 1-2 робочих днів):
  • Презентації
  • Відеозаписи лекцій
  • Приклади коду з репозиторія.
  • Домашні завдання з використання принципів проєктування
  • Додаткові матеріали та посилання.
  • Для закріплення пройдених тем в програму включені домашні завдання та теоретичні тести, які писав не Chat GPT :) Ми подбали, щоб наші студенти отримали якісний контент, і наша менторка написала тести власноруч з урахуванням навчальної користі при їх проходженні. А також вона теж вирішує домашні завдання і детально пояснює свою версію розвʼязання задач.

Програма

Не повторюй себе: інкапсулюй
  • Вступ. Коротенько про китів ООП: базові принципи.
  • Рівень абстракції.
  • Принцип єдиної відповідальності (SOLID: SRP).
  • Лезо Оккама та KISS.
Спираємось на інтерфейси
  • API та Client.
  • Принцип розділення інтерфейсів (SOLID: ISP).
  • Інтерфейс проти Абстрактного класу: епічна битва.
  • Інтерфейс як абстракція.
  • Інкапсуляція змінних аспектів.
  • Закон Конвея.
Питання контролю: хто чим керує
  • Принцип відкритості та закритості (SOLID: OCP).
  • Закон Деметри.
  • Які бувають залежності.
  • Публічний та опублікований інтерфейси.
  • Інверсія контролю в Голлівудському принципі.
Джерело неподільного Моноліту
  • Принцип інверсії залежностей (SOLID: DIP).
  • Проблеми зі словом "new".
Таке дуже "просте" Наслідування
  • Невідоме наслідування.
  • Що таке композиція та делегування: шаблон проектування "Стратегія".
  • Stateful та Stateless об'єкти.
  • Коректне використання заборони наслідування: шаблон Immutable Object.
  • Однопоточність та багатопоточність і при чому тут заборона наслідування.
Міксуємо LSP із забороною наслідування та інверсією залежностей
  • Принцип підстановки Барбари Лісков в теорії (SOLID: LSP).
  • LSP людською мовою.
  • Наслідки порушення LSP в деталях.
  • IoC + LSP + final.
  • Заборона наслідування у зовнішніх бібліотеках.

Концепція курсу та всі матеріали курсу є інтелектуальною власністю Fwdays. Копіювання змісту та матеріалів курсу можливе виключно за згодою Fwdays.

Менторка: Наталя Ништа, Senior Software Engineer

— має вищу профільну освіту за фахом інженер-програміст

— досвід в індустрії 15+ років

— авторка статей на тему дизайн-принципів та програмування

— в своїй компанії 8 років читає курс з дизайн-принципів в ООП

— Розказує в школах про програмування та любить пояснювати складні речі просто і зрозуміло.

Linkedin

Середня оцінка 9,5

Ділимось реальними відгуками з live-курсу (з дозволу учасників)

"Якщо ви у невеликій фірмі, вас нема кому рев'ювити і бити по пальцям, програмуєте вже рік-два-більше й бачите, що добавити маленьку фічу у ваш код веде до вигоряння, депресії і переписування проєкту з нуля - то цей курс точно для вас. Для розуміння основ і усвідомлення, що це лише перші кроки."

"Для розуміння, як писати оптимально код, щоб його легко можна було доповнювати та підтримувати."

"Однозначно не для тих, у кого ще не було від власного або чужого коду реакції 'как-то тєкст нємножка па-дебільнаму напісан'. :) Курс допоміг зрозуміти, нащо досвідчені програмісти витрачають 80% часу на пояснення чому вони так зробили і 20% на те, як вони це зробили. Також тепер знаю, що робити і куди йти, коли отримую лаконічний коментар до пулл-реквесту 'почитай про SOLID'."
"Порадила б всім знайти час на цей курс для засвоєння/повторення матеріалу, бо навіть мій дід-тімлід з 20-річним стажем почав гратись з моєю домашкою, коли спитала його дещо, і став цікавитись, що я там за курс проходжу. Таким початківцям як я, які поки що бачили лише джаваскрипт, чесно, - було важко (бо ще й всі приклади на php). АЛЕ! Мені точно страшні теоретичні книжки стали вже не такі й страшні і з'явилось розуміння багатьох понять, котрі здавались чимось аж надто абстрактним."

"Можна пройти лекції просто як слухач і не напрягатись сильно, а можна заморочитись і вникати глибше - особливо над домашкою є над чим поворушити мізками."

"П.С. Палке серденько лекторці за те, що на російськомовні запитання відповідає українською!"


Вартість участі

Attendee ticket

Доступ до курсу на онлайн-платформі (1 рік)

Live Q&A сесії з менторкою Наталєю Ништою

Доступ до TG-чату, де менторка буде відповідати на питання

Додаткові матеріали від менторки

Сертифікат учасника за умови проходження всього курсу

Важливо! Після оплати протягом 1-2 робочих днів ви отримаєте два листа: від Fwdays та від платформи Workademy з доступом до курсу.

5 550 грн ≈€115
Купити квиток
−10% для учасників попередніх подій 
Нараховується автоматично тому акаунту, з якого була здійснена покупка
−30% для студентів денної форми навчання 
Надішліть фото або скан студентського квитка на academy@fwdays.com, і ми відправимо вам промокод
Діють групові знижки 
Напишіть нам на academy@fwdays.com для прорахування вашої знижки.
Увійти
Або поштою
Увійти
Або поштою
Реєстрація через e-mail
Реєстрація через e-mail
Забули пароль?