关于阅读源码

当咱们对一个框架一个组件一门语言十分熟悉的时候,有追求的人都不会止步于只是熟练使用这个工具,而会更加深刻地去了解这个工具背后的逻辑还有原理,这个时候就涉及到阅读做者源码的问题了。vue

本篇的诞生是因为在阅读当前大热的vue源码的时候,感受代码虽然看得懂,但好像又不懂。懂的更多的是语法上没问题,甚至有点优雅;不懂的是,怎么会有这个思路,为甚么这一步以后就到了那一步。由于有此疑惑因此就有了这篇思考json

读源码应该带着什么的目的去读?
读源码以后应该收获什么?
读源码的过程应该注意什么?
读源码咱们应该避免去妄想什么?浏览器

读源码应该带着什么的目的去读?

这个因人而异,主要是看本身的想法。框架

可能只是单纯地想提升本身码code的水平,向大神看起
某个实现很优雅想深究他的原理
了解框架背后是否用了什么鲜为人知的技术
提升本身封装代码的能力函数

读源码咱们应该避免去妄想什么

了解做者的整个思路?工具

  • 彻底明白源码的每一个细节
  • 本身也封装一个相似的框架

读源码以后应该收获什么?

  • 代码的组织,封装技巧
  • 一些新的技术,框架,辅助代码的东西
    框架背后的实现流程
    框架背后关键API实现的原理

阅读的顺序

  • 从package.json 的入口开始
  • 留意在浏览器中的表现
  • 从最先的地方打个断点,在debugger里面一个个地去跟踪每个函数
  • 在代码的最深处打一个断点,而后去读每个call stack 调用栈。
相关文章
相关标签/搜索