<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Error Handling on PlumePHP</title><link>https://plumephp.com/tags/error-handling/</link><description>Recent content in Error Handling on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Thu, 15 Dec 2022 13:40:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/error-handling/index.xml" rel="self" type="application/rss+xml"/><item><title>错误处理的高级技巧：从基础到企业级</title><link>https://plumephp.com/70-advanced-error-handling/</link><pubDate>Thu, 15 Dec 2022 13:40:00 +0800</pubDate><guid>https://plumephp.com/70-advanced-error-handling/</guid><description>&lt;h1 id="错误处理的高级技巧从基础到企业级"&gt;错误处理的高级技巧：从基础到企业级&lt;/h1&gt;
&lt;p&gt;Go 的错误处理以其简洁性著称，但简洁不等于简单。在实际项目中，我们需要处理复杂的错误场景：错误包装、错误链、错误分类、错误监控等。&lt;/p&gt;
&lt;p&gt;本文将带你从基础的错误处理进阶到企业级的错误处理策略。&lt;/p&gt;</description></item><item><title>错误处理的高级技巧</title><link>https://plumephp.com/42-advanced-error-handling/</link><pubDate>Sat, 03 Apr 2021 09:15:00 +0800</pubDate><guid>https://plumephp.com/42-advanced-error-handling/</guid><description>&lt;h1 id="错误处理的高级技巧"&gt;错误处理的高级技巧&lt;/h1&gt;
&lt;p&gt;如果你写过 Go 代码，一定对这样的代码不陌生：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-go" data-lang="go"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;err&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;doSomething&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;err&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;nil&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;return&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;err&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Go 的错误处理方式一直备受争议。有人认为它太啰嗦，有人认为它很清晰。不管你怎么看，Go 1.13 引入的错误包装机制让错误处理变得更加优雅和强大。&lt;/p&gt;</description></item></channel></rss>