有了源码该如何使用,源码使用教程
每天早上00: 00 , 我都会第一时间和你见面 。
每日英语
我不说话 , 不代表我心情不好 。有时候我就是喜欢安静 。
我没说话不代表我心情不好 。有时候 , 我只想安静 。
日常通话 。
你无法改变已经发生的事情 , 所以不要浪费时间想那么多 。往前走 , 放手 , 算了 , 就这样 。
来自:xybaby |编辑:乐乐
链接:cnblogs.com/xybaby/p/10794700.html
程序员小乐(ID:study_tech)的第751条推文来自Pexels 。
往期回顾:[插图] 6张图明白为什么TCP三次握手而不是两次握手了!(阳性版)
主体
由于项目的需要 , 我最近花了更多的时间看开源项目的代码 。在本文中 , 我简要总结了我对为什么以及如何查看源代码的想法 。
看看源代码的意义
看源代码只是一种方法 , 一种手段 , 不是目的 。我曾经给自己定下“看完xxx源代码”的目标 , 现在看来真的很傻 , 一点都不聪明(具体、可衡量、可达到、相关、有时限) 。
只有阅读代码的目标明确 , 才能有的放矢 , 抓住重点 , 高效完成任务 。
看源代码的意义 。总结起来 , 包括但不限于以下几点:
首先 , 解决问题(BUG)
只要是代码 , 就会有bug 。只是bug或多或少 , 或深或浅 。现在 , 每个人都喜欢发布和使用开源项目 。不同的开源项目有不同的社区成熟度和代码质量 , 遇到bug也就不足为奇了 。
当然 , 如果遇到bug , 一定要先上网搜索类似问题 。一般可以在google中搜索相应的关键词 , 栈溢出 , 项目的问题 。如果找不到 , 就只能看源代码了 。
第二 , 知道为什么 。
我在【如何学习新技术 , 选择团队技术需要注意什么】【链接1】中提到 , 如果我们需要将一个开源项目应用到自己的项目中 , 那么我们必须知道这个项目的优缺点 , 熟知原理 , 对一些细节(尤其是项目的优点和特色)进行深入研究 。
如果是成熟的开源项目 , 遇到问题也许可以google很多答案;但是 , 如果是快速开发中的开源项目 , 多了解一下它的架构和核心原理 , 也有助于快速定位问题 。
另外 , 有些项目文档可能没那么丰富 , 但又不得不用 , 那么如何以正确的姿势使用呢?也参考源代码 。
第三 , 学习
看源代码也是一种很好的学习方式(虽然不一定是最好的方式) , 尤其是优秀的开源项目 , 可以让人大开眼界 。
即使是以学习为目的 , 也有很多重点 , 比如
语言学习:代码风格 , 规格 , 成语 , 高级语法 。对于某一门语言的新手来说 , 找一个熟悉领域的开源项目来深入掌握这门语言也是一个不错的办法 。
学习设计:数据接口、框架、整体架构
学习理论:算法和协议 。比如我之前写的【raft协议】【raft】 。只是看论文很枯燥 , 算法理论和工程实践还是有一定差距的 。这时候结合开源项目([mongodb][])实现往往更有效 。
四 。转换
一般来说 , 在开始的时候 , 我们只使用一个开源项目 , 但是随着使用的深入 , 我们会发现我们需要的一些功能并没有得到很好的支持 , 向项目团队提出的问题也不一定能得到快速的回应 。这时候就要自己开分支 , 自己改代码 , 自己加功能 。
当然 , 最好是给原项目一个合并请求 , 用一个好分支的新特性 , 反馈开源项目 , 比如阿里的[Blink][]
五、借鉴 。
如果你需要重新开始打造自己的轮子 , 参考一些现有的优秀轮子肯定是有好处的 。
不及物动词副产品
这不应该作为我们看源码的出发点 , 但在实践中确实能为求职面试增值 , 也算是副产品 。
如何阅读源代码
阅读源代码的目的很大程度上影响了阅读源代码的方式和要阅读的代码范围 。比如 , 如果是修复一个在线bug , 那么阅读代码的范围就紧紧围绕bug本身;要想理解一个分布式算法 , 就需要根据可能运行在不同节点(流程)上的大量代码来理解它的交互原理和工作流程 。
推荐阅读
- 水晶饺子皮用什么粉……水晶饺子怎么做好吃?该如何和面?
- 女生说嗯哼是什么意思~女生聊天时说“哼”,该怎么回复?
- 疫情期间的打工仔们,没了稳定收入,没了稳定工作,我们该怎么办 乡村阿董阿
- 刘涛|片约不断,却演啥毁啥,“戏混子”演员该醒醒了!
- 绿松石|绿松石弄脏了该怎么办?
- 宝洁|贝克汉姆小女儿长“残”了!体重堪比妈妈2倍,球迷:该减肥了
- 网站seo该怎么优化,做好网站优化的五个步骤
- 沉香手串|沉香手串应该怎么挑选?
- 怎么优化网站代码,网站源码优化工具推荐
- 网站推广教程,十种网站推广的常用手段
