怎样阅读源代码

如何阅读一份源代码? PS:如果很多事情,你当时做的时候能想到今后面对这个输出的人是你自己,比如自己写的代码后面要自己维护、自己写的文章后面给自己看,等等的,世界会美好很多。比如写技术博客这些事情,因为我在写的时候考虑到以后看这份文档的人可能就是我本人,所以在写的时候会尽量的清晰、易懂,力图我自己一段时间后再看到自己的这份文档时,能够马上回忆起当时的细节,也正是因为这样,我很少在博客里贴大段的代码,尽可能的补充图例。好比盖房子,数据结构就是房子的框架结构,如果一间房子很大,而你并不清楚这个房子的结构,会在这里面迷路。 阅读详情
作者:  core
来源:  http://dev.youkuaiyun.com/article/69/69733.shtm
    
    阅读源代码对于程序员来说是提高技术实力和业务知识最好的方法,那么我们怎样阅读源代码就是我们 首先要解决的问题。

      阅读源代码就像管理一家大的公司,关键在于管理者卓越的领导意识。作为阅读源代码的人也应该有良好的意识,在阅读源代码时才能事半功倍。养成良好的阅读习惯。

  阅读方法如下:

   1.对于一个大的项目,首先要弄清项目的框架结构和各个项目模块的功能(输入什么,处理以后输出什么). 在这一点上Ant工具做的相当到位,通过编写build.xml和xml的良好的语法结构可以清楚的看到框架。Make工具也做比较出色。具体细节可参考GNU Make /Apache Ant Manual.和程序的build.xml或makefile文件。

       2. 参照源代码和对应文档及业务知识 掌握各个项目模块的主流程也就是先从每个模块的main函  数开始,按照顺序列出所用的函数,试着画流程图。注意:对于列出的函数我们现在只关心输入什么,处理后输出什么即函数的功能,不关心函数的实现,用UltraEdit32最新版阅读时十分方便。

        3.以上两步熟悉以后,在进一步熟悉各个项目模块的主流程,要弄清各个自定义函数的具体实现(标准库函数除外 原因:由厂商提供,厂商只提供函数的功能)。

      4.在每一步都要做好源代码阅读笔记,总结方法和技巧。每个项目的源代码阅读要多读几遍,书读百遍 其义之见 呵呵 定期与同仁切磋交流。

      5.提出更好的解决方案,(按照软件工程的设计步骤)评估方案的性能(界面,易用性,内存等方面).

      6.每日构建 具体参考构建工具和相关文挡。
如何阅读源代码(1) 摘要:本文从阅读源代码的目的和意义开始,主要介绍了怎样阅读别人的源代码,列举了阅读开源代码的例子,以及阅读开源代码工具和阅读源代码的技巧。 引言 大家在软件开发过程中,在加入一个团队后或多或少都会接触到原来的源代码,要不是在原有基础上继续开发或者维护,或者在原有代码上改进优化 阅读详情

相关推荐

如何阅读源代码?

工程师阅读源代码的本质不在于学会这个软件的制作过程,而是让我们在阅读的过程中掌握无师自通的能力建设上。 我是怎么想的? 从我自身从业经验而来,无论如何变化,都会抽象归结到这主要的两类中,一类是自低向上分析,能够根据软件源代码架构推演出系统架构、部署架构、应用架构、产品架构、业务架构等向架构级靠拢的推演能力。另一类是自顶向下分析,能够根据软件相关的架构图推演出代码架构,设计模式,代码框架等向代码级...

web前端技术交流群:457188470 772

firefox源码分析

Source code directories overview  link 理解Firefox - 序言 不知道楼主还会不会回来看,我来说说我自己的一些看法吧。 想看FF的SRCCODE,你首先有些下列的基础。 1 COM 的基本的思想,然后再去看看XPCOM不过有了COM的基础后再看XPCOM就会很快的。 2 你要有相当的C++水平,要不然看起来会不怎么顺利的。 3

4442

Material Studio 2024安装避坑指南:从证书配置到权限设置的完整解决方案

本文详细解析了Material Studio 2024的安装流程,从环境准备到权限优化的完整解决方案。针对证书配置、系统权限和计算服务等常见问题,提供了12个关键风险点的避坑指南,帮助科研工作者高效完成安装,提升材料模拟工作的效率。

moon9的博客 772

如何阅读别人的源代码

网上搜到的一篇介绍阅读别人源代码的方法,放在这里,有空可以查看。         阅读别人的代码作为开发人员是一件经常要做的事情。一个是学习新的编程语言的时候通过阅读别人的代码是一个最好的学习方法,另外是积累编程经验。如果你有机会阅读一些操作系统的代码会帮助你理解一些基本的原理。还有就是在你作为一个质量保证人员或一个小领导的时候如果你要做白盒测试的时候没有阅读代码的能力是不能完成相应的任务。最后

