撰写了文章 发布于 2022-11-03 00:07:11
如何阅读工程代码,个人小结
如何阅读源码
过去阅读其他项目的代码,要么是只关注项目中的部分逻辑是如何实现的,或者具体的某一个模块他的作用是什么。在学习的状态中,自己不大可能会踏出自己的舒适区,所以当真正需要参与到一个大型项目(与过往的项目相比)中时,常常阅读的十分痛苦,甚至完全不理解部分代码的具体功能,只能通过函数名判断功能后草草跳过,陷入到类和函数的不断嵌套中。
当意识到这样的问题之后,我开始有意识的思考怎么才能让我能自然的去理解每段代码的含义。
从数据入手
有时候我也会被要求写一个完整的功能模块,在构建一个模块的过程中,我最先确定的是数据,然后到数据的初值,最后到方法。或许这样的流程并不普适,但它确实让我意识到,理解数据,观察数据的整个生命周期,比跟着方法的嵌套一层层的跳转来的清晰许多。另一方面,对于一个功能,实现的方法或许多种多样,但对于数据来说,得到的结果变化并不太大,数据是与功能紧密相关的。所以阅读代码时将关注点更多的分配给数据而不是方法能让阅读变的轻松一些。
分析其中的设计模式
设计模式可以理解为是一些设计问题成熟的解决方案。这些代码中往往包含了许多高级的技巧。对于想我这样经验尚浅的人,在没有意识的情况下之间的去阅读这些代码往往会碰壁。同样的,设计模式也可以理解成对项目细节的一种实现套路。对于套路来说,他的变数不大,所以掌握,或者对常用到的设计模式有一个基本的认识,在遇到这类代码时就不至于太过窘迫。
其他一些有效的方法
- 利用版本控制系统(Git)从项目最开始阅读项目
- 根据文档理解项目结构后利用类图辅助理解模块是具体结构
- 通过断点观察程序的运行
目录