![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码阅读
文章平均质量分 51
龙赤子
15年开发猿,linuxer,分享经验,获得快乐. LCCZ_QRS
展开
-
关于代码阅读的进一步补充
复杂系统源代码有没有得看? 其实还是可以看的。 虽然迪杰斯特拉说,现在计算机程序的发展,使得没有一个人的大脑能够装的下一个计算机程序。 虽然有很多人在说到一些大型系统的源代码时,总是定量的评估道:这个系统代码有100万行,如果一秒钟看一行,不吃不喝,看完整个代码,也得需要多长多长时间,所以,一个人是不可能看完所有的代码的,所以要分析这个系统,我们就得想别的办法。 其实两种说法都是有道理的,也不假。那为什么我还要说复杂系统的源代码是有得看的?其实这里要考虑很多实际情况。 1 分层和模块化 将复杂的系统简原创 2021-08-06 09:58:41 · 82 阅读 · 0 评论 -
BT下载软件cTorrent的框架图
BT协议曾经是许多非常流行的P2P下载软件的内置协议。现在大家都用手机看直播、小视频,P2P下载已慢慢成为历史! 这里还是要向作者致敬!当年从中学习到了许多。 首先,客户端正常运行后,在一个大循环里处理各种事件 客户端建立的网络连接如下图: 跟PEER的逻辑关系如下图: 每个peer管理的下载列表如下图所示: PeerList的内容如下图: BT文件在代码里看到的结构如下图: DHT结构如下图: DHT内容结构如下图: ...原创 2021-02-18 20:19:17 · 400 阅读 · 0 评论 -
谈谈如何阅读源码
本文以开源代码阅读为例,谈谈如何阅读代码,尤其是大型系统,包括如何快速入手,如何高效处理。可展开为代码阅读方法;软件调试方法与技术技巧;软件优化方法与技术技巧。相关内容后续补充。 首先,达成三点认知: 1 人脑可处理的信息量是有限的,而程序包含的信息很容易超出人脑的处理限度。迪杰斯特拉名言,关于10的9次方说法。 2 人需要对事物从抽象、层次、结构不同角度认知,这是大脑的特点。 3 人的时间和精力都是有限的,现代大型系统很容易就触及百万行级别,所以需要掌握方式方法,而不...原创 2021-01-16 22:51:35 · 372 阅读 · 1 评论