做程序员,要相信bug无处不在的真理。
我们在查找bug的过程,就叫调试(debugging)。
0x01 暴力测试
暴力测试是最简单的。
在程序中写入输出语句(如printf、NSLog等)来输出程序中的控制流程和一些数据,这就是暴力测试。
对于小系统或者刚刚学习的新系统,暴力测试非常有用。
0x02 Xcode的调试器
Xcode有一个调试器(debugger)。
它可以中断程序,让我们在程序运行过程中检查程序的数据甚至修改程序,完成后可以恢复程序运行并查看结果。
它还让我们可以单步执行代码,减缓程序运行速度,细致地查看代码会如何对数据进行改动。
Xcode还有一个提供大量概述信息的调试窗口,以及一个可以直接向调试器发送调试命令的调试控制台(Console)。
0x03 开始调试
设置断点Breakpoint
断点是调试工作中必不可少的工具。
点击代码编辑区的左侧边栏,可以在当前鼠标所在行设置一个断点,Xcode用蓝色箭头标签标示。
不需要断点的话可以单击蓝色标签使它失效,也可以直接拖出边栏删掉。