如何在 Github 上發現優秀的開源項目?

2021-01-08 開源中國

之前發過一系列有關 GitHub 的文章,有同學問了,GitHub 我大概了解了,Git 也差不多會使用了,但是還是搞不清 GitHub 如何幫助我的工作,怎麼提升我的工作效率?

問到點子上了,GitHub 其中一個最重要的作用就是發現全世界最優秀的開源項目,你沒事的時候刷刷微博、知乎,人家沒事的時候刷刷 GitHub ,看看最近有哪些流行的項目,久而久之,這差距就越來越大,那麼如何發現優秀的開源項目呢?這篇文章我就來給大家介紹下。

1. 關注一些活躍的大牛

GitHub 主頁有一個類似微博的時間線功能,所有你關注的人的動作,比如 star、fork 了某個項目都會出現在你的時間線上,這種方式適合我這種比較懶的人,不用主動去找項目,而這種基本是我每天獲取信息的一個很重要的方式。不知道怎麼關注這些人?那麼很簡單,關注我 stormzhang ,以及我 GitHub 上關注的一些大牛,基本就差不多了。

2. Trending

點擊下圖的 Explore 菜單到「發現」頁面

緊接著點擊 Trending 按鈕

這個 Trending 頁面是幹嘛的呢?直譯過來就是趨勢的意思,就是說這個頁面你可以看到最近一些熱門的開源項目,這個頁面可以算是很多人主動獲取一些開源項目最好的途徑,可以選擇「當天熱門」、「一周之內熱門」和「一月之內熱門」來查看,並且還可以分語言類來查看,比如你想查看最近熱門的 Android 項目,那麼右邊就可以選擇 Java 語言。

這樣頁面推薦大家每隔幾天就去看下,主動發掘一些優秀的開源項目。

3. Search

除了 Trending ,還有一種最主動的獲取開源項目的方式,那就是 GitHub 的 Search 功能。

舉個例子,你是做 Android 的,接觸 GitHub 沒多久,那麼第一件事就應該輸入 android 關鍵字進行搜索,然後右上角選擇按照 star 來排序,結果如下圖:

如果你是學習 iOS 的,那麼不妨同樣的方法輸入 iOS 關鍵字看看結果:

可以看到按照 star 數,排名靠前基本是一些比較火的項目,一定是很有用,才會這麼火。值得一提的是左側依然可以選擇語言進行過濾。

而對於實際項目中用到一些庫,基本上都會第一時間去 GitHub 搜索下有沒有類似的庫,比如項目中想採用一個網絡庫,那麼不妨輸入 android http 關鍵字進行搜索,因為我只想找到關於 Android 的項目,所以搜索的時候都會加上 android 關鍵字,按照 star 數進行排序,我們來看下結果:

可以看到 Retrofit、OkHttp、android-async-http 是最流行的網絡庫,只不過 android-async-http 的作者不維護了,之前很多人問我網絡庫用哪個比較好?哪怕你對每個網絡庫都不是很了解,那麼單純的按照這種方式你都該優先選擇 Retrofit 或者 OkHttp,而目前絕大部分 Android 開發者確實也都是在用這兩個網絡庫,當然還有部分在用 Volley 的,因為 google 沒有選擇在 GitHub 開源 volley,所以搜不到 volley 的上榜。

除此之外,GitHub 的 Search 還有一些小技巧,比如你想搜索的結果中 star 數大於1000的,那麼可以這樣搜索:

android http stars:>1000

當然還有其他小技巧,但是我覺得不是很重要,就不多說了。

有些人如果習慣用 Google 進行搜索,那麼想搜索 GitHub 上的結果,不妨前面加 GitHub 關鍵字就ok了,比如我在 google 裡輸入 GitHub android http ,每個關鍵字用空格隔開,然後搜索結果如下:

可以看到,基本也是我們想要的結果,只不過排序就不是單純的按照 star 來排序了。

福利大放送

相信以上三種方法夠大家遨遊在 GitHub 的海洋了,最後給大家獻上一些福利,這些項目是 GitHub 上影響力很大,同時又對你們很有用的項目:

這個項目目前 star 數排名 GitHub 第三,總 star 數超過6w,這個項目整理了所有跟編程相關的免費書籍,而且全球多國語言版的都有,中文版的在這裡:free-programming-books-zh,有了這個項目,理論上你可以獲取任何編程相關的學習資料,強烈推薦給你們!

俗話說,不會用 shell 的程式設計師不是真正的程式設計師,所以建議每個程式設計師都懂點 shell,有用不說,裝逼利器啊!而 oh-my-zsh 毫無疑問就是目前最流行,最酷炫的 shell,不多說了,懂得自然懂,不懂的以後你們會懂的!

GitHub 上有各種 awesome 系列,簡單來說就是這個系列搜羅整理了 GitHub 上各領域的資源大匯總,比如有 awesome-android, awesome-ios, awesome-java, awesome-python 等等等,就不截圖了,你們自行去感受。

GitHub 的使用有各種技巧,只不過基本的就夠我們用了,但是如果你對 GitHub 超級感興趣,想更多的了解 GitHub 的使用技巧,那麼這個項目就剛好是你需要的,每個 GitHub 粉都應該知道這個項目。

這個項目是我一個好朋友 Trinea 整理的一個開源項目,基本囊括了所有 GitHub 上的 Android 優秀開源項目,但是缺點就是太多了不適合快速搜索定位,但是身為 Android 開發無論如何你們應該知道這個項目。

這個項目跟上面的區別是,這個項目只整理了所有跟 Android UI 相關的優秀開源項目,基本你在實際開發終於到的各種效果上面都幾乎能找到類似的項目,簡直是開發必備。

這個項目是我的邪教群的一位管理員整理的,幾乎包括了國內各種學習 Android 的資料,簡直太全了,我為這個項目也稍微做了點力,強烈推薦你們收藏起來。

這個就不多說了,之前給大家推薦過的,國內一線網際網路公司內部面試題庫。

這是一份非常詳細的面試資料,涉及 Android、Java、設計模式、算法等等等,你能想到的,你不能想到的基本都包含了,可以說是適應於任何準備面試的 Android 開發者,看完這個之後別說你還不知道怎麼面試!

總結

GitHub 上優秀開源項目真的是一大堆,就不一一推薦了,授人以魚不如授人以漁,請大家自行主動發掘自己需要的開源項目吧,不管是應用在實際項目上,還是對源碼的學習,都是提升自己工作效率與技能的很重要的一個渠道,總有一天,你會突然意識到,原來不知不覺你已經走了這麼遠!

出處:微信公眾平臺:  AndroidDeveloper「googdev」

