怎么查找开源项目,找到后怎么使用

一、怎么查找开源项目

以GitHub为例,GitHub上的开源项目非常多,且全面,不过速度比较慢。
码云gitee速度比较快,如果需要的话,可以将GitHub上的代码同步到码云上从码云下载。

而且码云gitee搭建个人博客也快,还有一个Web IDE的功能,可在线浏览代码,且体验很好。

GitHub上的项目,一般有项目名,项目描述信息,README 等。
在GitHub上查找项目:
1、查找项目名字里面包含关键字的:其中的冒号是英文的
in:name 关键字,比如项目名包含Springboot,搜索in:name spring boot
在这里插入图片描述
2、限制项目的热度,比如stars数目,forks数目:
in:name spring boot stars:>3000in:name spring boot stars:>3000 forks:>50,限制条件可多个,并行。
还可限制语言:language:java
在这里插入图片描述
3、在项目的描述里,包含想要的信息

比如查找一个描述里包含微服务,且语言为Java的项目,且最后更新时间在2019-01-01以后:
in:description 微服务 language:java pushed:>2019-01-01
在这里插入图片描述
比如查找一个用python写的爬虫项目,且stars数目大于1000,最后更新时间不早于2019-01-01
在这里插入图片描述
限制readme的内容:in:readme 关键词,多个条件限定之间用空格分隔

二、怎么使用项目练手

拿到一个开源项目/接手别人的项目,并不是要从头开始敲,可以参考以下这些做法来学习别人的项目(我也是看的别人的做法)

1、
第一步,看到用到什么技术栈和知识点,有一个大概的方向。

第二步,看架构/框架,也可以说是看项目的目录结构,这一步可以知道各个模块是怎么通信的,这个时候可以用纸/思维导图写出来,加深印象。

第三步,跑项目/看功能,看一下这个项目实现了什么功能,可以用它来做什么,这一步骤也可以用纸记录一下。

第四步,从目录结构看一下整个项目的入口文件引入了什么全局的东西,这个可以单独抽出来学习。

第五步,阅读源码,这个最好就是一个一个模块/功能去阅读,搞清楚是怎么实现的,这一部分的话是最关键的(废话),只看一次的话很难会搞懂,所以要多看几次,为什么用到这个API,为什么要以这种形式写呢,能不能写得更简洁一点,能不能抽取出来具有更高的复用性呢。这些都是要去考虑的。

第六步,然后基于自己对这个项目的了解,可以尝试先给项目添加一些小功能点,确定没问题后,可以尝试对项目做一些修改,优化项目,添加更多的功能,或者抽取模块,降低复杂度等等。

最后,学习项目最关键的是思想和技术的运用,要对整体做一个学习而不是只盯着某一个模块或者是某一段代码。

2、
对于前后端分离的项目,可以先找到一个功能,再前端找到这个功能的接口,然后后端找到这个功能的接口,从controller慢慢看慢慢点到service dao这些,前端也可以看看。

3、
另外一种思路:
1 了解项目的需求,是干什么的,主要模块有哪些
2 了解 项目的技术架构,用了哪些具体的技术,先提前去做个大致的了解
3 搞清楚项目代码 目录结构,每个包,配置文件都是干啥的
4 找一个模块,代码调试,前段到后端的流程,研究下里面代码怎么写的
5 都熟悉了以后,看能不能自己完善里面的代码或者自己创建个新功能

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页