新手該如何使用 GitHub?
共 3358字,需瀏覽 7分鐘
·
2022-02-09 09:04
咦,這題我會,畢竟名字帶 GitHub。
不多 BB,直接上干貨!當初學(xué)了三個月就找到后臺開發(fā)的工作,我練手的項目都來自這里!!
GitHub 標星 1.6w+,這個神級寶藏項目,作為編程新手有福了!!
以下是正文:
雖然我很早就知道 GitHub,但是學(xué)會逛 GitHub 的時間特別晚。當時一方面是因為菜,看著這種全是英文的東西難受,不知道該怎么去玩,另一方面是一直在搞 ACM,沒有做一些工程類的項目,所以想當然的以為和 GitHub 也沒什么關(guān)系(當然這種想法是錯誤的)。
后來自己花了一個星期看完了 Python 的基礎(chǔ)知識,就想著找點項目看一看,學(xué)一學(xué),練一練,這個時候我才真正的去了解 GitHub,開始了在 GitHub 的瞎逛之旅,在開始之初,隨之而來的問題是我不知道哪些項目當時還是新手的我,哪些項目是好項目,哪些項目好玩有價值。
雖然現(xiàn)在我已經(jīng)在 GitHub 上逛的相當流暢,但我還是想如果有一個東西可以收集這些對新手友好的東西,那么我當時可以少走更多的彎路,節(jié)省更多的時間吧。
那么有這么一個東西么?
有的,而且已經(jīng)做了三年多,這就是HelloGitHub,一個分享 GitHub 上有趣,入門級的開源項目。
GitHub 網(wǎng)址:https://github.com/521xueweihan/HelloGitHub
在項目中,內(nèi)容每月 28 號以月刊的形式更新發(fā)布,主要是面向編程新手、熱愛編程、對開源社區(qū)感興趣人群的項目。更新的內(nèi)容主要包括:各種語言的流行項目、入門級項目、讓生活變得更美好的工具、書籍、學(xué)習(xí)心得筆記、企業(yè)級項目等。
這些項目都有一些共同的特征,那就是很酷,非常容易上手的項目,編程的魅力和便捷體驗起來就是這么簡單。
再次給出 GitHub 地址: https://github.com/521xueweihan/HelloGitHub
下面我們就來看看,這個項目具體包括啥,我們以最新的月刊(43 期)為例。
0x00 簡介
0x01 目錄
0x02 內(nèi)容
每個類型的項目我們挑一個來看。
C 項目
tmux:一個終端復(fù)用工具,可極大的提高工作效率。
- 提供了強勁的、易于使用的命令行界面;
- 可橫向和縱向分割窗口;
- 窗格可以自由移動和調(diào)整大小,或直接利用四個預(yù)設(shè)布局之一;
- 可在多個緩沖區(qū)進行復(fù)制和粘貼;
- 可通過交互式菜單來選擇窗口、會話及客戶端;
- 等等。
C# 項目
BenchmarkDotNet:功能強大的用于基準測試 .NET 庫。
C++ 項目
dbg-macro:打日志是 C++ 開發(fā)中必不可少的一種 debug 方式,dbg-macro 受 rust-lang 中 的 dbg 啟發(fā),提供比 printf 和 std::cout 更好的宏函數(shù)。主要有如下特點:
- 美觀的彩色輸出(當輸出不是交互式終端時,顏色將自動禁用);
- 兼容 C++11,并且是 header-only;
- 支持基礎(chǔ)類型和 STL 容器類型的輸出;
- 除了基本信息外,還輸出變量名和類型;
- 啟用 DBG_MACRO_DISABLE 生成 release 版。
#include
Go 項目
go-admin:基于 Golang 語言的數(shù)據(jù)可視化與管理平臺。特性如下:
- 高生產(chǎn)效率:10 分鐘內(nèi)做一個好看的管理后臺;
- 主題:默認為 adminlte,更多好看的主題正在制作中,歡迎給我們留言;
- 插件化:提供插件使用,真正實現(xiàn)一個插件解決不了問題,那就兩個;
- ?認證:開箱即用的 rbac 認證系統(tǒng);
- ??框架支持:支持大部分框架接入,讓你更容易去上手和擴展。
Java 項目
eladmin:基于 Spring Boot 2.1.0、Vue 的前后端分離的后臺管理系統(tǒng),支持數(shù)據(jù)字典與數(shù)據(jù)權(quán)限管理、一鍵生成前后端代碼、前端菜單動態(tài)路由等。基于 Spring Boot2.1.0 框架,涉及的技術(shù)棧:非關(guān)系數(shù)據(jù)庫 redis、接口測試工具 swagger、druid 數(shù)據(jù)源驅(qū)動、郵件依賴(javax.mail)、三方支付和云存儲 SDK、頁面模板引擎 freemarker。技術(shù)棧豐富,初學(xué)者可以作為實戰(zhàn)項目學(xué)習(xí)和使用。
JavaScript
chart-race-react:一個簡單易用的 Bar Chart Race(長條圖賽跑動畫) React 組件。示例代碼:
import ReactDOM from 'react-dom'; import BarChart from 'chart-race-react'; ReactDOM.render(
Python 項目
TagUI-Python:一個 Python 自動化操作的庫。比如:自動打開網(wǎng)頁并截圖,示例代碼:
t.init() t.url('https://www.google.com') t.type('q', 'decentralization[enter]') t.snap('page', 'results.png') t.close()
Ruby 項目
shift:一個 Ruby 語言寫的在線 MySQL 數(shù)據(jù)庫遷移工具。
Swift 項目
Percent:讓 Swift 語言支持百分比類型,消除精度缺失的煩惱。示例代碼:
import Percent 10% + 5.5% //=> 15.5% -10% / 2 //=> -5%
其他
cascadia-code:微軟開源的一套等寬字體,有趣的是可以組合字符創(chuàng)建新的字形。組合效果如下:
開源書籍
python_ebook:Python 編程相關(guān)的電子書資源集合項目。
book:(英文)《Cosmic Python》講述如何管理復(fù)雜性的 Pythonic 應(yīng)用程序結(jié)構(gòu)的書籍。
教程
BigData-Notes:大數(shù)據(jù)入門教程,該教程介紹了大數(shù)據(jù)常用技術(shù)棧的基礎(chǔ)和核心知識。內(nèi)容涵蓋:Hadoop、Spark、Storm、HBase、Hive、ZooKeeper、Kafka 等。
機器學(xué)習(xí)
dimensionality_reduction_alo_codes:該項目使用 Python 實現(xiàn)了 11 種經(jīng)典的數(shù)據(jù)抽取(數(shù)據(jù)降維)算法。同時附有相關(guān)資料、展示效果,適用于機器學(xué)習(xí)初學(xué)者和剛剛?cè)肟訑?shù)據(jù)挖掘的小伙伴。
0x03 寫在之后
以上,就是今天分享的內(nèi)容,希望更多的人能夠知道 HelloGitHub 這個項目,內(nèi)容已經(jīng)在這了,萬事俱備,差的就是你學(xué)習(xí)的驅(qū)動力和對作者 Star 的支持了。
作者:Rocky0429
鏈接:https://www.zhihu.com/question/21612257/answer/928278410
分享兩個 GitHub 上的優(yōu)秀開源干貨:
一、LeetCode-Go
截至 2020 年 11 月,該開源項目配套的網(wǎng)站已經(jīng)有一百二十萬的訪問量,在 GitHub 上收獲了 8500 顆小星星。
這個開源項目是@halfrost(中文名一縷殤流化隱半邊冰,簡稱霜神)去年刷算法題時整理出的 520 題,每道題都寫了解題思路,全部都是 GO 實現(xiàn)的,并且每題都 runtime beats 100% 了。
至于為什么要求每題都 runtime beats 100%。 霜神是這樣回復(fù)的:優(yōu)化到 beats 100% 才算是把這題做出感覺了。有好幾道 Hard 題,可以用暴力解法 AC 了,但只 beats 了 5%,這題就如同沒做一樣;而且面試中如果給了這樣的答案,面試官也不會滿意,“還有沒有更優(yōu)解?”。如果通過自己的思考能給出更優(yōu)解,面試官會更滿意一些。 如果你把這些題解都摸透,相信在面試環(huán)節(jié)你可以從容的回答“還有沒有更優(yōu)解”。
作者介紹:霜神是前阿里巴巴資深后端工程師,業(yè)余時間酷愛寫博客,目前他的博客已經(jīng)有 300W+ 的瀏覽量,是 iOS 開發(fā)屆的大佬級別人物,霜神為人謙和,上周六我說能不能提供一份離線電子書,方便讀者閱讀,他立馬熬夜研究,修改了好幾個版本。
離線版筆記下載地址(已獲授權(quán))鏈接: https://pan.baidu.com/s/1prMLkrf7MqANVyrqZjzPhw 密碼: gjht
--來自百度網(wǎng)盤超級會員V3的分享
離線版筆記下載地址(已獲授權(quán)): LeetCode - Go 電子書下載
二、leetcode_101
高暢現(xiàn)在是谷歌無人車部門(Waymo)的工程師,從事計算機視覺和機器學(xué)習(xí)方向。
他在美國卡內(nèi)基梅隆大學(xué)攻讀碩士學(xué)位時,為了準備實習(xí)秋招,他從夏天開始整理某 code 上的題目,幾個月的時間,刷了幾百道題目。
憑借著扎實的基礎(chǔ)和長期的勤奮,他很快找到了如愿的工作。
入職前,閑暇的時候,他突然想到,自己刷了那么多題,而且對很多題目的解法有著總結(jié),為何不把這些題目歸納總結(jié)一些,做成一個便于后來者閱讀學(xué)習(xí)的電子書呢?
有了想法,作為行動派的他說干就干,于是這樣一本制作精美且免費開源的書籍出現(xiàn)在大家面前。
引用他的話來說:
本書分為算法和數(shù)據(jù)結(jié)構(gòu)兩大部分,又細分了十五個章節(jié),詳細講解了刷題時常用的技巧。我把題目精簡到了101道,一是呼應(yīng)了本書的標題,二是不想讓讀者閱讀和練習(xí)時間過長。 這么做不太好的一點是,如果只練習(xí)這101道題,讀者可能對算法和數(shù)據(jù)結(jié)構(gòu)的掌握不夠扎實。因此在每一章節(jié)的末尾,我都加上了一些推薦的練習(xí)題,并給出了一些解法提示,希望讀者在理解每一章節(jié)后把練習(xí)題也完成。
整本書,我仔細看了一遍,并對書中的一些解題思路和代碼進行校驗。
來源:向谷歌工作的師兄偷師學(xué)藝 作者:公子龍
從我的直觀感受來說,這是一本用心的數(shù)據(jù)結(jié)構(gòu)算法類書籍,全書總共 143 頁篇幅,詳細講解算法的內(nèi)容有十五個章節(jié)。
每個章節(jié)都是一些重要的知識點,伴有基礎(chǔ)講解和例題介紹,當然,也有一些推薦的練習(xí)題。
話不多說,讓我們來看一下書的目錄:
第二章是講解貪心算法的,我們摘取一些內(nèi)容查看,發(fā)現(xiàn)對知識點的講解介紹是細致入微的。
GitHub 地址:https://github.com/changgyhub/leetcode_101
為了方便讀者,我已經(jīng)將開源電子書下載后上傳到百度云盤:
鏈接: https://pan.baidu.com/s/1OeRbS-EZTpneTDBAuS9yEA
密碼: guhb
