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

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Контракт помилок: винятки та «помилка як значення»

    Kotlin SELF
    40 рівень, 0 лекція
    Розбираємося, як проєктувати «контракт помилок» у Kotlin: коли доречні винятки, а коли краще повертати помилку як значення через sealed class з варіантами Ok/ Error. Окремо вивчаємо fail-fast перевірки require(...) і check(...), обмеження підходу з null, а також привʼязуємо політику помилок до шарів застосунку (CLI / domain / storage) і закріплюємо все на прикладі команди remove.
    Відкрита
  • try/catch як вираз

    Kotlin SELF
    40 рівень, 1 лекція
    Розбираємо ідіоматичний підхід Kotlin: конструкція try/ catch повертає значення й може використовуватися як вираз (так само, як if і when). На практичних прикладах парсингу CLI вчимося отримувати Int або Int?, робити ранній return, писати кілька catch у правильному порядку, тримати «небезпечну ділянку» вузькою та коректно застосовувати finally. Наприкінці — типові помилки й поради зі стилю для Kotlin 2.3.
    Відкрита
  • Власні винятки та першопричина

    Kotlin SELF
    40 рівень, 2 лекція
    Розбираємося, навіщо в застосунку потрібні «власні» винятки, чому важливо не втрачати першопричину ( cause), як правильно робити обгортання (wrapping: спіймав → додав контекст → кинув далі) і чим require()/ check() відрізняються від помилок предметної області. Закріплюємо техніку на міні-застосунку «трекер витрат» із командами add/ list/ exit і зрозумілими повідомленнями для користувача.
    Відкрита
  • Result<T> — як зберігати статус «успіх/помилка»

    Kotlin SELF
    40 рівень, 3 лекція
    Розбираємо Result<T> у Kotlin як явний контракт «успіх або помилка»: як створювати результати через Result.success(...) і Result.failure(...), як діставати значення методами getOrNull(), exceptionOrNull(), getOrElse { ... }, getOrThrow(), а також як будувати CLI-потоки без «лісу» try/ catch за допомогою onSuccess і onFailure. На практиці показуємо «пакування» помилок введення (наприклад, NumberFormatException) і типові пастки, коли Result починають використовувати як «глушник» проблем.
    Відкрита
  • runCatching: try/catch, onSuccess/onFailure

    Kotlin SELF
    40 рівень, 4 лекція
    Розбираємо, як runCatching «пакує» try / catch у Result<T>; як безпечно діставати значення через getOrNull(), getOrElse { ... }, getOrThrow(); і як використовувати onSuccess { ... }/ onFailure { ... } для побічних ефектів. На прикладі CLI-парсингу команд показуємо, де runCatching спрощує код, а де призводить до «глушіння» помилок, — і коли чесний try / catch читається краще.
    Відкрита
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush