Swift 错误处理全解析
1. 错误处理的重要性
在软件开发中,我们常常会遇到软件崩溃或者做出意外行为的情况。大多数时候,这些问题是由于错误处理不当造成的。错误处理在软件开发里就像是无名英雄,很少有人把它当作优先事项,而且如果处理得当,几乎没人会注意到。但它却至关重要,如果处理不好,软件用户肯定会注意到并抱怨。
2. 错误的分类
错误主要分为两大类:可恢复错误和不可恢复错误。
- 可恢复错误 :通常是我们必须做好准备并处理的事件。常见的可恢复错误示例如下:
- 尝试打开不存在的文件。
- 尝试与已关闭的服务器通信。
- 设备没有网络连接时尝试通信。
Swift 为处理可恢复错误提供了丰富的工具。当调用可能因可恢复错误而失败的函数时,Swift 会要求我们承认并处理这种可能性。
- 不可恢复错误 :是一种特殊的 bug。例如,强制解包包含 nil 的可选值,或者尝试访问数组末尾之后的元素。这些不可恢复错误会导致程序陷入陷阱。陷阱是向操作系统发出的立即停止当前执行程序的命令。如果从 Xcode 运行程序,它会在调试器中停止并显示错误发生的位置。对于运行程序的用户来说,陷阱就像程序崩溃一样,程序会立即关闭。Swift 对这类错误处理严格,是因为这些错误不可恢复,程序无法修复问题。
3. 构建简单的两阶段编译器
我们将构建一个非常简单的两阶段编译器,实现一个可以计算基本数学表达式的函数。例如,输入字符串 "10 + 3 + 5" ,函数将返回整数
超级会员免费看
订阅专栏 解锁全文
6759

被折叠的 条评论
为什么被折叠?



