有了源码该如何使用,源码使用教程

每天凌晨00点00分,第一时间与你相约 每日英文 JustbecauseI'mnottalking,doesn'tmeanI'minabadmood.SometimesIjustliketobequiet. 我没说话,不意味着我心情差。有时候,我就是想安静点。 每日掏心话 你改变不了已经发生的,所以不要浪费时间想那么多了。前进,放手,忘了它,就这么回事。 来自:xybaby|责编:乐乐 链接:cn…

每日零晨00点00分, 第一时间与你相约

每日英文

Just because I’m not talking, doesn’t mean I’m in a bad mood. Sometimes I just like to be quiet.

我没说话,不代表着我心情差。有时,我就是想安静点。

每日挖心话

你改变不了早已出现的,因此不要浪费时间想那么多了。前行,放开手,忘记了它,就那么回事。

来源于:xybaby | 责编:佳佳

连接:cnblogs.com/xybaby/p/10794700.html

为什么要看源码?如何看源码?高手进阶必看

程序猿乐乐(ID:study_tech)第 751 次文章 照片来源于 Pexels

往日回望:【详解】6幅图弄懂 TCP 为何三次握手而非2次挥手!(正确的答案版)

文章正文

考虑到工程项目的需要,近期花了较多的是时长看来开源软件的编码,在这篇文章中,简易总结一下对为何要看源代码、如何看源代码这两个问题的思索。

为什么要看源码?如何看源码?高手进阶必看

看源代码的实际意义

看源代码仅仅一种方式、方式,而非目地。我也曾经为自己制订过“阅读文章xxx源码”的总体目标,如今看上去真的很蠢,一点不smart(specific、measurable、attainable、relevant、time-bound)。

仅有弄清楚了阅读文章编码的总体目标,才可以以问题为导向,抓住重点,高效率达到每日任务。

看源代码的实际意义汇总下去包括但不限于以下几个方面:

一、解决困难(BUG)

只需是编码,便会有bug,仅仅说bug的多与少、深与浅而已。如今大家都喜欢公布、应用开源软件,不一样的开源软件小区成熟情况、编码品质又会有比较大的差别,碰到bug就习以为常了。

自然,碰到bug肯定是先往网上搜索是不是有相似的难题,一般能够在google、Stack Overflow、新项目的issues里边有相应的搜索关键词。假如找不到,那么就只有看源代码解决了

二、学有所用

我还在[怎样学习新技术应用、精英团队技术性型号选择时要注意些什么][Link 1]里边提及过,假如我们应该将一个开源软件使用自身的工程项目中,那么就务必掌握此项新项目的优缺点,并自知基本原理,对一部分关键点(特别是新项目的优点、feature)开展深入分析。

如果是完善的开源软件,遇到问题或许能google到许多回答;但如果是一个处在迅速发展里的开源软件,多掌握其构架、关键基本原理,也可以协助快速定位难题。

此外,有些新项目文本文档可能不那样丰富多彩,但又必须应用,那样如何以正确的姿势应用呢?也得参照源代码

三、学习培训

看源代码也是一种很好的学习方法(尽管不一定并不是最好的方法),特别是针对较为杰出的开源软件,能让人惊叹不已。

即使是出自于学习的目的,都是有许多偏重于的,例如

语言学习:编码设计风格、标准、常用法、高端英语的语法。针对某一语言表达的初学者,找一个了解行业的开源软件来深层次把握这门语言表达,都是一个很好的留意。

学习设计:api接口、架构、整体架构

学习理论:优化算法、协议书。例如我以前写过的[raft协议书][raft],光看论文是很枯燥的,并且优化算法基础理论到工程实践或是有一定的差异,这个时候融合开源软件([mongodb][])完成通常更事倍功半。

四、更新改造

一般来说,大家一开始只是应用一个开源软件,但由于采用的深层次,会看到一些自身必须的作用并没非常好的适用,向团队提的issues也可能无法得到迅速的反应,这个时候就需要自己开支系,改代码,加作用了。

自然,比较好的是由自身支系比较好的新feature 给原新项目提merge request,哺育开源软件,例如阿里巴巴的[Blink][]

五、参考

它山之石可以攻玉,假如有必须从头开始自身代码重构,那样参照一些已经有的、出色的车轮子肯定是有好处的。

六、副产物

这一点,不应该做为大家阅读文章源代码的立足点,可是的确能在具体中对找个工作、招聘面试有加持,算得上副产物吧。

如何看源代码

