首页 > 【硬核干货】如何高效找到优质编程项目?
头像
程序员鱼皮
编辑于 2021-03-01 10:44
+ 关注

【硬核干货】如何高效找到优质编程项目?

大家都知道,想学好编程、丰富简历、提升求职竞争力,一定要多敲代码做项目。

说到项目,我最近收到了很多小伙伴的私信和困惑,最常见的是以下两个情况:

  1. 不知道到哪儿去找编程项目,只能四处求人

  2. 网上的编程项目太多,不知道哪些项目值得学习

那这篇文章就教大家如何高效找到优秀编程项目。

读完本文,不仅能帮助你告别伸手党,甚至还能让你成为一个项目分享大神!

下面我们依次去解决四个问题:

  1. 到哪儿去找项目?

  2. 什么是好的项目?

  3. 怎么高效找项目?

  4. 怎么高速下载项目?

到哪儿去找项目?

有很多获取项目的途径,比如书上习题、网络课程、线下培训等,但最好的找项目的地方一定是 GitHub,程序届人尽皆知的代码开源托管平台。

在这里,你可以找到各种各样的开源项目,大到世界知名框架、小到个人练习片段,还能和他人一起协作完成项目。利用好 GitHub,可以大大开拓你的眼界,提升编程学习能力。

这里提及另外两个找项目的平台,即 Gitee(码云)和开源中国。Gitee 其实就是国内版的 GitHub,但项目数远不及 GitHub;而开源中国和 Gitee 有非常紧密的合作,将一些开源项目进行了整理分类。

GitHub 平台是非常大的,在这里,每天有无数个新项目产生、有数亿行代码被提交,让人眼花缭乱、迷失方向。那么如何从海量的项目中大浪淘沙,快速发现那些优秀的、或者极具潜力的开源项目呢?

首先我们要明确什么是好的项目。

什么是好的项目?

虽说没有最好的项目,只有最适合自己的项目。但是在 GitHub 上,通过一些指标和信息,也可以对开源项目进行基本的评判。

进入一个项目的详情页,一个好的项目通常具有如下特点:

  • 更多的 watch,表示对项目的关注度高

  • 更多的 star(收藏),对项目实用性的肯定

  • 更多的 Fork(派生搬运),表示想要学习项目或做贡献

  • 积极的 issues(问题),表示更多人使用项目并希望改进

  • 积极的 Pull requests(代码合并请求),表示更多人愿意合作贡献代码

  • 频繁更新最近提交时间,表示项目仍在维护

  • 可直接访问的官网,更正式

  • 类别标签明确,帮助开发者对项目进行定位

再往下看,一个好的项目的 README.md(项目描述)文件通常会更清晰和完善,比如 Ant Design 提供了多种语言的文档:

明确了优秀项目的特点后,如何高效地在 GitHub 上找项目呢?

怎么高效找项目?

下面分享查找 GitHub 优秀项目的高级技巧和免费资源,多达 数十种!选择自己适合的即可。

GitHub 搜索

GitHub 既然收录了那么多项目,自然也会提供一套帮助你找项目的搜索机制,运行好搜索机制,可以灵活高效地找到适合自己的项目。

可以直接输入关键词搜索,再配合排序规则,能够较方便地找到优秀项目。

简单搜索

大多数情况下,简单搜索就够了,但有时,排名最靠前的项目未必是我们需要的。比如有一个曾经很知名的项目,却停止维护多年,我们也不敢轻易去使用它。

GitHub 还提供了条件搜索,通过输入特定的搜索表达式,来实现更高精度的过滤,从而找到更符合预期的项目。

比如搜索自述文件中包含 jquery、star 超过 1000、且上次更新时间在几年内的仓库:

条件搜索

有很多过滤条件,但是 完全无需记忆!因为 GitHub 提供了 高级搜索,可以自动生成搜索表达式:

image-20210221171940242

还可以通过 GitHub 文档(docs.github.com)来浏览所有的搜索条件。

Explore GitHub

GitHub 官方探索,基于兴趣为你推荐开源项目,精准度很高!

Topics on GitHub

GitHub 官方提供的项目主题分类,帮助你找到合适的项目。

GitHub Awesome

GitHub 官方提供的 Awesome 合集,帮助你发现特定标签的资源大全。

Awesome 项目是指由社区同学共同贡献而成的项目,包含了某一技术的完整生态(如优秀开源项目、类库、工具、知识点)。比如awesome-java(https://github.com/akullpp/awesome-java)、awesome-vue(https://github.com/vuejs/awesome-vue)。建议大家多看awesome项目,学习和查漏补缺都是极好的~

awesome

GitHub 官方 Trending

GitHub官方提供的项目趋势统计,能够看到一段时间内项目和开发者新增star数的排行。还支持选择语言、编程语言及时间范围,帮你发现优秀、有潜力的开源项目。

趋势

HelloGitHub

分享 GitHub 上有趣、入门级的开源项目。这里有各种语言的开源项目、让生活变得更美好的工具、书籍、学习笔记、教程等。通过这些项目你将学习到更多编程知识、提高自己的编程技巧、发现编程的乐趣。

HelloGitHub

GitHub Trending

GitHub 趋势统计,帮助你寻找最好的Github项目,支持选择特定的语言来筛选项目。

GitHub TOP100

Gitstar Ranking

非官方的 GitHub 排行榜,按照 star 数进行排序,支持个人、组织和项目排行。能够发现成熟又活跃的优秀项目

Gitstar 排行

Githuber.cn

发现优秀 GitHub 开发者的网站,可以查看国内仓库语言使用情况统计、GitHub 开发者排名等,还能查看自己的排名哦~

仓库语言统计

searchcode

如果你想搜索代码片段,可以使用 searchcode,简单全面的开源代码搜索器,一键在 40 万个项目、750 亿行代码中高效搜索,还提供 API 接口。帮助您在 243 个语言中找到函数、API 和库的示例,跨越 GitHub 等 10 个公共代码来源!还可以使用其提供的 API 接口,给网站添加代码搜索功能。

一键搜索

LibHunt

汇集了 GitHub 上实用的开源项目和软件类库,让编程人员快速发现好的项目。支持近 20 种不同编程语言的项目,以及各种热门标签,可以快速搜索,还能查看项目热度。

LibHunt 热榜

codelf

虽然是变量命名神器,但由于其底层基于 searchcode 开发,因此也可以用于快速搜索代码和项目。

输入关键词后,可以选择和关键词相关的标签,一键跳转至项目代码。

怎么高速下载项目?

由于 GitHub 是国外的网站,所以有时我们下载 GitHub 项目的速度非常慢,这里教大家几种提升下载速度的方式。

GitClone

GitHub 缓存加速网站,为开发者服务。直接在命令行更改仓库地址即可使用,上手方便,缓存节点多,是最推荐的一种方式!

GitHub 加速下载工具

网上有很多在线的 GitHub 加速下载工具,使用起来都很方便。

Gitee 导入

可以直接在 Gitee(国内版 GitHub)创建仓库,并选择从 GitHub 导入。Gitee 会自动将代码从 GitHub 进行同步,然后你就可以在 Gitee 以更快的速度来下载和管理项目代码。

Gitee 导入


以上就是发现优质编程项目的分享,如果想要彻底玩转 GitHub,建议阅读 GitHub 官方文档。

如果想要给项目贡献代码,掌握版本控制工具 Git 的用法也是至关重要的,后面会分享 Git 相关的学习资源。

有帮助的话,求各位朋友们点赞收藏支持下啦!

全部评论

(3) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期精华帖

热门推荐