美文网首页IoT
关于如何阅读源码?

关于如何阅读源码?

作者: mqddb | 来源:发表于2017-06-23 11:15 被阅读53次

我心里一直觉得,现在的环境下,源码阅读能力比源码编写能力更重要,因为很多人都发明了各种各样的轮子,现在只需要理解轮子的运行,维修轮子就可以了。这个想法对吗?有一点对,但是太肤浅了,不能拿着个当成不用编程的理由。我一直认为软件工程师是设计师圈子里的,设计师的学习三个阶段:守,破,离。总结的太好了,为什么我现在觉得源码阅读比编写更重要,因为我还处在“守”这个阶段!为了突破这个阶段,我要不断的阅读源码,获取更高层次,更抽象的知识,为下一阶段“破”打基础。

小时候,一直很迷恋武侠小说,很羡慕里面的主角,总是能在机缘巧合的情况下获取高深,尖端的武侠秘籍,然后一夜飞跃。现在在我面前摆着一本本武侠秘籍,每本都是牛逼大发的,但是问题是我能不能看懂?

阅读源码的目的是解决问题,而不是为了阅读源码而阅读源码,有的人写了十几篇博客,将源码中的一行行代码都解释了一遍,但是到了真正解决问题的时候又一头雾水。如何避免自己进入这一的误区?问题驱动的源码阅读(Question Drive Reading),在问题语境中理解源码。容易进入上面提到的误区的原因是什么?在你埋头于代码时,容易只理解了软件的静态结构,忘记了代码的动态变化。而现实问题环境中,往往需要你对软件的动态环境做出迅速判断的。比如虚拟机从光盘启动突然变得很慢,是什么原因?服务器上某些虚拟机突然cpu占用率很高,怎么找原因?其实我也不知道。但是,如果你对软件架构理解很透彻,那么第一步定位问题,应该能很迅速反应。比如第一个问题:第一反应是加载慢还是运行慢?通过查看进程IO可以判断,当时并没有过多的IO操作,那么可以判断是Guest OS运行出问题。这个问题是基于我工作中的具体语境的,还有其他问题描述没有说,只是举一个简单的例子。

如何阅读源码?问题驱动!

相关文章

  • 如何阅读jdk源码?

    简介 这篇文章主要讲述jdk本身的源码该如何阅读,关于各种框架的源码阅读我们后面再一起探讨。 笔者认为阅读源码主要...

  • 每周阅读(3/12/2018)

    TiDB 源码阅读系列文章(四)Insert 语句概览继续追 TiDB 的源码,关于 insert sql 如何被...

  • 要想进阶?先导源码

    关于阅读源码,本号之前推送过一篇非常详尽的文章教大家如何方便的阅读framework源码: grepcode都无法...

  • 关于如何阅读源码?

    我心里一直觉得,现在的环境下,源码阅读能力比源码编写能力更重要,因为很多人都发明了各种各样的轮子,现在只需要理解轮...

  • Volley源码阅读

    Volley源码阅读 如何阅读源码?关于这个,前人有很多的方法。一般我分析这类工程,首先做的第一步是打开这类工程的...

  • 如何阅读源码?

    如何阅读一份代码-陈天如何阅读Swift源码-SwiftGG手把手教你读Swift源码-@二圈妹

  • Mono源码阅读-崩溃机制

    Mono源码阅读-崩溃机制 # 简介 本文主要针对mono源码中关于崩溃信号量处理的相关源码进行阅读和研究,源码涉...

  • 一篇文章把本该属于你的源码天赋还给你

    怎么阅读源码 "没有经验的技术差底子薄的初级程序员,如何阅读项目源码?" "有人阅读过 mybatis 的源码吗 ...

  • fragment

    Android fragment源码全解析 Android源码阅读笔记(1)----Fragment 关于Frag...

  • 关于阅读源码

    --转自某知乎回答[https://www.zhihu.com/question/19840538]以下是我阅读源...

网友评论

    本文标题:关于如何阅读源码?

    本文链接:https://www.haomeiwen.com/subject/gntccxtx.html