<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Validated on PlumePHP</title><link>https://plumephp.com/tags/validated/</link><description>Recent content in Validated on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Mon, 28 Sep 2026 11:00:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/validated/index.xml" rel="self" type="application/rss+xml"/><item><title>Scala 函数式错误处理实战：Either、Validated 与 Effect 的错误通道</title><link>https://plumephp.com/scala-functional-error-handling/</link><pubDate>Mon, 28 Sep 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/scala-functional-error-handling/</guid><description>&lt;p&gt;异常（&lt;code&gt;try/catch&lt;/code&gt;）的问题不是「会出错」，而是&lt;strong&gt;错误不在地图里&lt;/strong&gt;——函数签名看不出它会抛什么、在哪抛、调用方要不要处理。函数式错误处理的核心是把错误变成&lt;strong&gt;类型的一部分&lt;/strong&gt;：&lt;code&gt;Either[E, A]&lt;/code&gt; 说清了「要么失败带 E，要么成功带 A」，编译器帮你盯着「每个错误分支都处理了」。本文从异常的本质讲起，到 Either/Validated 的建模，再到 Effect 系统的错误通道与跨层传播，最后给出「什么时候用异常、什么时候用 Either」的决策框架。&lt;/p&gt;</description></item></channel></rss>