天道酬勤 3万+

Fortify SCA 24.4 最新可用版

Fortify Static Code Analyzer(Fortify SCA) 是一款由 Micro Focus(原惠普旗下)开发的 静态应用安全测试(SAST)工具,专注于在软件开发早期通过分析源代码或编译后的二进制文件,识别潜在的安全漏洞、代码缺陷和合规性问题。以下是其核心特点与功能:核心功能 静态代码分析 在不运行程序的情况下,通过语法、语义分析检测代码中的安全漏洞(如 SQL 注入、跨站脚本(XSS)、缓冲区溢出等)和代码质量问题。

棉花糖的博客 3181

5分钟搞定三网话费余额查询:手把手教你用PHP+HTML搭建查询系统(含API调用避坑指南)

本文详细介绍了如何使用PHP+HTML快速搭建三网话费余额查询系统,涵盖API调用避坑指南、前端UI设计及性能优化。通过统一处理移动、电信、联通三大运营商接口差异,实现高可用查询功能,并提供安全防护与生产部署建议,帮助开发者高效构建稳定可靠的话费查询工具。

weixin_29016833的博客 259

阅读源代码

1**********************************************************************************     阅读源代码对于程序员来说是提高技术实力和业务知识最好的方法,那么我们怎样阅读源代码就是我们 首先要解决的问题。      阅读源代码就像管理一家大的公司,关键在于管理者卓越的领导意识。作为阅读源代码的人也应该有良好的意识

汪翰翔的Blog 4887

AMEsim不连续处理机制:仿真精度与效率的平衡艺术

本文深入解析AMEsim不连续处理机制在系统仿真中的应用,探讨如何平衡仿真精度与效率。通过液压系统仿真案例,详细介绍了事件检测算法、变步长求解器自适应策略及典型场景优化方法,帮助工程师有效应对仿真中的不连续性问题,提升仿真效率和准确性。

v4w5x6的博客 441

怎样阅读源代码,怎样提高阅读源代码的效率

怎样阅读源代码,怎样提高阅读源代码的效率 就我自己阅读安卓源代码的经验,本人研究过 settings,launcher,Sysupdate ,framework /services ,recovery的部分源代码。而且成功改动google留下...

129

STM32F407+LWIP实战:手把手教你移植mbedtls库实现Modbus TCP双向认证

本文详细介绍了如何在STM32F407微控制器上移植mbedtls库,结合LWIP协议栈实现Modbus TCP的双向认证功能。通过TLS 1.2加密通道,有效提升工业物联网通信的数据安全性,涵盖证书管理、内存优化及性能调优等关键步骤,为嵌入式系统开发者提供了一套完整的解决方案。

weixin_28721917的博客 516

Simulink进行无人机飞行力学建模与仿真

摘要:本文详细介绍了使用MATLAB/Simulink进行四旋翼无人机飞行力学建模与仿真的步骤。内容包括准备工作、动力学方程概述、模型构建(使用State-Space或Simscape Multibody)、可选控制器设计、仿真参数配置及结果分析。教程强调理解飞行力学原理和坐标系转换的重要性,建议根据需求选择模型复杂度,并推荐查阅学术文献获取更深入的建模方法。通过本教程,读者可掌握无人机动力学建模基础,为控制系统开发和性能优化奠定基础。

amy_mhd的博客 272

为什么要阅读源代码?如何有效的阅读源代码? 选一些比较优秀的开源产品作为源代码阅读对象?

盛大TeamHost上有个关于学习开源项目的wiki :http://www.teamhost.org/projects/learn-with-open-source/wiki/Wiki 一、为什么要阅读源代码?       很多作家成名之前都阅读过大量的优秀文学作品,经过长期的阅读和写作积累,慢慢的才有可能写出一些好的、甚至是优秀的文学作品...

MTS的博客 1156

TIA protal与SCL从入门到精通(4)——软件单元使用

平台: TIA portal 15.1 1.添加软件单元 添加软件单元如下图: 关于软件单元使用基本限制,看如下文章即可 TIA protal与SCL从入门到精通(3)——软件单元基本介绍 每个软件单元是一个独立结构,所以每个软件单元的运行方式与实际PLC类似,所以首先添加主函数块: 注意:无论系统是否是具有并发性(这里不要混淆并行与并发的概念),在PLC所有主函数执行总是按主函数依次完成...

苦走一口田 7377

阅读源代码系列

阅读源代码系列 转 http://blog.youkuaiyun.com/goodfriends2007/article/details/6881883 摘要:本文从阅读源代码的目的和意义开始,主要介绍了怎样阅读别人的源代码,列举了阅读开源代码的例子,以及阅读开源代码工具和阅读源代码的技巧。 引言 大家在软件开发过程中,在加入一个团队后或多或少都会接触到原来的源代码,要不是在原有基础上继续开发或者维