相關焦點

  • GitHub 上能挖礦的神仙技巧 - 如何發現優秀的開源項目
    前言本文介紹如何在 GitHub 上發現優秀的開源項目,找到你想要的礦。GitHub 作為全球最大的同性交友網站,也是礦資源非常豐富的礦場。GitHub 有時比 Google 還有用,如果你不懂如何使用它來挖礦,那你不算一名合格的程式設計師。GitHub 是一個寶藏庫,可沒有藏寶圖,GitHub 這個億計的優秀的開源項目也和你沒有關係。
  • Github上優秀C++開源項目推薦
    /CoatiSoftware/Sourcetrail一個免費開源、跨平臺的可視化源碼探索項目。程式設計師在它的幫助下可以快速熟悉陌生項目、學習開源項目、框架等,此等利器趕快去試試吧。該項目結構清晰、使用簡單,代碼量少適合使用和「把玩」。
  • 1月份Github上熱門Python開源項目!
    1月份GitHub上最熱門的Python開源項目排行已經出爐啦,一起來看看上榜詳情:1. fastapihttps://github.com/tiangolo/fastapiStar 9051FastAPI 是一個 Rails 庫用來快速查詢相互依存的數據集合併返回時候人類閱讀的
  • 12月份GitHub上熱門的Java開源項目
    12月份GitHub上最熱門的開源項目排行已經出爐啦,這個月Java相關的開源項目上榜有點多哦,一起來看看上榜詳情:Mindustryhttps://github.com/Anuken/MindustryStar 7948Mindustry是一款優秀的開源沙盒塔防遊戲,玩家可以自行下載源碼進行修改,如果你想自己編譯,請先確保自己已安裝Java 8和JDK 8。
  • 2月份Github上熱門的開源項目
    2月份GitHub上最熱門的開源項目排行已經出爐啦,一起來看看上榜詳情:1. wuhan2020https://github.com/wuhan2020/wuhan2020Star 6123
  • Github上優秀開源C++項目推薦第二彈
    srpc就是以它為基礎,作為獨立項目開源。支持srpc,brpc和thrift等協議。構建異步任務流,支持常用的串並聯,也支持更加複雜的DAG結構。作為並行編程工具使用。除了網絡任務,我們也包含計算任務的調度。所有類型的任務都可以放入同一個流中。在Linux系統下作為文件異步IO工具使用,性能超過任何標準調用。磁碟IO也是一種任務。
  • 如何在Github上創建一個有逼格的開源項目
    首先, 我要感謝 Github 讓開源變得如此簡單, 簡單到只需要有勇氣就行.門檻雖然降低了, 只可惜大多數程序猿並沒有足夠(Hua)嚴(Xin)肅(Si)對待, 使得開源的項目就好像只是公開的學習筆記, 無人問津, 完全喪失應有的意義.
  • 12月份GitHub上熱門的開源項目
    12月份GitHub上最熱門的開源項目排行已經出爐啦,這個月Java相關的開源項目上榜有點多哦,一起來看看上榜詳情:1. coding-interview-universityhttps://github.com/jwasham/coding-interview-university
  • 3月份Github上熱門的Java開源項目
    3月份GitHub上熱門的Java開源項目排行已經出爐啦,一起來看看上榜詳情吧!1.該項目是對高並發大流量如何進行秒殺架構,而做的一個系統整理,如果你完全沒接觸過 MQ、SpringBoot、Redis、Dubbo、ZK 、Maven,lua等,那麼我建議你可以先在網上搜一下每一塊知識的快速入門。
  • 3月份Github上熱門的開源項目
    3月份GitHub上最熱門的開源項目排行已經出爐啦,這個月的熱門項目都被Java語言承包了,一起來看看上榜詳情吧!根據創建者描述該項目旨在手把手撕LeetCode題目,完扒各種算法套路。2. fastbookhttps://github.com/fastai/fastbookStar 4145
  • 程式設計師如何在 Github 精準搜索開源項目?
    官網地址:https://github.com/相信看完這篇文章,你就可以學會如何精準地在GitHub搜索項目。開源項目的組成部分在講清楚之前呢,我們先來了解一下一個開源項目有哪些組成部分:name: 項目名description: 項目的簡要描述項目的源碼README.md: 項目的詳細情況的介紹那麼除了這些要素之外,項目本身的
  • 盤點:2017年GitHub上30個優秀的機器學習項目
    我們比較了過去一年近8,800個開源的機器學習項目,從中選擇了30個表現優秀的,分享給讀者。這是一份非常精彩的名單,它仔細挑選了2017年1月至12月之間發布的最佳開源機器學習庫、數據集和應用程式。我們綜合考慮項目的受歡迎程度,參與度和進展程度來評估項目質量。為了給讀者更直觀的感受,使用GitHub上的關注量(星星數量)來表示項目熱度。
  • 2020年3月Github上熱門的開源項目
    2020年3月Github上熱門的開源項目 3月份GitHub上最熱門的開源項目排行已經出爐啦,這個月的熱門項目都被Java語言承包了,一起來看看上榜詳情吧。
  • 推薦一些 GitHub 上值得前端學習的開源實戰項目,進階必看!
    最近好多同學問我了解找一些學習的實戰項目;看一個別人寫的優秀的項目,從中可以學到很多;比如代碼的規範,項目的結構;從項目作者每次提交記錄,去學習一些別人的開發思維以及開發整個項目的流程;下面我主要找了一些比較火的一些框架以及 node 項目。
  • 8月份GitHub上熱門的Java開源項目
    8月份GitHub上最熱門的Java開源項目排行已經出爐啦,一起來看看上榜詳情吧:5834tsunami-security-scanner是谷歌專門為大型企業網絡開源的一個漏洞掃描神器,主要用於數千個甚至數百萬個物聯網組成的企業系統。
  • 6月份Github上熱門的開源項目
    6月份GitHub上熱門的開源項目排行已經出爐啦,一起來看看上榜詳情吧!CPlusPlusThingshttps://github.com/Light-City/CPlusPlusThingsStar 5402這是一個適合初學者從入門到進階的倉庫,解決了面試者與學習者想要深入 C++及如何入坑 C++的問題。
  • 2020年8月份Github上最熱門的開源項目
    8月份github上最熱門的開源項目排行已經出爐啦,一起來看看上榜詳情吧:1,fastbookhttps://github.com/fastai/fastbook Star 8732>fast.ai的創始人、前Kaggle首席科學家Jeremy Howard教授在Github上開源的一本書籍,全書草稿已公布22章,通過這份它你將學到:如何在計算機視覺、自然語言處理(NLP)、推薦系統、表格和時間序列數據分析中創建最先進的模型如何使用全新的fastai v2庫和PyTorch深度學習的基礎:什麼是神經網絡,它們是如何訓練的
  • 3月份Github上熱門的JavaScript開源項目
    3月份GitHub上最熱門的JavaScript開源項目排行已經出爐啦,這個月的熱門項目都被React相關的承包了,一起來看看上榜詳情吧。Rocket.Chat使用Meteor框架做的開源消息應用。
  • 7月份Github上熱門的開源項目
    7月份GitHub上最熱門的開源項目排行已經出爐啦,一起來看看上榜詳情吧!tsunami-security-scanner是谷歌專門為大型企業網絡開源了一個漏洞掃描神器,主要用於數千個甚至數百萬個物聯網組成的企業系統。
  • 5月份Github上最熱門的開源項目
    5月份GitHub上最熱門的開源項目排行已經出爐啦,一起來看看上榜詳情吧:1. denohttps://github.com/denoland/denoStar 61499Deno 是 V8 上的安全 TypeScript 運行時。