看源代码的目地非常大水平上影响了看源代码的方法、必须阅读文章的编码的范畴。例如,如果是为了能修一个网上bug,那样阅读文章编码的标准就重点围绕bug自身;而如果是为了能掌握某一分布式系统优化算法,那么就必须按很多的、很有可能运作在不一样连接点(过程)里的编码,掌握其互动基本原理、工作内容。

接下来说一些常用的方式。

首先看文本文档,总体掌握

一般来说,文本文档是对编码的相对高度凝炼,一个高质量的开源系统一般会包括tutorial、specification、API reference等documents,根据可选择性的粗读、选读这种文本文档,就可大概掌握工程的整体架构、设计原理

准确的线路是通过文本文档去了解这个项目,然乎通过阅读编码去认证文本文档、深层次关键点,而非根据立即啃源代码来掌握这个项目,断章取义。

了解编码机构,文件夹名称,类名

当必须看代码的情况下,不必找到一个文档就逐渐,先看看编码机构,粗略地看一下文件夹名称、类名,基本上就可猜测到每一部分。例如redis的源代码就机构得很好,大部分看文件夹名称就能够快速定位每一个command的完成部位。

关心一个问题,从难题跟踪编码

看源代码的总体目标取决于此刻的侧重点,不论是处理碰到的bug或是学习培训某一优化算法,都使我们对焦到一个实际的情况,从这一实际的情况去跟踪编码,忽视掉现阶段不用关心的细微末节,一步步深层次,直通总体目标。

自然在处理一个问题的情况下,有可能引起一个新的难题,特别是学习的时候,这时只需纪录新问题(放进搜集篮,不必马上散发),待以前跟踪的问题处理以后,再看来新发现的问题。

处理一个issue

要是自身没有问题,那么就帮助处理别人的难题,一般而言,开源软件都是有很多待处理的issue,从这当中选择一个下手就可以。

调节

只需能够,一定先让编码编译程序根据、跑起来,那样不论是加log、打印出启用栈或是断点调试都便捷许多。特别是针对像python这类动态性种类编码,不跑下去难以了解究竟在做什么。

加注解,记笔记

假如某份源码的阅读文章并非一锤子买卖,日后还可能回望、再次阅读文章,那么就一定要搞好代码注释和笔记。手记目的是为了架构图、类图、流程表,目标是建立索引,便捷日后迅速追忆。

而注解便是阅读文章编码时的关键点,再次阅读文章的情况下看注解(尤其是函数公式的注解)能减少许多时长。

热烈欢迎在留言区留有你的观点,一起探讨提升。如果今天的文章内容使你有新的启迪,学习培训能力的提升上面有一个新的了解,喜爱分享介绍给更多人。

猜你还爱看

阿里巴巴、腾讯官方、百度搜索、华为公司、京东商城全新面试问题汇聚

Java中关于try、catch、finally里的关键点剖析,看过都讲好!

IDEA热布署之JRebel的组装与破解教程

现在才明白为何得加 final 关键词了!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年7月6日 下午12:40
下一篇 2022年7月6日 下午12:44

