主要搞清楚该模块如何完成功能,包括初始化及入口,功能一览,主要功能的流程(函数调用),主要数据结构,关键实现机制等。
2. 如何开展解析工作(五角星代表难度指数)
① 解析准备:找出该模块的所有相关源码文件,结合已有的常识和标准,判断模块的体制和框架,搞清楚初始化,入口和功能一览。★
② 流程解析:从具体功能入手,解析该功能的函数调用,包括各种分支进入的条件(什么情况下),调用的函数,携带的参数等,搞清楚主要功能的流程。★★★
③ 数据结构解析:从数据类入手,解析类的结构和功能,包括类的注释,类的声明,成员变量,构造方法,成员方法等,搞清楚主要数据结构。★★
④ 关键函数解析:从关键函数入手,解析函数的内部执行流程,包括函数的注释,输入值,返回值,用到的变量和方法,分支和循环等,搞清楚关键实现机制。★★★★
3. 一些注意事项
① 熟悉工具和相关标准,尽量独立自主地进行解析,这样才能真正明白。
② 要及时总结并形成解析文档,产出关系图,功能树,流程图,类图,序列图,类说明等供演示说明用的图。
③ 把握一些原则:纲举目张,优先把宏观的东西先搞清楚,等把宏观的东西都弄明白了,细节问题也好理解了;循序渐进,搞清楚能搞清楚的,搞不清楚的变量和方法可以在全局搜索,看看哪里也用上了;提纲挈领,把握主要框架和关键细节。