一、代码排错和中医理论很相似
传统中医诊断讲究:“望闻问切”
望:指对病人的神色形态等进行有目的的观察,以测知病变。中医大量实践认识到,病人的外在变现和内部病变有相关性。
其实排除也是一样,既然有Bug,那么表现多半是异常的,我们先观察这种表现。
闻:包括听声音和闻气味。
问:了解过往的病史,了解病因,发病的经过和治疗过程。
这有点类似于复现Bug,了解触发Bug的时机和过程。了解哪个步骤,哪个接口出了问题。
切:指摸脉象来推测疾病。
类似于通过抓请求响应(浏览器f12或者抓包工具)根据请求参数和响应码判断问题出在前端还是后端。
通过错误日志等提供的信息综合分析。
中医是靠经验的
老中医厉害是因为见多识广,见到的病例多,趟过的坑多,这点和程序员很相似。
很多医生根据病状,就大概知道可能得原因。
优秀的经验丰富的程序员,遇到一些错误的表现,就大概知道问题出现在哪里。
因为他们遇到过类似的情况,思考过类似的情况,看过别人的案例等。