首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何阅读代码

身为一个程序员,工作中最重要的事情当然是写代码,其次就是读代码了。我们都是先阅读了别人的代码,才模仿着写下了自己的第一行代码。...所以程序员必须学会正确的阅读代码姿势,高效正确的阅读代码。 为什么读代码很难 读代码并不比写代码简单,阅读代码的困难源自以下几个方面。 首先,实现一个功能,存在多种具体的实现方式。...代码运行过程中也会修改外部状态,阅读代码的过程中不仅要关注代码中自身数据的状态变化,还要考虑对外部数据的修改。...有时候为了提升自己的能力,主动阅读一些优质开源软件的源码,学习其中的设计和实现,也要阅读完整的代码,或者某些模块的完整代码。...接下来可以开始读代码,但不是所有的代码都需要阅读。什么样的代码需要阅读

96720
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何阅读框架源代码

    不管对于那个段位的 Developer 来说,读源码都是一件好处颇多的事情,特别于初学者而言,这能迅速的吸纳优秀框架精华代码营养,迅速成长。不巧的是,晦涩难懂的源码,很容易让人心生怯意。...组件化吧,带着框架是如何解决这个问题的疑问去学习,定能事半功倍 对于读源码来说,这一步就更关键了,如果都不了解代码是要干什么的,怎么会清楚它为什么这么写呢?...有一定代码量的积累之后,建议阅读一些设计模式类的书籍,对自己的代码设计,以及阅读别人的源码,都很有益处。...树要这么多分支,时间又是这么昂贵,阅读的策略很重要。...我们的阅读路径,要以主要流程为主(也就是树的主驱赶,这样才能尽可能快的到达顶点),对于一些细枝末节,再这之后再来慢慢啃(或者有必要的时候) 例如,要去阅读 Vue 的源码,有个目录是解析模板,生成语法树

    1.1K60

    为什么要阅读Linux内核源码以及如何阅读Linux内核源码

    阅读源码分为纵向阅读和横向阅读。纵向就是跟着内核的执行流程来读,横向就是按照内核的各大功能模块来读。 第一种方法纵向或者横向来读都可以,因为代码量不是很大。...《linux内核完全剖析》《linux内核完全注释》是引导你横向阅读的书,《linux内核设计的艺术》是引导你纵向阅读的书。...《linux内核情景分析》中的内核版本是2.4.X,现代内核版本还是推荐横向阅读,纵向几乎不可能。...(在Linux下搭建了quem虚拟机,然后用GDB调试内核也可以)总之阅读源码的方法也就上面两种,贵在坚持,但是别闭门N久学内核,没有意义。而且长时间只读代码,不敲代码是不行的。...和体系结构相关的库代码在 arch/*/lib/ scripts 这个目录包含脚本(例如 awk 和 tk 脚本),用于配置核心 按照以下顺序阅读代码会轻松点 核心功能(kernel) 内存管理(mm

    4.6K30

    如何阅读大牛的代码

    一、代码阅读的必要性 阅读别人的代码作为开发人员是一件经常要做的事情。一个是学习新的编程语言的时候通过阅读别人的代码是一个最好的学习方法,另外是积累编程经验。...如果你是为了学习那么尽量收集和你的学习有关的资料,比如你想学习linux的文件系统的代码,那最好要找到linux的使用手册、以及文件系统设计的方法、数据结构的说明。(这些资料在书店里都可以找到)。...如果你想阅读linux的文件管理的代码,那么找一本讲解linux文件系统的书对你的帮助会很大。...分层次阅读阅读代码的时候不要一头就扎下去,这样往往容易只见树木不见森林,阅读代码比较好的方法有一点象二叉树的广度优先的遍历。...重复阅读 一次就可以将所有的代码阅读明白的人是没有的。至少我还没有遇到过。反复的去阅读同一段代码有助于得代码的理解。

    86840

    阅读代码整洁之道》总结

    出处:https://www.cnblogs.com/xiaoyangjia/ ---- 很早就阅读过《代码整洁之道》(英文版Clean Code),当时博主是个青涩的菜鸟,正在为团队创造着混乱的代码...当阅读JDK源码或者其他优秀开源工程时,叹服作者代码构建之精良,他们都有共同的特点:精确的变量名、恰到好处的设计模式、详细而不赘述的注释等等。...代码是团队沟通方式 工作的沟通,不只是电子邮件或者面对面语言交流,代码也是沟通方式之一。用代码实现需求,只是万里长征走完了第一步,必须让代码表达自己的设计思想。...编写代码的时候,应该考虑到别人的阅读感受,减少阅读障碍,为整个团队创造代码,而不是你自己。 让营地比来时更干净 这是美国童子军规的谚语,美国童子军相当于半军事化管理的青少年夏令营。...过长的方法,让阅读者不知道从何看起,看了前面忘记后面。将复杂的方法,拆分成逻辑相对简单的短方法。

    61040

    实现抽象视觉推理+代码阅读

    v2 版本从第二部分开始增加了代码参考。 抽象: 视觉推理对于构建理解世界并执行超越感知的问题解决的智能代理是必不可少的。...运行日志:https://github.com/ml-research/neumann/blob/main/logs/redtriangle_log.txt 阅读原文或文末 运行时:...完整内容请阅读原文 相关文章: ILP: thinking visual scenes as differentiable logic programs Right for the Right Concept...交互解释符号Learning 相关推荐: AGI结构模块很细分:脑网络结构高清大图 AGI部分模块的优秀复现: 最新代码:一个epoch打天下:深度Hebbian BP (华为实验室) 生物视觉...10 分钟内适应扰动或快速翻身站立 躯体控制 + 代码:Learning to Learn and Forget (华为)长短期记忆网络 + inductive Logic Programs 视觉推理

    17240

    为何我们的代码难以阅读

    任何程序员都能写出机器可以阅读代码,但只有好的程序员才能写出人可以阅读代码。这句话道出了要写出容易阅读代码的困难。但是这些困难到底是什么,我们应该如何认识它,正是本文想要探索的问题。 ?...特别是,我们阅读代码的目的常常不是要评估代码的算法,而仅仅是找到某段业务逻辑的位置来进行修改,这样一个和业务逻辑有关联的命名,能让我们快速跳过大量不相干的代码,直接定位到需要修改的地方,这对代码维护是非常有利的...但是如果你有意识的做一些有具体业务含义的封装,你会得到另外一个好处,就是代码能更方便的重用。代码重用的首要条件是代码可理解,封装正是对复杂的实现过程的屏蔽,从而让人可以快速理解。...总结 这篇文章并没有很深入的去描述,如何从技术角度编写出可读的代码,而主要是关注软件代码和自然语言的差异和联系。...感谢大家的阅读,如觉得此文对你有那么一丁点的作用,麻烦动动手指转发或分享至朋友圈。如有不同意见,欢迎后台留言探讨。

    92150

    如何有效的阅读代码

    Spring框架源码,可以以BeanFactory bf= new XmlBeanFactory(new ClassPathResource("applicationContext.xml"))为入口,深入源代码阅读主干路实现原理...这一段阅读过程会看到很多实现细节,比如XML的验证、解析等,可以先不要深入研究具体的实现细节,知道大体的实现即可,这样可以快速的掌握整体结构,等整体骨骼结构弄明白了,再回过头来细细研究具体细节实现。...阅读的过程中,可以编写一些单元测试,然后通过断点调试验证细节、跟踪线索,同时可以配合看一些书籍,这样可以提高阅读源码的速度和效率。...源码阅读不易,会经过迷茫、挣扎、光明、迷茫、恍然大悟等阶段,坚持就会有收获,难得是坚持! 为了更方便的技术交流,建了一个微信群,加博主微信wind7rui,盛邀你进群!

    93560

    如何阅读一份代码

    有些巨型的代码库,如 linux kernel,块头堪比『战争与和平』,代码的规模宏伟到令人绝望,大大超过了我们能够阅读理解的范围。...谈到场景,很多人会联想到一本著名的书:Linux 内核场景分析。该书的作者显然把握了阅读代码的实质:循着一条线索,进行端到端的一个自成体系的内容的阅读。...接下来,本文就从若干阅读代码的场景开始,讨论个人的读代码的一点微不足道的心得。 场景一:为了破案而阅读代码 这是我们最主要的阅读代码的场景。工作中,免不了用各种各样的开源系统(别人的代码)。...ossip 协议实际的生产环境的代码是什么样子的?Linux kernel 如何实现 O(1) scheduler?...这种积蓄能量为跃迁准备的一种方式是读代码。读什么?读那些基础地不能再基础,你认为自己一辈子都不会去写的那些代码。比如 linux kernel,比如 OTP。

    1K70
    领券