相关推荐

  • 高考防作弊:AI安防巨头斗法

    AI之于安防行业,显然是一次全方位的技术升级和应用升级

    2022年9月13日
    480
  • 网易云音乐如何赚钱,网易云音乐引流详解

    中关村在线消息:近日,网易正式公布了2019年第二季度财报,数据显示其在第二季度净收入为人民币187.69亿元,同比增长15.3%,净利润人民币30.714亿元。而网易云音乐用户总数也突破8亿,同时,网易CEO丁磊也明确了网易云音乐的主要盈利方式。 丁磊明确网易云音乐未来盈利方向 丁磊表示:“如何能够盈利,总体来说,一是会员,会员数量一直在持续发展,第二个是广告,第三是我们的音频直播,是一个新的U…

    2022年8月10日
    800
  • 手机突然充电超级慢是什么原因,别急着去维修先试试这个方法

    手机已成为我们生活中必不可少的一部分了,可是玩着玩着没电了总让人很捉急~充电呗,五分钟看一眼20%,十分钟看一眼23%,十五分钟看一眼25%,这样的速度是真真要急死人的节奏啊! 手机为什么会充电慢呢?有什么解决办法吗 1、充电插头没选对 主要集中在充电插头的电压不够,导致充电慢。给设备充电要选对充电插头。比如,用iPhone插头给iPad充电,由于插头的功率不够用,充电速度就会很慢。三星手机也有这…

    2022年10月10日
    1160
  • 大学生创新创业项目有哪些,大学生创业50个小案例

    6月20日,省教育厅公示了省级大学生创新创业训练计划项目。依据评审成绩,确定面向省属本科高校立项省级大学生创新创业训练计划项目4000项,其中创新训练项目3354项、创业训练项目472项、创业实践项目174项。其中,德州学院申报的“拼”创潮流等47个项目、山东华宇工学院LED洗墙灯自动清洗器等31个项目确定为创新训练项目,德州学院申报的“云养老”APP平台设计开发等5个项目确定为创业训练项目,德州…

    2022年5月31日
    840
  • 前端js把json字符串转json对象(java对象转json对象命令)

    最近在逛编程问题解答的时候,看到这样的提问:如何将一个JSON数组类型的字符串转换为JSON数组,然后遍历数组取出JSON对象,最后在JS中取出里面的属性。在这里给同样有疑问的朋友做下解答,当然欢迎大神留言区留下更好的回答。 首先我们追本溯源问一下,JSON究竟是什么东西?为什么JSON就是易于数据交换?本文将从以下几个方面去理解JSON: 首先是对“JSON是一种轻量的数据交换格式”的理解; 然…

    2022年8月24日
    960
  • wps打不开文件是什么原因,修复wps无法打开的方法

    WPS是金山软件开发的一款办公软件 WPS的word格式是*.wps 如下图所示为.WPS格式 office是微软开发的办公软件,以前一直很流行,但是最近几年WPS的实用性、便捷性大大的方便了我们。所以现在WPS有超过office的势头 office的word格式是*.doc 如下图所示为.DOC 以前我在外面跑业务的时候,也会经常要打各种报告申请,经常用WPS做的文档传回公司,结果公司打不开,其…

    2022年7月24日
    640
  • 如何做网页推广赚钱,网络推广方法分享

    在网络营销中推广和优化是基石,只有掌握了网络推广的技术,才能让我们的网站在互联网中拥有一席之地,网络推广是每个站长都必须关心和必须去做的事情,网络推广的作用无需置疑。大家可根据自身的能力条件和外部环境,挑自己喜欢的适用的手法来用,希望对各位站长有所帮助。1、博客抢评论。这个不要说了,大家都知道的。 2、您自己的独门秘籍网站推广法。为了防止好方法失传,强烈建议您在此跟帖公开出来。事物只使用才有价值。…

    2022年8月6日
    650
  • 创业之道成功之路,分享白手起家创业点子

    用大格局布局,用小家子气执行,崇正义之气,为梦想狂奔。天时地利人和,不是每家企业都可以复制,不是每个智慧你都可以读懂,实时造英雄,剑在手,气长存。 1:思维动力:一个想法,一个痛点,一个解决方案,一个可以走下去的答案。 2:构建模型:重要事情说三遍,商业闭环,商业闭环,商业闭环。一个成功的商业模型构建离不开思维,战略思维、格局思维、资源思维、金融思维、高速化信息思维、政策思维、投资思维。 3:行动…

    2022年5月21日
    640
  • 如何做外贸网络推广,揭秘外贸推广手段与技巧

    外贸网络推广方式优于传统促销方式,但在这方面转换率特别低,因为许多公司只是表面上看。只能靠谷歌竞价带来询盘。接下来,让我介绍如何推广以及如何将它用于每个人: 外贸网络推广方式有哪些 1.自己的外贸官方网站 对于长期发展的外贸网络推广方法,首先要有自己的外贸官方网站。目前市场上有很多第三方公司,有数百到数千个纯站,你需要数万到60,000才能包含谷歌搜索引擎优化等其他服务。我周围的许多外贸朋友都在寻…

    2022年5月22日
    650
  • 桃红葡萄酒怎么喝,分享8个高逼格喝葡萄酒的方法

    龙程酒业(gdjw.com)4月10日讯:随着人们的生活品位越来越高,节日里葡萄酒是必不可少的点缀。不过,葡萄酒并不是一种可以随便对待的酒品。你需要选择合适的酒杯,需要让葡萄酒达到一定的侍酒温度,因为这些都可能会影响到葡萄酒的口感。 1.起泡酒 适饮温度:起泡酒冰冻之后饮用更佳。把它们冷冻至5-7℃,可以让其更好地展示出酒中的新鲜柠檬气息和活泼酸味。年份香槟的饮用温度稍微高一点,为7-10℃,以突…

    2022年10月6日
    930

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信