ajian005的专栏 2940

国科大学习资料--图像处理(彭思龙、杨戈)--2020年期末考试题解析(学长整理分析)

在对20年卷子分析前,先看看19年卷子的解析(后面有20年的变化,由于从核心课调整到了普及课,20年的卷子相对简单,但是还是有很多细节) 解析:(字写的不好别嫌弃!!!!) 20年的卷子 第一题:和19年基本一致,但是加了高斯核计算费用,要算一个节省计算成本比率,所以去多看看PPT 第二题:和19年基本一致,加了证明两个高斯卷积仍然是高斯卷积,相当于19年题2和3结合 第三题:采样定理,和19年基本一致,但要注意加了证明 第四题:考了形态学提取图像边界 第五题:直方图,和19年一

无名何许人的博客 4364

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

如何阅读linux源代码

如何阅读linux源代码 随着linux的逐步普及,现在有不少人对于Linux的安装已经比较熟悉了。与Linux的蓬勃发展相适应,想深入了解Linux的也越来越多。而要想深入了解Linux,就需要阅读和分析linux内核的源代码。  Linux的内核源代码可以从很多途径得到。

goodfriends2007的专栏 1099

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

如何高效阅读源代码

花了很长时间读一个项目,为什么不写篇文章阐述一下自己的理解?这就像在写读书的读后感,你可以写下源代码中的好坏,以及你从中学到的新东西。教授别人是一种最好的学习方式,写这样的文章会加深你的理解,也有助于其他人阅读源代码。我当初在花了好一段时间阅读 Kong 的源码后,写了一系列关于 Kong 的文章:Kong 源码分析写了这么多,我发现代码阅读比想象的要复杂得多,没有标准的、系统的方法来训练这项技能。总而言之,不断练习读代码,找到适合自己的方法和工具,读得越多就会越快、越高效。设计模式架构整洁之道。

weixin_38641763的博客 1691

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

如何阅读项目源代码

如何阅读项目源代码(github)Github工程项目过大?难以阅读怎么办,本文就根据自己阅读代码的经验,总结一下如何阅读源代码的经验。借鉴博客看他人的源码分析是最简单也是最直接的项目经验获取方式,一篇好的源码分析博客,必定是脉络清晰的,一般包括几个部分: UML类图 核心架构分析 关键代码分析 有助于梳理项目 有助于了解项目概况 有助于面试装逼 好的项目类与类之间的关

果子会不会掉的专栏 1万+

如何阅读源代码

  写在前面的话:   自从我在linuxaid.com.cn上发表一些文章开始,就不断的有网友发来电子邮件,或者是就其中某些问题进行探讨,或者是查询其他文章的地址(往往这些网友看的是其他网站转载的我的文章),我很高兴自己写出的文章有这么多人回应,因为这是对我最好的赞赏,也很高兴有这么多人对我的文章感兴趣。但是常常因为工作关系。有很多邮件是询问我的其他文章在哪里能够找到,我不一定能够及时回

技术资料库 7992

关于阅读ROS的源代码

背景介绍 阅读源代码,首先应该从头文件入手,ROS集成了许多的头文件,一句 #include<ros/ros.h> 就包含了绝大部分基础代码的头文件,但是这往往让初学者看代码时遇到很大的困扰。 最近本人也从事一些路径规划算法研究,打算利用ROS在机器人上实现,为此一边做学习笔记以便自己复习,另一方面也可以给广大使用ROS的机器人爱好者提供参考。 查找头文件位置 基本的头文件...

狂小虎/Anthony Dave的博客 KuangXiaoHu's Blogs 4701

如何高效的阅读hadoop源代码?

首先,不得不说,hadoop发展到现在这个阶段,代码已经变得非常庞大臃肿,如果你直接阅读最新版本的源代码,难度比较大,需要足够的耐心和时间,所以,如果你觉得认真一次,认真阅读一次hadoop源代码,一定要有足够的心理准备和时间预期。 其次,需要注意,阅读Hadoop源代码的效率,因人而异,如果你有足够的分布式系统知识储备,看过类似的系统,则能够很快地读它的源代码进行通读,并快速切入你最关注的局部...

程序员生活网 391

如何阅读C++源代码

转自:http://blog.163.com/fan_jiangfeng/blog/static/98698782201185822872/ 1.阅读源代码对于程序员来说是提高技术实力和业务知识最好的方法,那么我们怎样阅读源代码就是我们 首先要解决的问题。 阅读源代码就像管理一家大的公司,关键在于管理者卓越的领导意识。作为阅读源代码的人也应该有良好的意识,在阅读源代码时才能事半功倍。养成良好的阅读...

ClimberCoding 6169
上一篇: C语言测试:想成为嵌入式程序员应知道的0x10个基本问题
下一篇: 优化C代码常用的几招
lphpc
博客等级 码龄22年 32粉丝 86原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值