如何阅读程序源代码?

如何阅读程序源代码?

一个程序员,除了写代码以外,最重要的事是阅读其它程序员的源代码。
写代码与作家写文章是类似的,需要不断地修改,日趋完善才能符合代码
的质量要求。但是有太多的程序员很少阅读其他人的代码。他们说看不懂。
其实是没有认真看。

阅读源代码是有规律可循的。代码按照语言方面进行分类。
例如汇编语言的代码阅读,C语言等过程性的
高级程序语言的代码阅读,还有SQL,函数式编程语言的代码阅读。

读代码的目的,第一点是理解程序的功能,第二点能够在它的基础上进行简单的修改。
第三点是学习优秀的编程的方式和方法,第四点是理解程序的调用方式和抽象的方法。
第五点是学习编程的结构与范式。第六点是学习优秀代码的可读性,可移植性,健壮性,
兼容性等方面的优秀做法。

读代码的方法,以汇编语言为例,汇编语言的语句理解,最重要的是理解该汇编语言
的内存模型。然后是准备好该汇编语言的寄存器列表和指令列表。再逐个语句阅读时,
写出语句的含义并且开始画出它的程序流程图,最后进行判断该段程序的功能。

java程序语言的程序阅读,开始于Main的位置,这个是应用程序的执行入口。
或者是spring 框架中的applicationContext指定的程序位置。必须先查找并且绘制出
类的依赖关系图,再找到类的加载顺序,具体到某个类的内部再读到它的属性和方法的列表。
C语言之类的语言,要用代码分析工具,给出函数的调用的依赖关系图,能够更快地理解程序。

对于SQL的代码阅读,最重要的是理解SQL的语句的执行顺序,它是先执行嵌套的内层的语句,
再逐层向外执行。这与函数式编程的执行顺序是一致的,与过程式以及对象式的编程语言的
执行顺序正好相反。SQL语句的执行,最好能看懂它的执行计划。

在代码的可读性方面,有代码格式的规范,变量,方法名等标识符的命名的规范,注释编写的规范
在可移植性方面,例如C语言的宏的规范的编写。
在兼容性方面,例如CSS代码,为了WEB浏览器方面的考虑的特殊写法。
凡此种种,本篇仅写一些常见的指导性的建议。下面的篇章,将讨论一些程序,做为案例,
进行相关的讲解。

发布了108 篇原创文章 · 获赞 16 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/gggwfn1982/article/details/103112274