重构——55以异常取代错误码(Replace Error Code with Exception)

简介: 以异常取代错误码(Replace Error Code with Exception):某个函数返回一个特定的错误码,用以表示某种错误情况;改用异常

以异常取代错误码(Replace Error Code with Exception)

某个函数返回一个特定的错误码,用以表示某种错误情况;改用异常

一、动机

代码的可理解性使我们虔诚追求的目标

二、做法

1、决定应该抛出受控异常还是非受控异常

2、如果调用者有责任在调用前检查必要状态,就抛出非受控异常

3、找到该函数的所有调用者,对它们进行相应调整,让它们使用异常

4、修改该函数的签名,令它反映出新用法

目录
相关文章
|
6月前
|
Java 应用服务中间件 微服务
【Java异常】feign.FeignException: status 400 reading xxx 异常解决方案
【Java异常】feign.FeignException: status 400 reading xxx 异常解决方案
56 0
|
6月前
|
BI 数据库
SAP ABAP 释放 TR 遇到错误消息 ended with return code 8 的含义和处理办法
SAP ABAP 释放 TR 遇到错误消息 ended with return code 8 的含义和处理办法
77 0
|
21天前
|
API Android开发 开发者
debug常见错误,出现debug时出现跑进为条件为false的if语句,DELETE_FAILED_INTERNAL_ERROR Error while In
debug常见错误,出现debug时出现跑进为条件为false的if语句,DELETE_FAILED_INTERNAL_ERROR Error while In
20 5
|
3月前
|
Python
使用 raise_exception 装饰器,简化 if not ... raise ... 抛出异常的过程
使用 raise_exception 装饰器,简化 if not ... raise ... 抛出异常的过程
33 0
|
6月前
|
JSON Java 测试技术
[已解决]HttpMessageNotReadableException: JSON parse error: Unexpected character:解析JSON时出现异常的问题分析与解决方案
[已解决]HttpMessageNotReadableException: JSON parse error: Unexpected character:解析JSON时出现异常的问题分析与解决方案
169 0
|
7月前
|
数据安全/隐私保护
某龙旅行网code分析
某龙旅行网code分析
32 1
|
C++
VS Code使用过程中遇到的一些问题
VS Code使用过程中遇到的一些问题
43 0
exception(359): error C2220: 警告被视为错误 - 没有生成“object”文件
exception(359): error C2220: 警告被视为错误 - 没有生成“object”文件
83 0
exception(359): error C2220: 警告被视为错误 - 没有生成“object”文件
|
安全 Java 编译器
code中的异常errroy
throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理。而throw则是指抛出的一个具体的异常类型。
75 0
|
JSON 小程序 数据格式
微信小程序数据赋值错误不停地报 SyntaxError: Unexpected end of JSON input错误
微信小程序数据赋值错误不停地报 SyntaxError: Unexpected end of JSON input错误
253 0
微信小程序数据赋值错误不停地报 SyntaxError: Unexpected end of JSON input错误