<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Обработка Ошибок on Digitable courses</title>
    <link>https://courses.digitable.life/tags/%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/</link>
    <description>Recent content in Обработка Ошибок on Digitable courses</description>
    <generator>Hugo</generator>
    <language>ru-RU</language>
    <lastBuildDate>Sat, 01 Aug 2026 00:12:59 +0300</lastBuildDate>
    <atom:link href="https://courses.digitable.life/tags/%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Монады без страха: что это на самом деле и зачем</title>
      <link>https://courses.digitable.life/post/functional-programming/08-monads/</link>
      <pubDate>Thu, 16 Jul 2026 10:00:00 +0300</pubDate>
      <guid>https://courses.digitable.life/post/functional-programming/08-monads/</guid>
      <description>Монада — не философия, а ответ на конкретную боль: как соединять функции, которые возвращают не значение, а значение в контейнере. Разбираем от лестницы if-ов до законов, do-нотации, трансформеров и честной цены абстракции.</description>
    </item>
    <item>
      <title>Обработка ошибок в ФП: Option, Either, Result, накопление ошибок</title>
      <link>https://courses.digitable.life/post/functional-programming/10-error-handling/</link>
      <pubDate>Thu, 16 Jul 2026 10:00:00 +0300</pubDate>
      <guid>https://courses.digitable.life/post/functional-programming/10-error-handling/</guid>
      <description>Почему исключения и null плохо масштабируются, как Option, Either и Result делают отказ частью типа, чем аппликативное накопление ошибок отличается от монадического короткого замыкания и сколько всё это стоит в проде.</description>
    </item>
    <item>
      <title>Обработка ошибок, контракты и отказоустойчивое мышление</title>
      <link>https://courses.digitable.life/post/principles/08-errors-and-resilience/</link>
      <pubDate>Thu, 16 Jul 2026 10:00:00 +0300</pubDate>
      <guid>https://courses.digitable.life/post/principles/08-errors-and-resilience/</guid>
      <description>Как отличить баг от ожидаемого исхода, зачем нужны предусловия и инварианты, чем исключения отличаются от result-типов, и как таймауты, ретраи, идемпотентность и circuit breaker превращают ненадёжные компоненты в надёжную систему.</description>
    </item>
    <item>
      <title>Функторы и аппликативы: контейнеры, к которым применяют функции</title>
      <link>https://courses.digitable.life/post/functional-programming/07-functors-and-applicatives/</link>
      <pubDate>Thu, 16 Jul 2026 10:00:00 +0300</pubDate>
      <guid>https://courses.digitable.life/post/functional-programming/07-functors-and-applicatives/</guid>
      <description>Как из повторяющегося кода «распаковать — применить — запаковать» рождаются функтор и аппликатив, зачем нужны их законы и почему валидация формы с накоплением всех ошибок сразу — это аппликатив, а не монада.</description>
    </item>
  </channel>
</rss>
