告别通用 Exception:为何你的项目需要一套自定义异常体系?
在我们的日常编码中,try-catch
块是再熟悉不过的老朋友了。但很多时候,我们的 catch
语句里捕获的是一个宽泛的 Exception
,或者是在一个方法签名上罗列着一长串 throws IOException, SQLException, TimeoutException...
。
这能工作,但不够优雅,也不够健壮。当项目规模变大、团队成员增多时,混乱的异常处理会成为滋生 Bug 和增加维护成本的温床。
那么,有没有更好的方式呢?答案是肯定的:为你的应用程序或框架设计一套自定义的异常体系。
这并非什么高深莫测的技术,而是像 Spring、Hadoop、Flink 等几乎所有成熟框架都在践行的最佳实践。本文将带你了解“为什么”以及“怎么做”。