JavaRush
AI Academy
new
Акція
Університет
Java FullStack
Python FullStack
AI Native Developer
new
Навчання
Курси
Задачі
Опитування
Ігри
Допомога
Графік стусанів
Стажування
Спільнота
Користувачі
Форум
Чат
Статті
Історії успіху
Дії
Відгуки
Передплати
Світла тема

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Детальний розбір підписки ( +=)

    C# SELF
    53 рівень, 0 лекція
    Розбираємося, як працює підписка на події в C#: що таке мультикастові делегати та їхній invocation list, як компілятор розгортає +=/ -= у виклики Delegate. Combine/ Remove, від чого нас захищає ключове слово event і які пастки трапляються за множинних підписок і з лямбдами. Усе — на практичних прикладах з EventHandler і розбором нюансів.
    Відкрита
  • Відписка від подій ( -=) і витоки памʼяті

    C# SELF
    53 рівень, 1 лекція
    У цій лекції розберемося, чому забута підписка на подію призводить до витоків памʼяті у .NET, як правильно відписуватися оператором -=, де й коли відписуватися (включно з реалізацією IDisposable), як безпечно працювати з лямбда-виразами та яких типових помилок припускаються розробники під час роботи з подіями.
    Відкрита
  • Підписники та безпечний виклик подій

    C# SELF
    53 рівень, 2 лекція
    Розбираємо, як працюють підписки на події в C#: додавання й видалення обробників, що ховається за делегатами та списком виклику, чому важливо відписуватися і як безпечно викликати події в багатопотоковому коді. Поговоримо про пастки (винятки в обробниках, гонки даних) і практичні прийоми: локальна копія делегата, перебирання через GetInvocationList(), одноразові підписки та масова відписка.
    Відкрита
  • Патерн «Спостерігач» ( Observer)

    C# SELF
    53 рівень, 3 лекція
    У цій лекції розглянемо патерн проєктування Observer: як відокремити видавця від підписників, щоб не порушувати OCP, і як це елегантно реалізовано в C# через події та делегати. Порівняємо «ручну» реалізацію з інтерфейсами й списком спостерігачів із варіантом на подіях ( EventHandler<T>), під’єднаємо кількох слухачів до Worker, обговоримо плюси й типові пастки (витоки через підписників, які не відписалися; множинна підписка; винятки в обробниках), а також візуалізуємо типову схему витоків.
    Відкрита
  • Практичні сценарії та найкращі практики

    C# SELF
    53 рівень, 4 лекція
    У цій лекції розглянемо реальні сценарії використання подій у .NET: реакцію на дії користувача, сповіщення про прогрес і завершення операцій, події життєвого циклу доменних об’єктів, роботу в багатопоточному середовищі (маршалінг через SynchronizationContext/ Dispatcher) та патерн Event Aggregator. Обговоримо найкращі практики: стандартні делегати EventHandler/ EventHandler<T>, незмінні EventArgs, безпечний виклик через ?.Invoke, інкапсуляцію через OnEventName, відписку і запобігання витокам, а також потокобезпечність.
    Відкрита
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush