如何高效的阅读项目源代码 All In One
如何高效的阅读项目源代码 All In One
《代码阁读方法与实践》-- (希腊) Diomidis Spinellis 著 / 赵学良 译
无论是沟通程序的操作,还是将知识存储为可执行的形式,软件的源代码都是最终的介质。
我们可以将源代码编译成可执行程序 ,也可以阅读代码来了解程序的功能及其工作方式, 还可以修改源代码来改变程序的功能。
大多数编程课程和书籍都将重点放到如何从零开始编写程序上。
然而,在软件系统的工作投人中,40% ~70%是用在系统首次编写完成之后。
这些工作一定选及到阅读、理解、以及修改最初的代码。
另外,遗留代码持续不断、不可避免的累积; 对软件重用的强调,软件行业中人员的高流动性;
同时,随着开放源码开发工作和协同开发过程(包括外包、代码走查和极限编程)日益重要,使得代码阅读成为当今软件工程师的一项基本技能。
此外,阅读实际的、编写良好的代码,可以更加深人地了解如何构造与编写重要的系统,仅仅编写小型的程序学不到这种能力。
在编写程序时就应该考虑到使之易于阅读,并且,不管程序是否容易阅读,人们都需要去阅读它们。
虽然代码阅读是 "一项少有人称颂 、缺乏训练的活动” ( Robert Class ) , 但它不应该这样 ( 即应该给于足够的重视,并提供相应的培训。—译者注)。
本书中, 您將会通过一些具体的例子,学习如何阅读别人编写的代码 ,这些例子都取自重要的、现实的、开放源码系统的代码。
我们对代码进行了大量的释义,并应用到项目中所有机器可读的部分: 源代码 (及其注释) 、文档 、可执行程序 、源代码储存库 、设计图和配置脚本。
掌握了本书的内容之后,您将:
- 能够阅读和理解重要软件的代码;
- 领会许多重要的软件开发慨念;
- 知道如何探素大型的代码体;
- 拥有大多数重要的高级、低级编程语言的阅读能力;
- 认识到现实软件项目的错综复杂性
1.1 为什么以及如何阅读代码
有时,阅读代码是一件不得不去做的事,比如:为了修复、检查或改进现存的代码,都必须去阅读相关的代码 。
有些时候,阅读代码也许是为了了解程序是如何工作的,对于任何能够“打开盖子”的事物,作为工程技术人员,我们总是倾向于分析一下它的内部结构。
您阅读代码可能是想提取可供重用的材料,或者仅仅出于个人兴趣(很少,但我们希望在阅读了本书后能够多起来), 将代码作为一种文献。
每种原因的代码阅读都有自己的一套技术,强调不同方面的技能。
...
辅助材料
本书中棍供的许多源代码示例都来自于 NetBSD 的源代码。
NetBSD 是一个免费的、高度可移植的类 Unix 操作系统,适用于多种平台,从 64 位 AlpbaServer 到手持式设备。
它清晰的设计和先进的特性 ,使得它无论对于生产环境 ,还是对于研究环境 ,都是一个极好的选择。
之所以选择 NetBSD, 而不选择其他同样优秀,且广泛应用的免费类 Unix 系统(比如 GNU/Linux , FreeBSD 利 OpenBSD ) ,是因为 NetBSD 主要的目标就是强调正确的设计和编写良好的代码,这使得它成为提供源代码示例的最佳选择。
根据其开发者的思想,有些系統好像拥有这样的哲学: “ 如果它能够工作 ,那么它就是正确的。”, 而 NetBSD 可以描述为 “ 除非它正确 ,否则它就不能工作。”。
demos
(🐞 反爬虫测试!打击盗版⚠️)如果你看到这个信息, 说明这是一篇剽窃的文章,请访问 https://www.cnblogs.com/xgqfrms/ 查看原创文章!
refs
https://book.douban.com/subject/1151672/

©xgqfrms 2012-2021
www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!
原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!
本文首发于博客园,作者:xgqfrms,原文链接:https://www.cnblogs.com/xgqfrms/p/17639121.html
未经授权禁止转载,违者必究!

浙公网安备 33010602011771号