diff --git a/README.md b/README.md index 42135f89..c6d8f8ea 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ | :card_index: | :jack_o_lantern: | :beer: | :fish_cake: | :octocat: | | ------- | ----- | ------------ | ------ | --------- | -| [第 54 期](/content/54/HelloGitHub54.md) | [第 53 期](/content/53/HelloGitHub53.md) | [第 52 期](/content/52/HelloGitHub52.md) | [第 51 期](/content/51/HelloGitHub51.md) | +| [第 55 期](/content/55/HelloGitHub55.md) | [第 54 期](/content/54/HelloGitHub54.md) | [第 53 期](/content/53/HelloGitHub53.md) | [第 52 期](/content/52/HelloGitHub52.md) | [第 51 期](/content/51/HelloGitHub51.md) | | [第 50 期](/content/50/HelloGitHub50.md) | [第 49 期](/content/49/HelloGitHub49.md) | [第 48 期](/content/48/HelloGitHub48.md) | [第 47 期](/content/47/HelloGitHub47.md) | [第 46 期](/content/46/HelloGitHub46.md) | | [第 45 期](/content/45/HelloGitHub45.md) | [第 44 期](/content/44/HelloGitHub44.md) | [第 43 期](/content/43/HelloGitHub43.md) | [第 42 期](/content/42/HelloGitHub42.md) | [第 41 期](/content/41/HelloGitHub41.md) | | [第 40 期](/content/40/HelloGitHub40.md) | [第 39 期](/content/39/HelloGitHub39.md) | [第 38 期](/content/38/HelloGitHub38.md) | [第 37 期](/content/37/HelloGitHub37.md) | [第 36 期](/content/36/HelloGitHub36.md) | diff --git a/README_en.md b/README_en.md index d1cebe82..40eba062 100644 --- a/README_en.md +++ b/README_en.md @@ -23,7 +23,7 @@ The [latest article](https://github.com/521xueweihan/HelloGitHub/blob/master/con | :card_index: | :jack_o_lantern: | :beer: | :fish_cake: | :octocat: | | ------- | ----- | ------------ | ------ | --------- | -| [NO.54](/content/54/HelloGitHub54.md) | [NO.53](/content/53/HelloGitHub53.md) | [NO.52](/content/52/HelloGitHub52.md) | [NO.51](/content/51/HelloGitHub51.md) | +| [NO.55](/content/55/HelloGitHub55.md) | [NO.54](/content/54/HelloGitHub54.md) | [NO.53](/content/53/HelloGitHub53.md) | [NO.52](/content/52/HelloGitHub52.md) | [NO.51](/content/51/HelloGitHub51.md) | | [NO.50](/content/50/HelloGitHub50.md) | [NO.49](/content/49/HelloGitHub49.md) | [NO.48](/content/48/HelloGitHub48.md) | [NO.47](/content/47/HelloGitHub47.md) | [NO.46](/content/46/HelloGitHub46.md) | | [NO.45](/content/45/HelloGitHub45.md) | [NO.44](/content/44/HelloGitHub44.md) | [NO.43](/content/43/HelloGitHub43.md) | [NO.42](/content/42/HelloGitHub42.md) | [NO.41](/content/41/HelloGitHub41.md) | | [NO.40](/content/40/HelloGitHub40.md) | [NO.39](/content/39/HelloGitHub39.md) | [NO.38](/content/38/HelloGitHub38.md) | [NO.37](/content/37/HelloGitHub37.md) | [NO.36](/content/36/HelloGitHub36.md) | diff --git a/content/01/HelloGitHub01.md b/content/01/HelloGitHub01.md index 2f41fa55..3ef11018 100644 --- a/content/01/HelloGitHub01.md +++ b/content/01/HelloGitHub01.md @@ -112,7 +112,7 @@ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/02/HelloGitHub02.md b/content/02/HelloGitHub02.md index 0336c847..9712c6f3 100644 --- a/content/02/HelloGitHub02.md +++ b/content/02/HelloGitHub02.md @@ -158,7 +158,7 @@ if __name__ == '__main__': ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/03/HelloGitHub03.md b/content/03/HelloGitHub03.md index 1d11c73a..71989f93 100644 --- a/content/03/HelloGitHub03.md +++ b/content/03/HelloGitHub03.md @@ -99,7 +99,7 @@ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/04/HelloGitHub04.md b/content/04/HelloGitHub04.md index d00cc948..b23cdf2f 100644 --- a/content/04/HelloGitHub04.md +++ b/content/04/HelloGitHub04.md @@ -97,7 +97,7 @@ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/05/HelloGitHub05.md b/content/05/HelloGitHub05.md index 50dde9c8..dfb9cf7f 100644 --- a/content/05/HelloGitHub05.md +++ b/content/05/HelloGitHub05.md @@ -121,7 +121,7 @@ $pinyin->convert('带着希望去旅行,比到达终点更美好', PINYIN_ASCI ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/06/HelloGitHub06.md b/content/06/HelloGitHub06.md index e7659bc2..710765a3 100644 --- a/content/06/HelloGitHub06.md +++ b/content/06/HelloGitHub06.md @@ -162,7 +162,7 @@ brew install mercurial ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/07/HelloGitHub07.md b/content/07/HelloGitHub07.md index bc3eab9c..ef807252 100644 --- a/content/07/HelloGitHub07.md +++ b/content/07/HelloGitHub07.md @@ -177,7 +177,7 @@ ua.random ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/08/HelloGitHub08.md b/content/08/HelloGitHub08.md index 39fd2d9a..d6f280d0 100644 --- a/content/08/HelloGitHub08.md +++ b/content/08/HelloGitHub08.md @@ -236,7 +236,7 @@ finally: ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/09/HelloGitHub09.md b/content/09/HelloGitHub09.md index b1645ecf..da6a941b 100644 --- a/content/09/HelloGitHub09.md +++ b/content/09/HelloGitHub09.md @@ -166,7 +166,7 @@ ngrok http 8000 ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/10/HelloGitHub10.md b/content/10/HelloGitHub10.md index 865a63e0..8e38b0b5 100644 --- a/content/10/HelloGitHub10.md +++ b/content/10/HelloGitHub10.md @@ -185,7 +185,7 @@ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/11/HelloGitHub11.md b/content/11/HelloGitHub11.md index 2628886f..fbbd550b 100644 --- a/content/11/HelloGitHub11.md +++ b/content/11/HelloGitHub11.md @@ -160,7 +160,7 @@ print ifconfig("eth0") ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/12/HelloGitHub12.md b/content/12/HelloGitHub12.md index 3db2cfd0..d75b3c94 100644 --- a/content/12/HelloGitHub12.md +++ b/content/12/HelloGitHub12.md @@ -186,7 +186,7 @@ Hello Google! ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/13/HelloGitHub13.md b/content/13/HelloGitHub13.md index 15cadc10..9845da51 100644 --- a/content/13/HelloGitHub13.md +++ b/content/13/HelloGitHub13.md @@ -223,7 +223,7 @@ Request failed ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/14/HelloGitHub14.md b/content/14/HelloGitHub14.md index 898973f5..2658b6e7 100644 --- a/content/14/HelloGitHub14.md +++ b/content/14/HelloGitHub14.md @@ -163,7 +163,7 @@ gcc -g -O2 testSearcher.c ip2region.c ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/15/HelloGitHub15.md b/content/15/HelloGitHub15.md index 8b638412..133353cd 100644 --- a/content/15/HelloGitHub15.md +++ b/content/15/HelloGitHub15.md @@ -183,7 +183,7 @@ def test(): ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/16/HelloGitHub16.md b/content/16/HelloGitHub16.md index e5477510..dae7a8f9 100644 --- a/content/16/HelloGitHub16.md +++ b/content/16/HelloGitHub16.md @@ -100,7 +100,7 @@ namespace WeixinSDK.Test.Fake

🔙 返回目录 🔙


### C++ 项目 -4、[vnote](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/tamlok/vnote):Markdown 编辑软件。舒适的 Markdown 编辑体验,Vim 操作模式,编辑时代码块高亮 +4、[vnote](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/vnotex/vnote):Markdown 编辑软件。舒适的 Markdown 编辑体验,Vim 操作模式,编辑时代码块高亮

@@ -199,7 +199,7 @@ namespace WeixinSDK.Test.Fake ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/17/HelloGitHub17.md b/content/17/HelloGitHub17.md index 09097065..cedd4633 100644 --- a/content/17/HelloGitHub17.md +++ b/content/17/HelloGitHub17.md @@ -172,7 +172,7 @@ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/18/HelloGitHub18.md b/content/18/HelloGitHub18.md index 82bafc95..140e6209 100644 --- a/content/18/HelloGitHub18.md +++ b/content/18/HelloGitHub18.md @@ -299,7 +299,7 @@ fake.province() ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/19/HelloGitHub19.md b/content/19/HelloGitHub19.md index 0945bea1..a37c5ff2 100644 --- a/content/19/HelloGitHub19.md +++ b/content/19/HelloGitHub19.md @@ -200,7 +200,7 @@ itchat.send('Hello, filehelper', toUserName='filehelper') ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/20/HelloGitHub20.md b/content/20/HelloGitHub20.md index 6e11b0ec..16d6df5c 100644 --- a/content/20/HelloGitHub20.md +++ b/content/20/HelloGitHub20.md @@ -215,7 +215,7 @@ Parallel(n_jobs=1)(delayed(sqrt)(i**2) for i in range(10)) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/21/HelloGitHub21.md b/content/21/HelloGitHub21.md index 2987b0f0..e6edefee 100644 --- a/content/21/HelloGitHub21.md +++ b/content/21/HelloGitHub21.md @@ -213,7 +213,7 @@ print(", ".join(seg_list)) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/22/HelloGitHub22.md b/content/22/HelloGitHub22.md index aa7c7474..7db72640 100644 --- a/content/22/HelloGitHub22.md +++ b/content/22/HelloGitHub22.md @@ -175,7 +175,7 @@ for i in tqdm(range(10000)): ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/23/HelloGitHub23.md b/content/23/HelloGitHub23.md index 0bd776a8..5e4c1aa1 100644 --- a/content/23/HelloGitHub23.md +++ b/content/23/HelloGitHub23.md @@ -179,7 +179,7 @@ fetch('/url').then(res => {}).catch(err => {}) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/24/HelloGitHub24.md b/content/24/HelloGitHub24.md index 955aba01..5f3c2fa0 100644 --- a/content/24/HelloGitHub24.md +++ b/content/24/HelloGitHub24.md @@ -217,7 +217,7 @@ ws_api.get_gzh_info('微信名称') ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/25/HelloGitHub25.md b/content/25/HelloGitHub25.md index 404fa63e..797753c1 100644 --- a/content/25/HelloGitHub25.md +++ b/content/25/HelloGitHub25.md @@ -212,7 +212,7 @@ print('#2 status:', res.status_code) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/26/HelloGitHub26.md b/content/26/HelloGitHub26.md index 0502e952..a66c350f 100644 --- a/content/26/HelloGitHub26.md +++ b/content/26/HelloGitHub26.md @@ -296,7 +296,7 @@ public func print(file: String = #file, function: String = #function, line: I ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/27/HelloGitHub27.md b/content/27/HelloGitHub27.md index e8abb482..e03e93d7 100644 --- a/content/27/HelloGitHub27.md +++ b/content/27/HelloGitHub27.md @@ -216,7 +216,7 @@ def get_data(url): ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/28/HelloGitHub28.md b/content/28/HelloGitHub28.md index 10dc7619..0d347546 100644 --- a/content/28/HelloGitHub28.md +++ b/content/28/HelloGitHub28.md @@ -223,7 +223,7 @@ graph.read(data); ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/29/HelloGitHub29.md b/content/29/HelloGitHub29.md index 53ade24a..4d676060 100644 --- a/content/29/HelloGitHub29.md +++ b/content/29/HelloGitHub29.md @@ -252,7 +252,7 @@ ReactDOM.render( ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/30/HelloGitHub30.md b/content/30/HelloGitHub30.md index 580f55f7..87cda2f0 100644 --- a/content/30/HelloGitHub30.md +++ b/content/30/HelloGitHub30.md @@ -186,7 +186,7 @@ print(s) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/31/HelloGitHub31.md b/content/31/HelloGitHub31.md index ccb429a7..949bf25c 100644 --- a/content/31/HelloGitHub31.md +++ b/content/31/HelloGitHub31.md @@ -230,7 +230,7 @@ cup 22、[quick-SQL-cheatsheet](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/enochtangg/quick-SQL-cheatsheet):SQL 速查表,[中文查阅](https://github.com/enochtangg/quick-SQL-cheatsheet/blob/master/README_zh-hans.md) -23、[awesome-algorithm](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apachecn/awesome-algorithm):Leetcode 题解及经典算法实现,实现语言包含 Python、Java、C++、JS +23、[algo-zh](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apachecn/algo-zh):Leetcode 题解及经典算法实现,实现语言包含 Python、Java、C++、JS

🔙 返回目录 🔙


@@ -250,7 +250,7 @@ cup ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/32/HelloGitHub32.md b/content/32/HelloGitHub32.md index 1624526b..03d2fa12 100644 --- a/content/32/HelloGitHub32.md +++ b/content/32/HelloGitHub32.md @@ -312,7 +312,7 @@ python run.py ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/33/HelloGitHub33.md b/content/33/HelloGitHub33.md index e2586437..22725cfe 100644 --- a/content/33/HelloGitHub33.md +++ b/content/33/HelloGitHub33.md @@ -111,7 +111,7 @@

-12、[js2image](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/xinyu198736/js2image):将源代码压缩成圣诞树的样子,使用此项目压缩生产环境代码后请注意测试。有兴趣的小伙伴可以尝试扩展出压缩成其它样子,很有意思 +12、[js2image](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/yu-tou/js2image):将源代码压缩成圣诞树的样子,使用此项目压缩生产环境代码后请注意测试。有兴趣的小伙伴可以尝试扩展出压缩成其它样子,很有意思

@@ -240,7 +240,7 @@ _attrLabel = [NudeIn make:^(NUDTextMaker *make) { ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/34/HelloGitHub34.md b/content/34/HelloGitHub34.md index 118d7e2e..8d30231e 100644 --- a/content/34/HelloGitHub34.md +++ b/content/34/HelloGitHub34.md @@ -355,7 +355,7 @@ segments_tensors = torch.tensor([segments_ids]) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/35/HelloGitHub35.md b/content/35/HelloGitHub35.md index 3d06845a..0c549571 100644 --- a/content/35/HelloGitHub35.md +++ b/content/35/HelloGitHub35.md @@ -281,7 +281,7 @@ doc.sentences[0].print_dependencies() ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/36/HelloGitHub36.md b/content/36/HelloGitHub36.md index b0c296e8..09901cdc 100644 --- a/content/36/HelloGitHub36.md +++ b/content/36/HelloGitHub36.md @@ -322,7 +322,7 @@ render() ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/37/HelloGitHub37.md b/content/37/HelloGitHub37.md index bb64152a..94930509 100644 --- a/content/37/HelloGitHub37.md +++ b/content/37/HelloGitHub37.md @@ -249,7 +249,7 @@ pyxel.run(update, draw) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/38/HelloGitHub38.md b/content/38/HelloGitHub38.md index 136e3a70..f2f7bcb6 100644 --- a/content/38/HelloGitHub38.md +++ b/content/38/HelloGitHub38.md @@ -296,7 +296,7 @@ class IrisClassifier(BentoService): ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/39/HelloGitHub39.md b/content/39/HelloGitHub39.md index 0d8dbf6d..8ce681ee 100644 --- a/content/39/HelloGitHub39.md +++ b/content/39/HelloGitHub39.md @@ -317,7 +317,7 @@ dropout(input_) # RETURNS: torch.FloatTensor (6x3x10) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/40/HelloGitHub40.md b/content/40/HelloGitHub40.md index 855d608b..dd498442 100644 --- a/content/40/HelloGitHub40.md +++ b/content/40/HelloGitHub40.md @@ -340,7 +340,7 @@ forward(input_ids, token_type_ids=None, attention_mask=None, masked_lm_labels=No ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/41/HelloGitHub41.md b/content/41/HelloGitHub41.md index e1f3862b..c8e6e483 100644 --- a/content/41/HelloGitHub41.md +++ b/content/41/HelloGitHub41.md @@ -294,7 +294,7 @@ RestClient.post( url, ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/42/HelloGitHub42.md b/content/42/HelloGitHub42.md index 9affa599..1d4c5c68 100644 --- a/content/42/HelloGitHub42.md +++ b/content/42/HelloGitHub42.md @@ -290,7 +290,7 @@ array([[4.43336608e-03, 9.95215198e-01, 3.51419231e-04, 1.68657851e-08]]) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/43/HelloGitHub43.md b/content/43/HelloGitHub43.md index 93eb2ad0..9b535317 100644 --- a/content/43/HelloGitHub43.md +++ b/content/43/HelloGitHub43.md @@ -334,7 +334,7 @@ import Percent ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/44/HelloGitHub44.md b/content/44/HelloGitHub44.md index ac72107b..89fecf4c 100644 --- a/content/44/HelloGitHub44.md +++ b/content/44/HelloGitHub44.md @@ -252,7 +252,7 @@ do { ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/45/HelloGitHub45.md b/content/45/HelloGitHub45.md index 6d76f6f7..e740c525 100644 --- a/content/45/HelloGitHub45.md +++ b/content/45/HelloGitHub45.md @@ -443,7 +443,7 @@ face_landmarks_list = face_recognition.face_landmarks(image) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/46/HelloGitHub46.md b/content/46/HelloGitHub46.md index e95ad744..43e4df45 100644 --- a/content/46/HelloGitHub46.md +++ b/content/46/HelloGitHub46.md @@ -330,7 +330,7 @@ print(text) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/47/HelloGitHub47.md b/content/47/HelloGitHub47.md index e445d5bd..af708bbf 100644 --- a/content/47/HelloGitHub47.md +++ b/content/47/HelloGitHub47.md @@ -246,7 +246,7 @@ print(bond_df) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/48/HelloGitHub48.md b/content/48/HelloGitHub48.md index e6d5b228..96067bab 100644 --- a/content/48/HelloGitHub48.md +++ b/content/48/HelloGitHub48.md @@ -119,7 +119,7 @@ local/remote: 127.0.0.1:56765 <-> 127.0.0.1:50955 (ESTABLISHED) local/remote: 100.76.175.164:52353 <-> 54.241.191.232:443 (ESTABLISHED) ``` -8、[awesome-golang-leetcode](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kylesliu/awesome-golang-leetcode):Go 语言刷 LeetCode。[在线阅读](https://leetcode.gin.sh/) +8、[awesome-golang-algorithm](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kylesliu/awesome-golang-algorithm):Go 语言刷 LeetCode。[在线阅读](https://leetcode.gin.sh/) 9、[wtf](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wtfutil/wtf):瞥一眼你的“私人管家”,终端个人信息面板。安装简单,还可通过配置文件设置你想看到的信息。设置可能需要花一些时间,但最终效果还是很可以的 @@ -249,7 +249,7 @@ results = clf.predict(x_test) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/49/HelloGitHub49.md b/content/49/HelloGitHub49.md index 10534abe..b96d8e4e 100644 --- a/content/49/HelloGitHub49.md +++ b/content/49/HelloGitHub49.md @@ -225,7 +225,7 @@ let _ = "19 Nov 2015 22:20:40 +0100".toRSS(alt: true) ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/50/HelloGitHub50.md b/content/50/HelloGitHub50.md index 2af92cc1..b4c934fa 100644 --- a/content/50/HelloGitHub50.md +++ b/content/50/HelloGitHub50.md @@ -311,7 +311,7 @@ best_points, best_distance = ga_tsp.run() ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/51/HelloGitHub51.md b/content/51/HelloGitHub51.md index 7ebfdc2f..54a3c2d2 100644 --- a/content/51/HelloGitHub51.md +++ b/content/51/HelloGitHub51.md @@ -259,7 +259,7 @@ python py2sec.py -d example/ -m test1.py,bbb/ ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/52/HelloGitHub52.md b/content/52/HelloGitHub52.md index 52c3ad83..ded76166 100644 --- a/content/52/HelloGitHub52.md +++ b/content/52/HelloGitHub52.md @@ -118,7 +118,7 @@ int main()

-12、[incubator-iotdb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apache/incubator-iotdb):清华大学软件学院自主研发并开源的时间序列数据管理引擎。能够有效应对工业物联网领域时间序列数量多、写入频率高、数据乱序到达、秒级聚合等场景。官方网站有系统设计文档和使用手册,作为初学者,可以系统的学习数据库系统的完整设计和实现。在 IoTDB 社区可以与国内用户直接交流、收集需求、设计功能、性能优化,每个改进点都可以看到直接效果。还可以体验 Apache 开源软件的工作模式,与世界各地的开发者交流想法,也有机会成为 Apache Committer、PMC 等 +12、[iotdb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apache/iotdb):清华大学软件学院自主研发并开源的时间序列数据管理引擎。能够有效应对工业物联网领域时间序列数量多、写入频率高、数据乱序到达、秒级聚合等场景。官方网站有系统设计文档和使用手册,作为初学者,可以系统的学习数据库系统的完整设计和实现。在 IoTDB 社区可以与国内用户直接交流、收集需求、设计功能、性能优化,每个改进点都可以看到直接效果。还可以体验 Apache 开源软件的工作模式,与世界各地的开发者交流想法,也有机会成为 Apache Committer、PMC 等

@@ -261,7 +261,7 @@ DATABASE_PASSWORD = os.getenv("DATABASE_PASSWORD") ---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/53/HelloGitHub53.md b/content/53/HelloGitHub53.md index 98038a7c..ae6abdd7 100644 --- a/content/53/HelloGitHub53.md +++ b/content/53/HelloGitHub53.md @@ -251,13 +251,13 @@ points & bars

- 『上一期』 | 反馈和建议 | 『下一期』 + 『上一期』 | 反馈和建议 | 『下一期』

---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/54/HelloGitHub54.md b/content/54/HelloGitHub54.md index cbea3331..2c55c382 100644 --- a/content/54/HelloGitHub54.md +++ b/content/54/HelloGitHub54.md @@ -55,7 +55,7 @@ 2、[dotnet-docker](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dotnet/dotnet-docker):.NET Core 和 Tools 的 Docker 镜像 3、[machinelearning](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dotnet/machinelearning):微软开源的 C# 机器学习框架。支持的机器学习类任务:分类、回归、聚类等,[教程和视频](https://dotnet.microsoft.com/learn/ml-dotnet)。示例代码: -```C# +```C var dataPath = "sentiment.csv"; var mlContext = new MLContext(); var loader = mlContext.Data.CreateTextLoader(new[] @@ -108,7 +108,7 @@ int main()

🔙 返回目录 🔙


### Go 项目 -6、[go-micro](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/micro/go-micro):一款 Go 插件化的基础框架。我只知道它是个 Go 微服务框架,基于它可以快速构建微服务。示例代码如图所示 +6、[go-micro](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/asim/go-micro):一款 Go 插件化的基础框架。我只知道它是个 Go 微服务框架,基于它可以快速构建微服务。示例代码如图所示:

@@ -123,7 +123,7 @@ Socket:pgweb --url "postgres:///database?host=/absolute/path/to/unix/socket/di

-8、[go-admin](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wenjianzhang/go-admin):基于 Gin+Vue+Element UI 的前后端分离权限管理系统。文档齐全、还有视频教程适合新手学习,特点: +8、[go-admin](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/go-admin-team/go-admin):基于 Gin+Vue+Element UI 的前后端分离权限管理系统。文档齐全、还有视频教程适合新手学习,特点: - 遵循 RESTful API 设计规范 - 基于 Gin Web API 框架,提供了丰富的中间件支持(用户认证、跨域、访问日志、追踪 ID 等) - 支持 Swagger 文档 @@ -268,7 +268,7 @@ for i in range(1000000): 20、[learn-python3](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/jerry-git/learn-python3):一份 Python3 的教程,请查收。该教程采用 Jupyter notebooks 形式,便于运行和阅读。并且还包含了练习题,对新手友好。缺点的话就是英文的教程,但是我都能看懂你肯定也可以 -21、[Computer-Networking-A-Top-Down-Approach-NOTES](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/moranzcw/Computer-Networking-A-Top-Down-Approach-NOTES):《计算机网络-自顶向下方法》编程作业。包含问题和 Python 代码解答,Wireshark 实验部分为官方文档的翻译。 +21、[Computer-Networking-A-Top-Down-Approach-NOTES](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/moranzcw/Computer-Networking-A-Top-Down-Approach-NOTES):《计算机网络-自顶向下方法》编程作业。包含问题和 Python 代码解答,Wireshark 实验部分为官方文档的翻译

🔙 返回目录 🔙


@@ -376,13 +376,13 @@ ac.showPhotoLibrary(sender: self)

- 『上一期』 | 反馈和建议 | 『下一期』 + 『上一期』 | 反馈和建议 | 『下一期』

---

👉 点击赞助点击推荐项目 👈
- 关注公众号:HelloGitHub
+ 微信中搜:HelloGitHub 关注公众号
"第一时间收到推送及更多内容"

diff --git a/content/55/HelloGitHub55.md b/content/55/HelloGitHub55.md new file mode 100644 index 00000000..c4805df7 --- /dev/null +++ b/content/55/HelloGitHub55.md @@ -0,0 +1,334 @@ +# 《HelloGitHub》第 55 期 +>兴趣是最好的老师,**HelloGitHub** 就是帮你找到兴趣! +

+ +

+ +## 简介 +分享 GitHub 上有趣、入门级的开源项目。 + +这是一个面向**编程新手**、**热爱编程**、**对开源社区感兴趣** 人群的月刊,月刊的内容包括:**各种编程语言的项目**、**让生活变得更美好的工具**、**书籍、学习笔记、教程等**,这些开源项目大多都是非常容易上手,而且非常 Cool。主要是希望大家能动手用起来,加入到**开源社区**中。 +- 会编程的可以贡献代码 +- 不会编程的可以反馈使用这些工具中的 Bug +- 帮着宣传你觉得优秀的项目 +- Star 项目⭐️ + +在浏览、参与这些项目的过程中,你将学习到**更多编程知识**、**提高编程技巧**、**找到编程的乐趣**。 + +🎉 最后 HelloGitHub 这个项目就诞生了 🎉 + +## 目录 +- [C 项目](#C-项目) +- [C# 项目](#C-项目-1) +- [C++ 项目](#C-项目-2) +- [CSS 项目](#CSS-项目) +- [Go 项目](#Go-项目) +- [Java 项目](#Java-项目) +- [JavaScript 项目](#JavaScript-项目) +- [Python 项目](#Python-项目) +- [Swift 项目](#Swift-项目) +- [其它](#其它) +- [开源书籍](#开源书籍) +- [机器学习](#机器学习) + + +- [返回首页](https://github.com/521xueweihan/HelloGitHub#%E5%86%85%E5%AE%B9) + +**Tips**:如果文中的图刷不出来,可以向我们[反馈](https://github.com/521xueweihan/HelloGitHub/issues/899)。也可以访问 [官网](https://hellogithub.com/) 获取更好的阅读体验。 + +

+
+欢迎关注 HelloGitHub 公众号 +

+ +## 内容 +> **以下为本期内容**|每个月 **28** 号发布最新一期 + +### C 项目 +1、[htop](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/htop-dev/htop):交互式进程查看工具,可代替 top 命令。用了这库后,我基本不用 top 命令了 + +

+ +

🔙 返回目录 🔙


+ +### C# 项目 +2、[ToolGood.Words](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/toolgood/ToolGood.Words):一款高性能非法词、敏感词检测库。还支持繁体简体互换、获取拼音首字母、获取拼音字母、拼音模糊搜索等功能 +```C# +string s = "中国|国人|zg人"; +string test = "我是中国人"; + +StringSearch iwords = new StringSearch(); +iwords.SetKeywords(s.Split('|')); + +var b = iwords.ContainsAny(test); +Assert.AreEqual(true, b); + +var f = iwords.FindFirst(test); +Assert.AreEqual("中国", f); + +var all = iwords.FindAll(test); +Assert.AreEqual("中国", all[0]); +Assert.AreEqual("国人", all[1]); +Assert.AreEqual(2, all.Count); + +var str = iwords.Replace(test, '*'); +Assert.AreEqual("我是***", str); +``` + +

🔙 返回目录 🔙


+ +### C++ 项目 +3、[workflow](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/sogou/workflow):搜狗开源的 C++ 服务器引擎。支撑搜狗几乎所有后端 C++ 在线服务,包括所有搜索服务、云输入法、广告等,每日处理超百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数 C++ 后端开发需求 + +

🔙 返回目录 🔙


+ +### CSS 项目 +4、[flexboxfroggy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/thomaspark/flexboxfroggy):一个帮助学习 CSS flexbox 知识的在线游戏。游戏一共 24 关,通俗易懂的解释了 flex 布局。适合初学者,并且支持中文,可以在 settings 中选择语言。[在线试玩](https://flexboxfroggy.com/) + +

+ +

🔙 返回目录 🔙


+ +### Go 项目 +5、[go-diagrams](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/blushft/go-diagrams):用 Go 语言画架构图的工具。想画架构图不知道用什么工具?会 Go 的小伙伴可以试试这个库,通过编写 Go 代码来绘制架构图,接口使用方便,但文档太简单了。示例代码: +```go +d, err := diagram.New(diagram.Filename("app"), diagram.Label("App"), diagram.Direction("LR")) +if err != nil { + log.Fatal(err) +} + +dns := gcp.Network.Dns(diagram.NodeLabel("DNS")) +lb := gcp.Network.LoadBalancing(diagram.NodeLabel("NLB")) +cache := gcp.Database.Memorystore(diagram.NodeLabel("Cache")) +db := gcp.Database.Sql(diagram.NodeLabel("Database")) + +dc := diagram.NewGroup("GCP") +dc.NewGroup("services"). + Label("Service Layer"). + Add( + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 1")), + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 2")), + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 3")), + ). + ConnectAllFrom(lb.ID(), diagram.Forward()). + ConnectAllTo(cache.ID(), diagram.Forward()) + +dc.NewGroup("data").Label("Data Layer").Add(cache, db).Connect(cache, db) + +d.Connect(dns, lb, diagram.Forward()).Group(dc) + +if err := d.Render(); err != nil { + log.Fatal(err) +} +``` + +

+ +6、[gorched](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zladovan/gorched):Go 语言写的终端游戏 Scorched Earth。它让我想起了“百战天虫”这款游戏,有同龄人吗?一起来回味下 + +

+ +7、[ali](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nakabonne/ali):能够实时展示分析的压力测试工具。现在压测工具有很多,这款的亮点在于可以在终端实时展示压测过程的曲线。一条命令搞定启动:`ali 地址` + +

+ +8、[ferry](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/lanyulei/ferry):基于 Gin + Vue + Element UI 前后端分离的工单系统。该系统是集工单统计、任务钩子、权限管理、灵活配置流程与模版等等功能, 帮助减少跨部门之间的沟通,提升工作效率与工作质量,减少不必要的工作量与人为出错率 + +

+ +

🔙 返回目录 🔙


+ +### Java 项目 +9、[retrofit-spring-boot-starter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LianjiaTech/retrofit-spring-boot-starter):一个适用于 Spring Boot 项目的轻量级 HTTP Web 框架。使用简单方便,支持接口化的方式发送 HTTP 请求。底层使用 Retrofit 实现,并支持了诸多功能特性增强,极大简化开发 +```java +/** +* 定义接口 +**/ +@RetrofitClient(baseUrl = "${test.baseUrl}") +public interface HttpApi { + + @GET("person") + Result getPerson(@Query("id") Long id); +} + +/** +* 注入使用 +**/ +@Service +public class TestService { + @Autowired + private HttpApi httpApi; + + public void test() { + // 通过httpApi发起http请求 + } +} +``` + +10、[jmeter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apache/jmeter):Apache 开源的压力测试工具。提供 GUI 操作界面就是可以点点点操作,也可以写脚本提高测试的自动化,它还不局限于 Web 测试,支持更多压力测试场景。我身边 97% 从事测试相关工作的人都用过它,要不要来看看它的源码?纯 Java 实现 + +

+ +11、[mybatis-plus](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/baomidou/mybatis-plus):一款好用的 Java 操作数据库框架。MyBatis 增强工具包,提供了一些高效、实用、快捷的功能,使用它可以有效地节省您的开发时间。比如切换数据源,只需修改配置文件 +```java +List userList = userMapper.selectList( + new QueryWrapper() + .lambda() + .ge(User::getAge, 18) +); +``` + +

+ +12、[BilibiliTask](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/srcrs/BilibiliTask):哔哩哔哩定时自动完成任务项目。该项目借助 GitHub Action 自动完成:每日任务、投币、直播签到等,还可以把运行结果推送到微信,是一个解决重复劳动的有趣项目。按照项目首页的教程,花点时间就能配置好,一劳永逸 + +

+ +

🔙 返回目录 🔙


+ +### JavaScript 项目 +13、[zooming](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kingdido999/zooming):纯 JS 实现支持移动端的图像缩放库 + +

+ +14、[AnotherRedisDesktopManager](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qishibo/AnotherRedisDesktopManager):一款支持多语言、多平台的 redis 桌面管理工具。对比目前其它同类型工具,它拥有更丰富的功能、更高的稳定性和性能,支持集群等功能 + +

+ +15、[beeplay](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/watilde/beeplay):让你可以用 JS 写一首“歌”的库。[在线尝试](http://watilde.github.io/beeplay/),实例代码: +```javascript +var beeplay = require('beeplay') + +beeplay() + .play(null, 2) + .play('D#5', 1/4).play('E5', 1/4).play('F#5', 1/2) + .play('B5', 1/2).play('D#5', 1/4).play('E5', 1/4) + .play('F#5', 1/4).play('B5', 1/4).play('C#6', 1/4).play('D#6', 1/4) + .play('C#6', 1/4).play('A#5', 1/4).play('B5', 1/2) + .play('F#5', 1/2).play('D#5', 1/4).play('E5', 1/4) + .play('F#5', 1/2).play('B5', 1/2) + .play('C#6', 1/4).play('A#5', 1/4).play('B5', 1/4).play('C#6', 1/4) + .play('E6', 1/4).play('D#6', 1/4).play('E6', 1/4).play('C#6', 1/4); +``` + +16、[vant](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/youzan/vant):由有赞前端团队开源的移动端组件库。目前官方提供了 Vue 版本和微信小程序版本,并由社区团队维护 React 版本。有完善的中英文文档和示例,60+ 高质量组件,90%+ 单元测试覆盖率,持续维护 4 年以上 + +

+ +17、[Bilibili-Evolved](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/the1812/Bilibili-Evolved):哔哩哔哩增强浏览器插件。安装插件后可支持:下载视频、删除广告、夜间模式等 + +

+ +

🔙 返回目录 🔙


+ +### Python 项目 +18、[asciinema](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/asciinema/asciinema):终端记录工具。忘记录屏软件吧,纯文本的录制终端操作的工具。安装简单、使用方便,且生成的记录文件极小,但需要配合 JS 文件播放 + +

+ +19、[playwright-python](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/microsoft/playwright-python):微软开源的浏览器自动化工具,可以用 Python 语言操作浏览器啦。支持 Linux、macOS、Windows 系统下的 Chromium、Firefox 和 WebKit 浏览器 + +

+ +20、[wagtail](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wagtail/wagtail):目前最强大的开源 Django CMS(内容管理系统)之一。我很少用“最”这个字眼,节省时间就聊聊它惊艳到我的点吧。首先该项目更新、迭代活跃,其次项目首页提到的功能都是免费的,没有付费解锁的骚操作。wagtail 专注于内容管理,不束缚前端实现。有趣的 StreamField 技术让你的内容变得灵活且不失结构,竟然还支持 A/B 测试,最后 Google、NASA 他们都在用这个项目 + +

+ +21、[redis-memory-analyzer](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/gamenet/redis-memory-analyzer):Redis 实时内存分析工具。我比较好奇它是怎么实时获取 redis 中 key 的情况和信息,就看了下源码 `scanner.py` 文件。发现是采用 `scan_iter` 方法,控制扫描 key 返回的量。然后通过 `yield` 减少内存占用量,最后再加上 `register_script` 方法调用 Lua 脚本或` pipeline` 方法提高获取 key 信息的效率。分析后感觉这个工具可适用在数据量较大的情况,实时性要求在秒或者分钟级的场景下 + +

+ +22、[practical-python](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dabeaz-course/practical-python):大佬 David Beazley 开源的 Python 免费入门级教程。他是《Python Cookbook 第三版》、《Python 参考手册》的作者,教程经过实际的教学实践、包含课后练习题。[在线学习](https://dabeaz-course.github.io/practical-python/Notes/Contents.html),教程目录如下: + +

+ +

🔙 返回目录 🔙


+ +### Swift 项目 +23、[stats](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/exelban/stats):macOS 菜单栏上的监控工具。支持 CPU、GPU、内存、网络等监控和多语言 + +

+ +

🔙 返回目录 🔙


+ +### 其它 +24、[ZY-Player](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Hunlongyu/ZY-Player):免费无广告、高颜值+多平台的桌面视频资源播放器。功能如下: +- 全平台支持 Windows、Mac、Linux +- 视频源支持自定义, 支持导入/导出 +- 播放历史, 自动跳转历史进度 +- 支持精简模式, 摸鱼划水 +- 显示豆瓣评分 + +

+ +25、[keysim](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/crsnbrt/keysim):键盘配色预览工具。“定制”这个操作一听就很贵,下单之前先这个工具先看看效果吧,避免浪费钱。[在线尝试](https://keyboardsimulator.xyz/) + +

+ +26、[tabler-icons](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/tabler/tabler-icons):一组免费开源的图标。目前共有 850+ 个图标,我觉得都挺好看的,您觉得呢? + +

+ +27、[socialify](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wei/socialify):一键自动生成 GitHub 仓库头图。很多 GitHub 开源项目的作者不会用 PS,想要制作一张项目推广图就很困难,Socialify 就是帮你解决这个头疼的问题。[在线尝试](https://socialify.git.ci/) + +

+ +

🔙 返回目录 🔙


+ +### 开源书籍 +28、[Mastering_Go_ZH_CN](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/hantmac/Mastering_Go_ZH_CN):《Mastering Go》的中文翻译版《玩转 Go》。[在线阅读](https://wskdsgcf.gitbook.io/mastering-go-zh-cn/) + +29、[A-Philosophy-of-Software-Design-zh](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/gdut-yy/A-Philosophy-of-Software-Design-zh):《软件设计的哲学》中文翻译。[在线阅读](https://gdut_yy.gitee.io/doc-aposd/) + +

🔙 返回目录 🔙


+ +### 机器学习 +30、[video-object-removal](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zllrunning/video-object-removal):通过 Pytorch 实现绘制一个边界框,即可删除视频中要删除的对象。下图是演示操作,框中红色是抹掉的部分,删除前后的效果对比图可进到项目首页查看 + +

+ +31、[mlflow](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/mlflow/mlflow):一个简化机器学习开发的平台,支持跟踪实验、代码打包、部署模型等。它提供了一套轻量级的 API,可与目前主流机器学习 TensorFlow、PyTorch、XGBoost 等库轻松整合 +```python +# 安装:$ pip install mlflow +# 启动:$ mlflow ui +# 示例代码 +import mlflow +mlflow.keras.autolog() +# other keras code +... +``` + +

+ +32、[snownlp](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/isnowfy/snownlp):一个 Python 写的自然语言处理库。使用简单、功能强大,支持中文分词、词性标注、情感分析等 +```python +from snownlp import SnowNLP + +s = SnowNLP(u'这个东西真心很赞') +s.words # [u'这个', u'东西', u'真心', + # u'很', u'赞'] +s.tags # [(u'这个', u'r'), (u'东西', u'n'), + # (u'真心', u'd'), (u'很', u'd'), + # (u'赞', u'Vg')] +s.sentiments # 0.9769663402895832 positive的概率 +``` + +

🔙 返回目录 🔙


+ + + +

+ 『上一期』 | 反馈和建议 | 『下一期』 +

+ +--- +

+ 👉 点击赞助点击推荐项目 👈
+ 微信中搜:HelloGitHub 关注公众号
+ "第一时间收到推送及更多内容"
+ +

+ + +## 声明 +知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。 diff --git a/content/contributors.md b/content/contributors.md index ca1e1974..7377e351 100644 --- a/content/contributors.md +++ b/content/contributors.md @@ -37,8 +37,8 @@ ## 贡献者列表 -快来加入我们吧,希望尽快写满一整页!**目前共计 300 位贡献者** +快来加入我们吧,希望尽快写满一整页!**目前共计 307 位贡献者** -[ming995](https://github.com/ming995)、[FrontMage](https://github.com/FrontMage)、[xibinyue](https://github.com/xibinyue)、[Eurus-Holmes](https://github.com/Eurus-Holmes)、[daixiang0](https://github.com/daixiang0)、[nivance](https://github.com/nivance)、[QA_imp](https://www.cnblogs.com/bu1tcat/)、[CoderKo1o](https://github.com/iphone5solo)、[xyyVee](https://github.com/xyyVee)、[zhbzz2007](https://github.com/zhbzz2007)、[ethan-funny](https://github.com/ethan-funny)、[PeoLeser](https://github.com/PeoLeser)、[jp1017](https://github.com/jp1017)、[arronf2e](https://github.com/arronf2e)、[iphone5solo](https://github.com/iphone5solo)、[jkpang](https://github.com/jkpang)、[BruceDone](https://github.com/BruceDone)、[answershuto](https://github.com/answershuto)、[kelekexiao123](https://github.com/kelekexiao123)、[wsdjeg](https://github.com/wsdjeg)、[NoneGG](https://github.com/NoneGG)、[zdhxiong](https://github.com/zdhxiong)、[zhuyingda](https://github.com/zhuyingda)、[xnum](https://github.com/xnum)、[JessYanCoding](https://github.com/JessYanCoding)、[zmrenwu](https://github.com/zmrenwu)、[eatage](https://github.com/eatage)、[tamlok](https://github.com/tamlok)、[pipiliang](https://github.com/pipiliang)、[DIYgod](https://github.com/DIYgod)、[Wlitsoft](https://github.com/Wlitsoft)、[gyh1621](https://github.com/gyh1621)、[crossoverJie](https://github.com/crossoverJie)、[Denon](https://github.com/Denon)、[chinesedfan](https://github.com/chinesedfan)、[joeyguo](https://github.com/joeyguo)、[LRH1993](https://github.com/LRH1993)、[hsluoyz](https://github.com/hsluoyz)、[jhao104](https://github.com/jhao104)、[ResolveWang](https://github.com/ResolveWang)、[asheigithub](https://github.com/asheigithub)、[maning0303](https://github.com/maning0303)、[torchcode](https://github.com/torchcode)、[yan-xz](https://github.com/yan-xz)、[TerryZ](https://github.com/TerryZ)、[trazyn](https://github.com/trazyn)、[hujiulong](https://github.com/hujiulong)、[xcyf008](https://github.com/xcyf008)、[eastseven](https://github.com/eastseven)、[BillWang139967](https://github.com/BillWang139967)、[gee1k(2)](https://github.com/gee1k)、[answershuto](https://github.com/answershuto)、[linguowei](https://github.com/linguowei)、[Rictusempra](https://github.com/Rictusempra)、[Juliiii](https://github.com/Juliiii)、[Kerr1Gan](https://github.com/Kerr1Gan)、[haifenghuang(2)](https://github.com/haifenghuang)、[lilijialiang](https://github.com/lilijialiang)、[Prodesire](https://github.com/Prodesire)、[viclm](https://github.com/viclm)、[wynter-wang](https://github.com/wynter-wang)、[dianbaer](https://github.com/dianbaer)、[biezhi](https://github.com/biezhi)、[itgoyo(5)](https://github.com/itgoyo)、[yhaolpz](https://github.com/yhaolpz)、[smarthadron](https://github.com/smarthadron)、[mapletower](https://github.com/mapletower)、[nicholaslee119](https://github.com/nicholaslee119)、[RitterHou](https://github.com/RitterHou)、[PuShaoWei](https://github.com/PuShaoWei)、[luckybilly(3)](https://github.com/luckybilly)、[doyoyob](https://github.com/doyoyob)、[Qiu800820](https://github.com/Qiu800820)、[zeed-w-beez](https://github.com/zeed-w-beez)、[aOrz](https://github.com/aOrz)、[lt94](https://github.com/lt94)、[Chyroc](https://github.com/Chyroc)、[Lision](https://github.com/Lision)、[fhxsnabi](https://github.com/fhxsnabi)、[CuberL](https://github.com/CuberL)、[tangweikun](https://github.com/tangweikun)、[FrontMage](https://github.com/FrontMage)、[iamjohnnyzhuang](https://github.com/iamjohnnyzhuang)、[aosen](https://github.com/aosen)、[clayclayclay](https://github.com/clayclayclay)、[zazzaz](https://github.com/zazzaz)、[BolexLiu](https://github.com/BolexLiu)、[DotzuX](https://github.com/DotzuX)、[junxiaosong](https://github.com/junxiaosong)、[M-Adoo](https://github.com/M-Adoo)、[zhihaozhang](https://github.com/zhihaozhang)、[starlying](https://github.com/starlying)、[Alinshans](https://github.com/Alinshans)、[HJ-Money](https://github.com/HJ-Money)、[topcss](https://github.com/topcss)、[twhuang-uiuc](https://github.com/twhuang-uiuc)、[maychair](https://github.com/maychair)、[mumuy](https://github.com/mumuy)、[sufuf3](https://github.com/sufuf3)、[succlz123](https://github.com/succlz123)、[sunloj](https://github.com/sunloj)、[HuanHaiLiuXin](https://github.com/HuanHaiLiuXin)、[lijinke666](https://github.com/lijinke666)、[chrislinan](https://github.com/chrislinan)、[ThinkpadNC5](https://github.com/ThinkpadNC5)、[appleboy](https://github.com/appleboy)、[objcoding](https://github.com/objcoding)、[songtianyi](https://github.com/songtianyi)、[simplepeng](https://github.com/simplepeng)、[xia-tong](https://github.com/xia-tong)、[wonderfulsuccess](https://github.com/wonderfulsuccess)、[Qsnh](https://github.com/Qsnh)、[Larry850806](https://github.com/Larry850806)、[NamelessAshone(3)](https://github.com/NamelessAshone)、[pench3r](https://github.com/pench3r)、[hon-key](https://github.com/hon-key)、[huangyz0918](https://github.com/huangyz0918)、[pujiaxin33](https://github.com/pujiaxin33)、[cnwangjie](https://github.com/cnwangjie)、[dada0z](https://github.com/dada0z)、[adrianzhang](https://github.com/adrianzhang)、[Sugar250](https://github.com/Sugar250)、[itisyang(2)](https://github.com/itisyang)、[imageslr](https://github.com/imageslr)、[kaixinbaba(5)](https://github.com/kaixinbaba)、[looly](https://github.com/looly)、[wojs5](https://github.com/wojs5)、[xianhu](https://github.com/xianhu)、[hhxsv5](https://github.com/hhxsv5)、[LanjianNUll](https://github.com/LanjianNUll)、[bestvist](https://github.com/bestvist)、[dntzhang](https://github.com/dntzhang)、[KunMinX(2)](https://github.com/KunMinX)、[afkT](https://github.com/afkT)、[syt123450](https://github.com/syt123450)、[Seaear](https://github.com/Seaear)、[huangjianke](https://github.com/huangjianke)、[howie6879](https://github.com/howie6879)、[teeyog](https://github.com/teeyog)、[zyupo](https://github.com/zyupo)、[my8100](https://github.com/my8100)、[daniel-dx](https://github.com/daniel-dx)、[googege](https://github.com/googege)、[LucienShui](https://github.com/LucienShui)、[mds1455975151](https://github.com/mds1455975151)、[zzugbb](https://github.com/zzugbb)、[qianguyihao](https://github.com/qianguyihao)、[dantangfan](https://github.com/dantangfan)、[wenzhixin](https://github.com/wenzhixin)、[tangdou1(3)](https://github.com/tangdou1)、[inhere](https://github.com/inhere)、[kulics](https://github.com/kulics)、[nosarthur](https://github.com/nosarthur)、[byronz](https://github.com/byronz)、[jdneo](https://github.com/jdneo)、[zhaoolee(2)](https://github.com/zhaoolee) -、[hzwer](https://github.com/hzwer)、[xunki](https://github.com/xunki)、[azl397985856(2)](https://github.com/azl397985856)、[96486d9b](https://github.com/96486d9b)、[5A59(2)](https://github.com/5A59)、[prprprus](https://github.com/prprprus)、[EddieIvan01](https://github.com/EddieIvan01)、[ddzy(2)](https://github.com/ddzy)、[mylxsw(2)](https://github.com/mylxsw)、[liyuexing](https://github.com/liyuexing)、[auxten](https://github.com/auxten)、[xmyl](https://github.com/xmyl)、[mintsweet](https://github.com/mintsweet)、[colinlet](https://github.com/colinlet)、[yubozhao](https://github.com/yubozhao)、[vicanso](https://github.com/vicanso)、[AICareless](https://github.com/AICareless)、[LYXmoonstars](https://github.com/LYXmoonstars)、[RobiNexy(3)](https://github.com/RobiNexy)、[buppter(2)](https://github.com/buppter)、[Macr0phag3](https://github.com/Macr0phag3)、[haizhilin2013](https://github.com/haizhilin2013)、[xiaoxiaopingzi](https://github.com/xiaoxiaopingzi)、[WarpPrism](https://github.com/WarpPrism)、[dkzwm](https://github.com/dkzwm)、[wonderbeyond](https://github.com/wonderbeyond)、[Gltina](https://github.com/Gltina)、[2881099(3)](https://github.com/2881099)、[bsharkl(2)](https://github.com/bsharkl)、[xiaochunjimmy](https://github.com/xiaochunjimmy)、[TrustTheBoy](https://github.com/TrustTheBoy)、[layumi](https://github.com/layumi)、[deathearth](https://github.com/deathearth)、[holylovelqq](https://github.com/holylovelqq)、[yhlben](https://github.com/yhlben)、[tony0705](https://github.com/tony0705)、[ZhimingYan](https://github.com/ZhimingYan)、[leaicc(2)](https://github.com/leaicc)、[sugar1569](https://github.com/sugar1569)、[surunzi](https://github.com/surunzi)、[shabake](https://github.com/shabake)、[codexu](https://github.com/codexu)、[CasualJi](https://github.com/CasualJi)、[franklingu](https://github.com/franklingu)、[JacksonWuxs](https://github.com/JacksonWuxs)、[GMWorkStudio](https://github.com/GMWorkStudio)、[timqian](https://github.com/timqian)、[Mckinsey666(2)](https://github.com/Mckinsey666)、[JohnnyTing(3)](https://github.com/JohnnyTing)、[jtyoui](https://github.com/jtyoui)、[xuexiangjys(2)](https://github.com/xuexiangjys)、[guanpengchn](https://github.com/guanpengchn)、[wei](https://github.com/wei)、[QingZ11(2)](https://github.com/QingZ11)、[Yanwenjiepy](https://github.com/Yanwenjiepy)、[Windsooon](https://github.com/Windsooon)、[lsqy](https://github.com/lsqy)、[Q-Angelo](https://github.com/Q-Angelo)、[MZCretin](https://github.com/MZCretin)、[heibaiying](https://github.com/heibaiying)、[caozhiyi](https://github.com/caozhiyi)、[heucoder](https://github.com/heucoder)、[yinxin630](https://github.com/yinxin630)、[westfly](https://github.com/westfly)、[yanghongfei](https://github.com/yanghongfei)、[ListenLove](https://github.com/ListenLove)、[leviding](https://github.com/leviding)、[LeeLejia](https://github.com/LeeLejia)、[LockGit](https://github.com/LockGit)、[KubeOperator(2)](https://github.com/KubeOperator)、[newbee-mall](https://github.com/newbee-mall)、[vortesnail(2)](https://github.com/vortesnail)、[int64ago](https://github.com/int64ago)、[Dom-Wang](https://github.com/Dom-Wang)、[Youthink](https://github.com/Youthink)、[luizyao](https://github.com/luizyao)、[anjoy8](https://github.com/anjoy8)、[waruqi](https://github.com/waruqi)、[xxjwxc(3)](https://github.com/xxjwxc)、[mingzaily](https://github.com/mingzaily)、[yatengLG(2)](https://github.com/yatengLG)、[GatesMa(2)](https://github.com/GatesMa)、[janryWang](https://github.com/janryWang)、[zerosoul(4)](https://github.com/zerosoul)、[sixiaodong123](https://github.com/sixiaodong123)、[ZZY2357](https://github.com/ZZY2357)、[jy03078959](https://github.com/jy03078959)、[monoplasty](https://github.com/monoplasty)、[fantasticsoul](https://github.com/fantasticsoul)、[taojy123(2)](https://github.com/taojy123)、[mayerui](https://github.com/mayerui)、[Linnzh(2)](https://github.com/Linnzh)、[star7th](https://github.com/star7th)、[NaNShaner](https://github.com/NaNShaner)、[moonming](https://github.com/moonming)、[CismonX(2)](https://github.com/CismonX)、[jindaxiang](https://github.com/jindaxiang)、[Light-City](https://github.com/Light-City)、[youngjuning](https://github.com/youngjuning)、[hustcc](https://github.com/hustcc)、[Rapiz1](https://github.com/Rapiz1)、[ithewei(2)](https://github.com/ithewei)、[kateshaowanjou](https://github.com/kateshaowanjou)、[kinglyl](https://github.com/kinglyl)、[pioneerAlone](https://github.com/pioneerAlone)、[TrumanDu](https://github.com/TrumanDu)、[rootsongjc](https://github.com/rootsongjc)、[hungter007](https://github.com/hungter007)、[peacewong](https://github.com/peacewong)、[zhengxiaotian](https://github.com/zhengxiaotian)、[zmister2016](https://github.com/zmister2016)、[mr-kelly](https://github.com/mr-kelly)、[saltbo](https://github.com/saltbo) -、[xaboy](https://github.com/xaboy)、[guofei9987](https://github.com/guofei9987)、[Gusabary](https://github.com/Gusabary)、[SelfImpr001](https://github.com/SelfImpr001)、[code6er](https://github.com/code6er)、[HandyControl](https://github.com/HandyOrg/HandyControl)、[hey-hoho](https://github.com/hey-hoho)、[xmuli](https://github.com/xmuli)、[cckuailong(2)](https://github.com/cckuailong)、[lanking520](https://github.com/lanking520)、[oct16](https://github.com/oct16)、[anye931123](https://github.com/anye931123)、[YeDaxia](https://github.com/YeDaxia)、[RainMark](https://github.com/RainMark)、[KFCFans](https://github.com/KFCFans)、[kingyuluk](https://github.com/kingyuluk)、[Summer-andy](https://github.com/Summer-andy)、[qiaojialin](https://github.com/qiaojialin)、[africa1207](https://github.com/africa1207)、[dingpengyu](https://github.com/dingpengyu)、[caofanCPU](https://github.com/caofanCPU)、[YuLeiFuYun](https://github.com/YuLeiFuYun)、[giscafer](https://github.com/giscafer)、[meetbill](https://github.com/meetbill)、[halfrost(2)](https://github.com/halfrost)、[Xunzhuo](https://github.com/Xunzhuo)、[pwwang](https://github.com/pwwang)、[genaller](https://github.com/genaller)、[tangkai-prc](https://github.com/tangkai-prc)、[AppleMonkey2019](https://github.com/AppleMonkey2019)、[longitachi](https://github.com/longitachi)、[parzulpan](https://github.com/parzulpan)、[archibate](https://github.com/archibate)、[loperSeven](https://github.com/loperSeven) \ No newline at end of file +[ming995](https://github.com/ming995)、[FrontMage](https://github.com/FrontMage)、[xibinyue](https://github.com/xibinyue)、[Eurus-Holmes](https://github.com/Eurus-Holmes)、[daixiang0](https://github.com/daixiang0)、[nivance](https://github.com/nivance)、[QA_imp](https://www.cnblogs.com/bu1tcat/)、[CoderKo1o](https://github.com/iphone5solo)、[xyyVee](https://github.com/xyyVee)、[zhbzz2007](https://github.com/zhbzz2007)、[ethan-funny](https://github.com/ethan-funny)、[PeoLeser](https://github.com/PeoLeser)、[jp1017](https://github.com/jp1017)、[arronf2e](https://github.com/arronf2e)、[iphone5solo](https://github.com/iphone5solo)、[jkpang](https://github.com/jkpang)、[BruceDone](https://github.com/BruceDone)、[answershuto](https://github.com/answershuto)、[kelekexiao123](https://github.com/kelekexiao123)、[wsdjeg](https://github.com/wsdjeg)、[NoneGG](https://github.com/NoneGG)、[zdhxiong](https://github.com/zdhxiong)、[zhuyingda](https://github.com/zhuyingda)、[xnum](https://github.com/xnum)、[JessYanCoding](https://github.com/JessYanCoding)、[zmrenwu](https://github.com/zmrenwu)、[eatage](https://github.com/eatage)、[tamlok](https://github.com/tamlok)、[pipiliang](https://github.com/pipiliang)、[DIYgod](https://github.com/DIYgod)、[Wlitsoft](https://github.com/Wlitsoft)、[gyh1621](https://github.com/gyh1621)、[crossoverJie](https://github.com/crossoverJie)、[Denon](https://github.com/Denon)、[chinesedfan](https://github.com/chinesedfan)、[joeyguo](https://github.com/joeyguo)、[LRH1993](https://github.com/LRH1993)、[hsluoyz](https://github.com/hsluoyz)、[jhao104](https://github.com/jhao104)、[ResolveWang](https://github.com/ResolveWang)、[asheigithub](https://github.com/asheigithub)、[maning0303](https://github.com/maning0303)、[torchcode](https://github.com/torchcode)、[yan-xz](https://github.com/yan-xz)、[TerryZ](https://github.com/TerryZ)、[trazyn](https://github.com/trazyn)、[hujiulong](https://github.com/hujiulong)、[xcyf008](https://github.com/xcyf008)、[eastseven](https://github.com/eastseven)、[BillWang139967](https://github.com/BillWang139967)、[gee1k(2)](https://github.com/gee1k)、[answershuto](https://github.com/answershuto)、[linguowei](https://github.com/linguowei)、[Rictusempra](https://github.com/Rictusempra)、[Juliiii](https://github.com/Juliiii)、[Kerr1Gan](https://github.com/Kerr1Gan)、[haifenghuang(2)](https://github.com/haifenghuang)、[lilijialiang](https://github.com/lilijialiang)、[Prodesire](https://github.com/Prodesire)、[viclm](https://github.com/viclm)、[wynter-wang](https://github.com/wynter-wang)、[dianbaer](https://github.com/dianbaer)、[biezhi](https://github.com/biezhi)、[itgoyo(5)](https://github.com/itgoyo)、[yhaolpz](https://github.com/yhaolpz)、[smarthadron](https://github.com/smarthadron)、[mapletower](https://github.com/mapletower)、[nicholaslee119](https://github.com/nicholaslee119)、[RitterHou](https://github.com/RitterHou)、[PuShaoWei](https://github.com/PuShaoWei)、[luckybilly(3)](https://github.com/luckybilly)、[doyoyob](https://github.com/doyoyob)、[Qiu800820](https://github.com/Qiu800820)、[zeed-w-beez](https://github.com/zeed-w-beez)、[aOrz](https://github.com/aOrz)、[lt94](https://github.com/lt94)、[Chyroc](https://github.com/Chyroc)、[Lision](https://github.com/Lision)、[fhxsnabi](https://github.com/fhxsnabi)、[CuberL](https://github.com/CuberL)、[tangweikun](https://github.com/tangweikun)、[FrontMage](https://github.com/FrontMage)、[iamjohnnyzhuang](https://github.com/iamjohnnyzhuang)、[aosen](https://github.com/aosen)、[clayclayclay](https://github.com/clayclayclay)、[zazzaz](https://github.com/zazzaz)、[BolexLiu](https://github.com/BolexLiu)、[DotzuX](https://github.com/DotzuX)、[junxiaosong](https://github.com/junxiaosong)、[M-Adoo](https://github.com/M-Adoo)、[zhihaozhang](https://github.com/zhihaozhang)、[starlying](https://github.com/starlying)、[Alinshans](https://github.com/Alinshans)、[HJ-Money](https://github.com/HJ-Money)、[topcss](https://github.com/topcss)、[twhuang-uiuc](https://github.com/twhuang-uiuc)、[maychair](https://github.com/maychair)、[mumuy](https://github.com/mumuy)、[sufuf3](https://github.com/sufuf3)、[succlz123](https://github.com/succlz123)、[sunloj](https://github.com/sunloj)、[HuanHaiLiuXin](https://github.com/HuanHaiLiuXin)、[lijinke666](https://github.com/lijinke666)、[chrislinan](https://github.com/chrislinan)、[ThinkpadNC5](https://github.com/ThinkpadNC5)、[appleboy](https://github.com/appleboy)、[objcoding](https://github.com/objcoding)、[songtianyi](https://github.com/songtianyi)、[simplepeng](https://github.com/simplepeng)、[xia-tong](https://github.com/xia-tong)、[wonderfulsuccess](https://github.com/wonderfulsuccess)、[Qsnh](https://github.com/Qsnh)、[Larry850806](https://github.com/Larry850806)、[NamelessAshone(3)](https://github.com/NamelessAshone)、[pench3r](https://github.com/pench3r)、[hon-key](https://github.com/hon-key)、[huangyz0918](https://github.com/huangyz0918)、[pujiaxin33](https://github.com/pujiaxin33)、[cnwangjie](https://github.com/cnwangjie)、[dada0z](https://github.com/dada0z)、[adrianzhang](https://github.com/adrianzhang)、[Sugar250](https://github.com/Sugar250)、[itisyang(2)](https://github.com/itisyang)、[imageslr](https://github.com/imageslr)、[kaixinbaba(7)](https://github.com/kaixinbaba)、[looly](https://github.com/looly)、[wojs5](https://github.com/wojs5)、[xianhu](https://github.com/xianhu)、[hhxsv5](https://github.com/hhxsv5)、[LanjianNUll](https://github.com/LanjianNUll)、[bestvist](https://github.com/bestvist)、[dntzhang](https://github.com/dntzhang)、[KunMinX(2)](https://github.com/KunMinX)、[afkT](https://github.com/afkT)、[syt123450](https://github.com/syt123450)、[Seaear](https://github.com/Seaear)、[huangjianke](https://github.com/huangjianke)、[howie6879](https://github.com/howie6879)、[teeyog](https://github.com/teeyog)、[zyupo](https://github.com/zyupo)、[my8100](https://github.com/my8100)、[daniel-dx](https://github.com/daniel-dx)、[googege](https://github.com/googege)、[LucienShui](https://github.com/LucienShui)、[mds1455975151](https://github.com/mds1455975151)、[zzugbb](https://github.com/zzugbb)、[qianguyihao](https://github.com/qianguyihao)、[dantangfan](https://github.com/dantangfan)、[wenzhixin](https://github.com/wenzhixin)、[tangdou1(3)](https://github.com/tangdou1)、[inhere](https://github.com/inhere)、[kulics](https://github.com/kulics)、[nosarthur](https://github.com/nosarthur)、[byronz](https://github.com/byronz)、[jdneo](https://github.com/jdneo)、[zhaoolee(2)](https://github.com/zhaoolee) +、[hzwer](https://github.com/hzwer)、[xunki](https://github.com/xunki)、[azl397985856(2)](https://github.com/azl397985856)、[96486d9b](https://github.com/96486d9b)、[5A59(2)](https://github.com/5A59)、[prprprus](https://github.com/prprprus)、[EddieIvan01](https://github.com/EddieIvan01)、[ddzy(2)](https://github.com/ddzy)、[mylxsw(2)](https://github.com/mylxsw)、[liyuexing](https://github.com/liyuexing)、[auxten](https://github.com/auxten)、[xmyl](https://github.com/xmyl)、[mintsweet](https://github.com/mintsweet)、[colinlet](https://github.com/colinlet)、[yubozhao](https://github.com/yubozhao)、[vicanso](https://github.com/vicanso)、[AICareless](https://github.com/AICareless)、[LYXmoonstars](https://github.com/LYXmoonstars)、[RobiNexy(3)](https://github.com/RobiNexy)、[buppter(2)](https://github.com/buppter)、[Macr0phag3](https://github.com/Macr0phag3)、[haizhilin2013](https://github.com/haizhilin2013)、[xiaoxiaopingzi](https://github.com/xiaoxiaopingzi)、[WarpPrism](https://github.com/WarpPrism)、[dkzwm](https://github.com/dkzwm)、[wonderbeyond](https://github.com/wonderbeyond)、[Gltina](https://github.com/Gltina)、[2881099(3)](https://github.com/2881099)、[bsharkl(2)](https://github.com/bsharkl)、[xiaochunjimmy](https://github.com/xiaochunjimmy)、[TrustTheBoy](https://github.com/TrustTheBoy)、[layumi](https://github.com/layumi)、[deathearth](https://github.com/deathearth)、[holylovelqq](https://github.com/holylovelqq)、[yhlben](https://github.com/yhlben)、[tony0705](https://github.com/tony0705)、[ZhimingYan](https://github.com/ZhimingYan)、[leaicc(2)](https://github.com/leaicc)、[sugar1569](https://github.com/sugar1569)、[surunzi](https://github.com/surunzi)、[shabake](https://github.com/shabake)、[codexu](https://github.com/codexu)、[CasualJi](https://github.com/CasualJi)、[franklingu](https://github.com/franklingu)、[JacksonWuxs](https://github.com/JacksonWuxs)、[GMWorkStudio](https://github.com/GMWorkStudio)、[timqian](https://github.com/timqian)、[Mckinsey666(2)](https://github.com/Mckinsey666)、[JohnnyTing(3)](https://github.com/JohnnyTing)、[jtyoui](https://github.com/jtyoui)、[xuexiangjys(2)](https://github.com/xuexiangjys)、[guanpengchn](https://github.com/guanpengchn)、[wei(2)](https://github.com/wei)、[QingZ11(2)](https://github.com/QingZ11)、[Yanwenjiepy](https://github.com/Yanwenjiepy)、[Windsooon](https://github.com/Windsooon)、[lsqy](https://github.com/lsqy)、[Q-Angelo](https://github.com/Q-Angelo)、[MZCretin](https://github.com/MZCretin)、[heibaiying](https://github.com/heibaiying)、[caozhiyi](https://github.com/caozhiyi)、[heucoder](https://github.com/heucoder)、[yinxin630](https://github.com/yinxin630)、[westfly](https://github.com/westfly)、[yanghongfei](https://github.com/yanghongfei)、[ListenLove](https://github.com/ListenLove)、[leviding](https://github.com/leviding)、[LeeLejia](https://github.com/LeeLejia)、[LockGit](https://github.com/LockGit)、[KubeOperator(2)](https://github.com/KubeOperator)、[newbee-mall](https://github.com/newbee-mall)、[vortesnail(2)](https://github.com/vortesnail)、[int64ago](https://github.com/int64ago)、[Dom-Wang](https://github.com/Dom-Wang)、[Youthink](https://github.com/Youthink)、[luizyao](https://github.com/luizyao)、[anjoy8](https://github.com/anjoy8)、[waruqi](https://github.com/waruqi)、[xxjwxc(3)](https://github.com/xxjwxc)、[mingzaily](https://github.com/mingzaily)、[yatengLG(2)](https://github.com/yatengLG)、[GatesMa(2)](https://github.com/GatesMa)、[janryWang](https://github.com/janryWang)、[zerosoul(4)](https://github.com/zerosoul)、[sixiaodong123](https://github.com/sixiaodong123)、[ZZY2357](https://github.com/ZZY2357)、[jy03078959](https://github.com/jy03078959)、[monoplasty](https://github.com/monoplasty)、[fantasticsoul](https://github.com/fantasticsoul)、[taojy123(2)](https://github.com/taojy123)、[mayerui](https://github.com/mayerui)、[Linnzh(2)](https://github.com/Linnzh)、[star7th](https://github.com/star7th)、[NaNShaner](https://github.com/NaNShaner)、[moonming](https://github.com/moonming)、[CismonX(2)](https://github.com/CismonX)、[jindaxiang](https://github.com/jindaxiang)、[Light-City](https://github.com/Light-City)、[youngjuning](https://github.com/youngjuning)、[hustcc](https://github.com/hustcc)、[Rapiz1](https://github.com/Rapiz1)、[ithewei(2)](https://github.com/ithewei)、[kateshaowanjou](https://github.com/kateshaowanjou)、[kinglyl](https://github.com/kinglyl)、[pioneerAlone](https://github.com/pioneerAlone)、[TrumanDu](https://github.com/TrumanDu)、[rootsongjc](https://github.com/rootsongjc)、[hungter007](https://github.com/hungter007)、[peacewong](https://github.com/peacewong)、[zhengxiaotian](https://github.com/zhengxiaotian)、[zmister2016](https://github.com/zmister2016)、[mr-kelly](https://github.com/mr-kelly)、[saltbo](https://github.com/saltbo) +、[xaboy](https://github.com/xaboy)、[guofei9987](https://github.com/guofei9987)、[Gusabary](https://github.com/Gusabary)、[SelfImpr001](https://github.com/SelfImpr001)、[code6er](https://github.com/code6er)、[HandyControl](https://github.com/HandyOrg/HandyControl)、[hey-hoho](https://github.com/hey-hoho)、[xmuli](https://github.com/xmuli)、[cckuailong(2)](https://github.com/cckuailong)、[lanking520](https://github.com/lanking520)、[oct16](https://github.com/oct16)、[anye931123](https://github.com/anye931123)、[YeDaxia](https://github.com/YeDaxia)、[RainMark](https://github.com/RainMark)、[KFCFans](https://github.com/KFCFans)、[kingyuluk](https://github.com/kingyuluk)、[Summer-andy](https://github.com/Summer-andy)、[qiaojialin](https://github.com/qiaojialin)、[africa1207](https://github.com/africa1207)、[dingpengyu](https://github.com/dingpengyu)、[caofanCPU](https://github.com/caofanCPU)、[YuLeiFuYun](https://github.com/YuLeiFuYun)、[giscafer](https://github.com/giscafer)、[meetbill](https://github.com/meetbill)、[halfrost(2)](https://github.com/halfrost)、[Xunzhuo](https://github.com/Xunzhuo)、[pwwang](https://github.com/pwwang)、[genaller](https://github.com/genaller)、[tangkai-prc](https://github.com/tangkai-prc)、[AppleMonkey2019](https://github.com/AppleMonkey2019)、[longitachi](https://github.com/longitachi)、[parzulpan](https://github.com/parzulpan)、[archibate](https://github.com/archibate)、[loperSeven](https://github.com/loperSeven)、[srcrs](https://github.com/srcrs)、[SekiBetu](https://github.com/SekiBetu)、[lanyulei](https://github.com/lanyulei)、[toolgood](https://github.com/toolgood) \ No newline at end of file diff --git a/content/last.md b/content/last.md index 002386fb..f4ef00a5 100644 --- a/content/last.md +++ b/content/last.md @@ -1,4 +1,4 @@ -# 《HelloGitHub》第 54 期 +# 《HelloGitHub》第 55 期 >兴趣是最好的老师,**HelloGitHub** 就是帮你找到兴趣!

@@ -25,16 +25,16 @@ - [Go 项目](#Go-项目) - [Java 项目](#Java-项目) - [JavaScript 项目](#JavaScript-项目) -- [Kotlin 项目](#Kotlin-项目) - [Python 项目](#Python-项目) -- [Rust 项目](#Rust-项目) - [Swift 项目](#Swift-项目) - [其它](#其它) - [开源书籍](#开源书籍) - [机器学习](#机器学习) -**Tips**:如果文中的图刷不出来,可以向我们反馈。也可以访问 [官网](https://hellogithub.com/) 获取更好的阅读体验。 +- [返回首页](https://github.com/521xueweihan/HelloGitHub#%E5%86%85%E5%AE%B9) + +**Tips**:如果文中的图刷不出来,可以向我们[反馈](https://github.com/521xueweihan/HelloGitHub/issues/899)。也可以访问 [官网](https://hellogithub.com/) 获取更好的阅读体验。


@@ -45,342 +45,288 @@ > **以下为本期内容**|每个月 **28** 号发布最新一期 ### C 项目 -1、[libevent](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/libevent/libevent):C 语言实现的轻量级、高性能事件通知库。基于事件驱动,支持多种 I/O 多路复用技术:epoll、poll、select、kqueue 等。libevent 就是这些系统基础库的统一封装,提供更高级的 API 并解决跨平台的问题 +1、[htop](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/htop-dev/htop):交互式进程查看工具,可代替 top 命令。用了这库后,我基本不用 top 命令了 + +

🔙 返回目录 🔙


### C# 项目 -2、[dotnet-docker](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dotnet/dotnet-docker):.NET Core 和 Tools 的 Docker 镜像 - -3、[machinelearning](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dotnet/machinelearning):微软开源的 C# 机器学习框架。支持的机器学习类任务:分类、回归、聚类等,[教程和视频](https://dotnet.microsoft.com/learn/ml-dotnet)。示例代码: +2、[ToolGood.Words](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/toolgood/ToolGood.Words):一款高性能非法词、敏感词检测库。还支持繁体简体互换、获取拼音首字母、获取拼音字母、拼音模糊搜索等功能 ```C# -var dataPath = "sentiment.csv"; -var mlContext = new MLContext(); -var loader = mlContext.Data.CreateTextLoader(new[] - { - new TextLoader.Column("SentimentText", DataKind.String, 1), - new TextLoader.Column("Label", DataKind.Boolean, 0), - }, - hasHeader: true, - separatorChar: ','); -var data = loader.Load(dataPath); -var learningPipeline = mlContext.Transforms.Text.FeaturizeText("Features", "SentimentText") - .Append(mlContext.BinaryClassification.Trainers.FastTree()); -var model = learningPipeline.Fit(data); - -var predictionEngine = mlContext.Model.CreatePredictionEngine(model); -var prediction = predictionEngine.Predict(new SentimentData -{ - SentimentText = "Today is a great day!" -}); -Console.WriteLine("prediction: " + prediction.Prediction); +string s = "中国|国人|zg人"; +string test = "我是中国人"; + +StringSearch iwords = new StringSearch(); +iwords.SetKeywords(s.Split('|')); + +var b = iwords.ContainsAny(test); +Assert.AreEqual(true, b); + +var f = iwords.FindFirst(test); +Assert.AreEqual("中国", f); + +var all = iwords.FindAll(test); +Assert.AreEqual("中国", all[0]); +Assert.AreEqual("国人", all[1]); +Assert.AreEqual(2, all.Count); + +var str = iwords.Replace(test, '*'); +Assert.AreEqual("我是***", str); ```

🔙 返回目录 🔙


### C++ 项目 -4、[drogon](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/an-tao/drogon):一款 C++ 的异步非阻塞高性能 Web 框架。功能强大、上手容易,使得用 C++ 语言构建各种类型的高性能 Web 应用,变得更加方便。示例代码: -```C++ -#include -using namespace drogon; -int main() -{ - app().setLogPath("./") - .setLogLevel(trantor::Logger::kWarn) - .addListener("0.0.0.0", 80) - .setThreadNum(16) - .enableRunAsDaemon() - .run(); -} -``` - -

+3、[workflow](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/sogou/workflow):搜狗开源的 C++ 服务器引擎。支撑搜狗几乎所有后端 C++ 在线服务,包括所有搜索服务、云输入法、广告等,每日处理超百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数 C++ 后端开发需求

🔙 返回目录 🔙


### CSS 项目 -5、[css-diner](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/flukeout/css-diner):通过游戏方式在线学习 CSS 选择器知识。初学者可以通过简单的动画界面,学习 CSS 多种选择器语法是如何筛选出页面的元素,虽然是英文网站但还算通俗易懂。[在线尝试](https://flukeout.github.io/) +4、[flexboxfroggy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/thomaspark/flexboxfroggy):一个帮助学习 CSS flexbox 知识的在线游戏。游戏一共 24 关,通俗易懂的解释了 flex 布局。适合初学者,并且支持中文,可以在 settings 中选择语言。[在线试玩](https://flexboxfroggy.com/) -

+

🔙 返回目录 🔙


### Go 项目 -6、[go-micro](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/micro/go-micro):一款 Go 插件化的基础框架。我只知道它是个 Go 微服务框架,基于它可以快速构建微服务。示例代码如图所示 +5、[go-diagrams](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/blushft/go-diagrams):用 Go 语言画架构图的工具。想画架构图不知道用什么工具?会 Go 的小伙伴可以试试这个库,通过编写 Go 代码来绘制架构图,接口使用方便,但文档太简单了。示例代码: +```go +d, err := diagram.New(diagram.Filename("app"), diagram.Label("App"), diagram.Direction("LR")) +if err != nil { + log.Fatal(err) +} -

+dns := gcp.Network.Dns(diagram.NodeLabel("DNS")) +lb := gcp.Network.LoadBalancing(diagram.NodeLabel("NLB")) +cache := gcp.Database.Memorystore(diagram.NodeLabel("Cache")) +db := gcp.Database.Sql(diagram.NodeLabel("Database")) -7、[pgweb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/sosedoff/pgweb):基于 Go 实现的跨平台 PostgreSQL 数据库管理工具。通过本地起服务+浏览器的方式解决了跨平台的问题,启动命令: -``` -三种方式: +dc := diagram.NewGroup("GCP") +dc.NewGroup("services"). + Label("Service Layer"). + Add( + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 1")), + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 2")), + gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 3")), + ). + ConnectAllFrom(lb.ID(), diagram.Forward()). + ConnectAllTo(cache.ID(), diagram.Forward()) -参数:pgweb --host localhost --user myuser --db mydb -URL:pgweb --url postgres://user:password@host:port/database?sslmode=[mode] -Socket:pgweb --url "postgres:///database?host=/absolute/path/to/unix/socket/dir" -``` +dc.NewGroup("data").Label("Data Layer").Add(cache, db).Connect(cache, db) -

+d.Connect(dns, lb, diagram.Forward()).Group(dc) -8、[go-admin](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wenjianzhang/go-admin):基于 Gin+Vue+Element UI 的前后端分离权限管理系统。文档齐全、还有视频教程适合新手学习,特点: -- 遵循 RESTful API 设计规范 -- 基于 Gin Web API 框架,提供了丰富的中间件支持(用户认证、跨域、访问日志、追踪 ID 等) -- 支持 Swagger 文档 -- 等等 +if err := d.Render(); err != nil { + log.Fatal(err) +} +``` -

+

-9、[now](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/jinzhu/now):Go 语言的时间工具库。项目简单、代码易懂,示例代码丰富: -```go -import "github.com/jinzhu/now" - -time.Now() // 2013-11-18 17:51:49.123456789 Mon - -now.BeginningOfMinute() // 2013-11-18 17:51:00 Mon -now.BeginningOfHour() // 2013-11-18 17:00:00 Mon -now.BeginningOfDay() // 2013-11-18 00:00:00 Mon -now.BeginningOfWeek() // 2013-11-17 00:00:00 Sun -now.BeginningOfMonth() // 2013-11-01 00:00:00 Fri -now.BeginningOfQuarter() // 2013-10-01 00:00:00 Tue -now.BeginningOfYear() // 2013-01-01 00:00:00 Tue - -now.WeekStartDay = time.Monday // Set Monday as first day, default is Sunday -now.BeginningOfWeek() // 2013-11-18 00:00:00 Mon - -now.EndOfMinute() // 2013-11-18 17:51:59.999999999 Mon -now.EndOfHour() // 2013-11-18 17:59:59.999999999 Mon -now.EndOfDay() // 2013-11-18 23:59:59.999999999 Mon -now.EndOfWeek() // 2013-11-23 23:59:59.999999999 Sat -now.EndOfMonth() // 2013-11-30 23:59:59.999999999 Sat -now.EndOfQuarter() // 2013-12-31 23:59:59.999999999 Tue -now.EndOfYear() // 2013-12-31 23:59:59.999999999 Tue - -now.WeekStartDay = time.Monday // Set Monday as first day, default is Sunday -now.EndOfWeek() // 2013-11-24 23:59:59.999999999 Sun -``` +6、[gorched](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zladovan/gorched):Go 语言写的终端游戏 Scorched Earth。它让我想起了“百战天虫”这款游戏,有同龄人吗?一起来回味下 -

🔙 返回目录 🔙


+

-### Java 项目 -10、[roncoo-pay](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/roncoo/roncoo-pay):开源的 Java 互联网业务支付系统。拥有独立的账户体系、用户体系、支付接入体系、支付交易体系、对账清结算体系等,想学习支付相关技术的同学可以看看这个项目。项目结构如下: -``` -roncoo-pay -| -├── roncoo-pay-app-notify //商户通知模块 -| -├── roncoo-pay-app-order-polling //订单轮询模块 -| -├── roncoo-pay-app-reconciliation //交易对账模块 -| -├── roncoo-pay-app-settlement //交易结算模块 -| -├── roncoo-pay-common-core //公共基础模块,不需要单独部署 -| -├── roncoo-pay-service //核心业务模块,不需要单独部署 -| -├── roncoo-pay-web-boss //运营后台模块 -| -├── roncoo-pay-web-gateway //支付网关模块 -| -├── roncoo-pay-web-merchant //商户后台模块 -| -├── roncoo-pay-web-sample-shop //模拟商城模块 -``` +7、[ali](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nakabonne/ali):能够实时展示分析的压力测试工具。现在压测工具有很多,这款的亮点在于可以在终端实时展示压测过程的曲线。一条命令搞定启动:`ali 地址` + +

-11、[screw](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/pingfangushi/screw):简单好用的数据库表结构文档生成工具 +8、[ferry](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/lanyulei/ferry):基于 Gin + Vue + Element UI 前后端分离的工单系统。该系统是集工单统计、任务钩子、权限管理、灵活配置流程与模版等等功能, 帮助减少跨部门之间的沟通,提升工作效率与工作质量,减少不必要的工作量与人为出错率 -

+

🔙 返回目录 🔙


-### JavaScript 项目 -12、[tesseract.js](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/naptha/tesseract.js):支持多种语言的文字识别的 JS 库,能够方便、准确的把图片中的文字解析提取出来(就能复制了)。基于 Tesseract OCR 引擎实现的 JS 版本,方便前端实现文字识别功能和在浏览器中直接使用。[在线尝试](https://tesseract.projectnaptha.com/) +### Java 项目 +9、[retrofit-spring-boot-starter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LianjiaTech/retrofit-spring-boot-starter):一个适用于 Spring Boot 项目的轻量级 HTTP Web 框架。使用简单方便,支持接口化的方式发送 HTTP 请求。底层使用 Retrofit 实现,并支持了诸多功能特性增强,极大简化开发 +```java +/** +* 定义接口 +**/ +@RetrofitClient(baseUrl = "${test.baseUrl}") +public interface HttpApi { + + @GET("person") + Result getPerson(@Query("id") Long id); +} -

+/** +* 注入使用 +**/ +@Service +public class TestService { + @Autowired + private HttpApi httpApi; + + public void test() { + // 通过httpApi发起http请求 + } +} +``` -13、[mind-elixir-core](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ssshooter/mind-elixir-core):一款免费开源的思维导图 JS 库。[在线尝试](https://mindelixir.ink/#/) +10、[jmeter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apache/jmeter):Apache 开源的压力测试工具。提供 GUI 操作界面就是可以点点点操作,也可以写脚本提高测试的自动化,它还不局限于 Web 测试,支持更多压力测试场景。我身边 97% 从事测试相关工作的人都用过它,要不要来看看它的源码?纯 Java 实现 -

+

-14、[IconPark](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/bytedance/IconPark):该开源库提供了 1200+ 高质量图标,还有一个界面便于定制图标。强大之处是可以通过改变一个 SVG 文件的属性来变换出多种主题,支持导出 SVG、PNG、Vue 和 React 图标组件等。极大的方便了设计师和开发者,让他们有更多时间逛 HG 了 +11、[mybatis-plus](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/baomidou/mybatis-plus):一款好用的 Java 操作数据库框架。MyBatis 增强工具包,提供了一些高效、实用、快捷的功能,使用它可以有效地节省您的开发时间。比如切换数据源,只需修改配置文件 +```java +List userList = userMapper.selectList( + new QueryWrapper() + .lambda() + .ge(User::getAge, 18) +); +``` -

+

-15、[next](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/alibaba-fusion/next):一套企业级中后台 UI 解决方案,致力于解决设计师与前端在工作协同、产品体验一致性、开发效率方面的问题。就是设计师修改颜色之类的,可以生成一个 NPM 主题包,前端拿到这个包就可以直接还原设计师的设计 +12、[BilibiliTask](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/srcrs/BilibiliTask):哔哩哔哩定时自动完成任务项目。该项目借助 GitHub Action 自动完成:每日任务、投币、直播签到等,还可以把运行结果推送到微信,是一个解决重复劳动的有趣项目。按照项目首页的教程,花点时间就能配置好,一劳永逸 -

+

🔙 返回目录 🔙


-### Kotlin 项目 -16、[DateTimePicker](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/loperSeven/DateTimePicker):一个简约、漂亮的日期时间选择器。支持 100% 自定义 UI,内置日期时间选择弹窗基于 Google BottomSheetDialog +### JavaScript 项目 +13、[zooming](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kingdido999/zooming):纯 JS 实现支持移动端的图像缩放库 -

+

-

🔙 返回目录 🔙


+14、[AnotherRedisDesktopManager](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qishibo/AnotherRedisDesktopManager):一款支持多语言、多平台的 redis 桌面管理工具。对比目前其它同类型工具,它拥有更丰富的功能、更高的稳定性和性能,支持集群等功能 -### Python 项目 -17、[real-live](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/parzulpan/real-live):一个网络直播聚合平台,能够观看视频直播、高清电视和收听广播电台等。目前支持 30+ 个视频直播、50+ 个高清电视频道和 70+ 个广播电台,比较全面的 Web 项目,用到的技术栈: -- 前端/客户端:Qt、Vue、Flutter 等 -- 后端:MySQL、Redis、Kafka/RabbitMQ、Elasticsearch 等 +

-

+15、[beeplay](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/watilde/beeplay):让你可以用 JS 写一首“歌”的库。[在线尝试](http://watilde.github.io/beeplay/),实例代码: +```javascript +var beeplay = require('beeplay') -18、[taichi](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/taichi-dev/taichi):一个高性能图形学编程框架。它可以将你编写的 Python 代码转换成高效的汇编代码,在多 CPU 和 GPU 上运行,相当于是在用 Python 的语法写着色器。Taichi 解决了图形学配环境难,代码移植性差等问题,只需 `pip install taichi` 即可安装,编写的程序在 Windows、Linux、OSX 上均可运行,降低了新手学习图形学的门槛。示例代码: -```python -import taichi as ti - -ti.init(arch=ti.gpu) # 指定编译后的函数在 GPU 上执行 +beeplay() + .play(null, 2) + .play('D#5', 1/4).play('E5', 1/4).play('F#5', 1/2) + .play('B5', 1/2).play('D#5', 1/4).play('E5', 1/4) + .play('F#5', 1/4).play('B5', 1/4).play('C#6', 1/4).play('D#6', 1/4) + .play('C#6', 1/4).play('A#5', 1/4).play('B5', 1/2) + .play('F#5', 1/2).play('D#5', 1/4).play('E5', 1/4) + .play('F#5', 1/2).play('B5', 1/2) + .play('C#6', 1/4).play('A#5', 1/4).play('B5', 1/4).play('C#6', 1/4) + .play('E6', 1/4).play('D#6', 1/4).play('E6', 1/4).play('C#6', 1/4); +``` -n = 320 -pixels = ti.field(dtype=float, shape=(n * 2, n)) # 提前声明数组存储类型,大小 +16、[vant](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/youzan/vant):由有赞前端团队开源的移动端组件库。目前官方提供了 Vue 版本和微信小程序版本,并由社区团队维护 React 版本。有完善的中英文文档和示例,60+ 高质量组件,90%+ 单元测试覆盖率,持续维护 4 年以上 +

-@ti.func # 该函数将是被调用的过程函数 -def complex_sqr(z): - return ti.Vector([z[0]**2 - z[1]**2, z[1] * z[0] * 2]) +17、[Bilibili-Evolved](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/the1812/Bilibili-Evolved):哔哩哔哩增强浏览器插件。安装插件后可支持:下载视频、删除广告、夜间模式等 +

-@ti.kernel # 该函数将被 Taichi 编译 -def paint(t: float): - for i, j in pixels: # 最外层循环会自动并行化 - c = ti.Vector([-0.8, ti.cos(t) * 0.2]) - z = ti.Vector([i / n - 1, j / n - 0.5]) * 2 - iterations = 0 - while z.norm() < 20 and iterations < 50: # 其他语法和原生 Python 基本一致 - z = complex_sqr(z) + c - iterations += 1 - pixels[i, j] = 1 - iterations * 0.02 +

🔙 返回目录 🔙


+### Python 项目 +18、[asciinema](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/asciinema/asciinema):终端记录工具。忘记录屏软件吧,纯文本的录制终端操作的工具。安装简单、使用方便,且生成的记录文件极小,但需要配合 JS 文件播放 -gui = ti.GUI("Julia Set", res=(n * 2, n)) +

-for i in range(1000000): - paint(i * 0.03) - gui.set_image(pixels) - gui.show() -``` +19、[playwright-python](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/microsoft/playwright-python):微软开源的浏览器自动化工具,可以用 Python 语言操作浏览器啦。支持 Linux、macOS、Windows 系统下的 Chromium、Firefox 和 WebKit 浏览器 -

+

-19、[readthedocs.org](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/readthedocs/readthedocs.org):知名文档社区网站(readthedocs.org)的开源源码。该网站上托管了:Scrapy、requests、bootstrap-datepicker 等知名库的文档,我看了下项目是基于 Django 开发的,文件有些多看起来需要点耐心 +20、[wagtail](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wagtail/wagtail):目前最强大的开源 Django CMS(内容管理系统)之一。我很少用“最”这个字眼,节省时间就聊聊它惊艳到我的点吧。首先该项目更新、迭代活跃,其次项目首页提到的功能都是免费的,没有付费解锁的骚操作。wagtail 专注于内容管理,不束缚前端实现。有趣的 StreamField 技术让你的内容变得灵活且不失结构,竟然还支持 A/B 测试,最后 Google、NASA 他们都在用这个项目 -20、[learn-python3](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/jerry-git/learn-python3):一份 Python3 的教程,请查收。该教程采用 Jupyter notebooks 形式,便于运行和阅读。并且还包含了练习题,对新手友好。缺点的话就是英文的教程,但是我都能看懂你肯定也可以 +

-21、[Computer-Networking-A-Top-Down-Approach-NOTES](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/moranzcw/Computer-Networking-A-Top-Down-Approach-NOTES):《计算机网络-自顶向下方法》编程作业。包含问题和 Python 代码解答,Wireshark 实验部分为官方文档的翻译 +21、[redis-memory-analyzer](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/gamenet/redis-memory-analyzer):Redis 实时内存分析工具。我比较好奇它是怎么实时获取 redis 中 key 的情况和信息,就看了下源码 `scanner.py` 文件。发现是采用 `scan_iter` 方法,控制扫描 key 返回的量。然后通过 `yield` 减少内存占用量,最后再加上 `register_script` 方法调用 Lua 脚本或` pipeline` 方法提高获取 key 信息的效率。分析后感觉这个工具可适用在数据量较大的情况,实时性要求在秒或者分钟级的场景下 -

🔙 返回目录 🔙


+

-### Rust 项目 -22、[rustlings](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/rust-lang/rustlings):该项目通过一个个简单练习小 demo,让初学者学习 Rust 的语法。通过简单的命令即可安装本项目,然后修改每个小练习,达到编译通过或者目标输出,通过后会进入下一关,有种闯关的成就感。运行方法: -``` -安装: -git clone https://github.com/rust-lang/rustlings -cd rustlings -git checkout tags/4.0.0 # or whatever the latest version is (find out at https://github.com/rust-lang/rustlings/releases/latest) -cargo install --force --path . - -安装完后,运行: -rustlings watch -``` +22、[practical-python](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dabeaz-course/practical-python):大佬 David Beazley 开源的 Python 免费入门级教程。他是《Python Cookbook 第三版》、《Python 参考手册》的作者,教程经过实际的教学实践、包含课后练习题。[在线学习](https://dabeaz-course.github.io/practical-python/Notes/Contents.html),教程目录如下: -

+

🔙 返回目录 🔙


### Swift 项目 -23、[ZLPhotoBrowser](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/longitachi/ZLPhotoBrowser):轻量级照片选择框架。它使用简单、功能丰富,支持预览/相册内拍照及录视频、拖拽/滑动选择、编辑裁剪图片/视频等功能。示例代码: -```swift -// 使用起来非常简单 -let ac = ZLPhotoPreviewSheet() -ac.selectImageBlock = { [weak self] (images, assets, isOriginal) in - // your code -} -// 快速选择方法 -ac.showPreview(animate: true, sender: self) -// 进入相册选择方法 -ac.showPhotoLibrary(sender: self) -``` +23、[stats](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/exelban/stats):macOS 菜单栏上的监控工具。支持 CPU、GPU、内存、网络等监控和多语言 -

+

🔙 返回目录 🔙


### 其它 -24、[Halfrost-Field](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/halfrost/Halfrost-Field):前阿里巴巴资深后端工程师“霜神”的技术博客,分享前、后端的技术干货。作者日常工作语言是 Go,在进入阿里巴巴之前,做了几年前端工作。文章内容包含:机器学习、Go、JS、iOS、网络协议等系列 - -

+24、[ZY-Player](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Hunlongyu/ZY-Player):免费无广告、高颜值+多平台的桌面视频资源播放器。功能如下: +- 全平台支持 Windows、Mac、Linux +- 视频源支持自定义, 支持导入/导出 +- 播放历史, 自动跳转历史进度 +- 支持精简模式, 摸鱼划水 +- 显示豆瓣评分 -25、[ntfstool](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ntfstool/ntfstool):一款为苹果电脑提供 NTFS 读写支持的免费工具。有了它就可以很方便的在苹果电脑上读写,从 Windows 系统拷贝数据的 U 盘和移动硬盘等。[安装说明](https://github.com/ntfstool/ntfstool/blob/master/README-CN.md) +

-

+25、[keysim](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/crsnbrt/keysim):键盘配色预览工具。“定制”这个操作一听就很贵,下单之前先这个工具先看看效果吧,避免浪费钱。[在线尝试](https://keyboardsimulator.xyz/) -26、[hexo-theme-matery](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/blinkfox/hexo-theme-matery):一款采用 Material Design 和响应式设计的 Hexo 博客主题。特点: -- 响应式设计,博客在桌面端、平板、手机等设备上均能很好的展现 -- 首页轮播文章及每天动态切换 Banner 图片 -- 时间轴式的归档页 -- 词云的标签页和雷达图的分类页 -- 丰富的关于我页面(包括关于我、文章统计图、我的项目、我的技能、相册等) -- 支持文章置顶和文章打赏 -- 等等 +

-

- -27、[highlight.js](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/highlightjs/highlight.js):让网页上的代码实现高亮的 JS 库,给代码点颜色瞧瞧。支持多种编程语言和样式,使用简单。示例代码: -```html - - - -
...
-``` +26、[tabler-icons](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/tabler/tabler-icons):一组免费开源的图标。目前共有 850+ 个图标,我觉得都挺好看的,您觉得呢? -

+

-28、[lite](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/rxi/lite):一款用 Lua 编写的超级轻量级的文本编辑器。在 Windows 下的 exe 文件虽然只有 300KB 左右,但颜值、功能和速度却一点都不差,甚至还支持使用自定义插件、配色主题等功能。小而美的文本编辑器 +27、[socialify](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wei/socialify):一键自动生成 GitHub 仓库头图。很多 GitHub 开源项目的作者不会用 PS,想要制作一张项目推广图就很困难,Socialify 就是帮你解决这个头疼的问题。[在线尝试](https://socialify.git.ci/) -

- -29、[L-ink_Card](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/peng-zhihui/L-ink_Card):该项目包含了制作一个迷你 NFC 智能卡的代码和教程。野生钢铁侠稚晖出品的[演示视频](https://www.bilibili.com/video/BV1Cf4y1y7KT/),他还制作了很多别的有趣的东西,大家可以去看看很有意思 - -

+

🔙 返回目录 🔙


### 开源书籍 -30、[trpl-zh-cn](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/KaiserY/trpl-zh-cn):《Rust 程序设计语言(第二版)》中文翻译。[在线阅读](https://kaisery.github.io/trpl-zh-cn/) - -

+28、[Mastering_Go_ZH_CN](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/hantmac/Mastering_Go_ZH_CN):《Mastering Go》的中文翻译版《玩转 Go》。[在线阅读](https://wskdsgcf.gitbook.io/mastering-go-zh-cn/) -31、[jshistory-cn](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/doodlewind/jshistory-cn):《JavaScript 20 年》中文版。[在线阅读](https://cn.history.js.org/) - -

+29、[A-Philosophy-of-Software-Design-zh](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/gdut-yy/A-Philosophy-of-Software-Design-zh):《软件设计的哲学》中文翻译。[在线阅读](https://gdut_yy.gitee.io/doc-aposd/)

🔙 返回目录 🔙


### 机器学习 -32、[nsfw-filter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nsfw-filter/nsfw-filter):基于 tensefow.js 实现的过滤 NSFW(裸露、暴力等)图片的浏览器插件 - -

+30、[video-object-removal](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zllrunning/video-object-removal):通过 Pytorch 实现绘制一个边界框,即可删除视频中要删除的对象。下图是演示操作,框中红色是抹掉的部分,删除前后的效果对比图可进到项目首页查看 -33、[computervision-recipes](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/microsoft/computervision-recipes):计算机视觉系统最佳实践,包含各种 CV 示例项目。示例使用 PytTorch 深度学习库+ Jupyter 文件,涵盖:图像分类、相似、识别、追踪等方面,适合对图像方面感兴趣的小伙伴阅读和学习 +

-

+31、[mlflow](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/mlflow/mlflow):一个简化机器学习开发的平台,支持跟踪实验、代码打包、部署模型等。它提供了一套轻量级的 API,可与目前主流机器学习 TensorFlow、PyTorch、XGBoost 等库轻松整合 +```python +# 安装:$ pip install mlflow +# 启动:$ mlflow ui +# 示例代码 +import mlflow +mlflow.keras.autolog() +# other keras code +... +``` -34、[seq2seq-couplet](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wb14123/seq2seq-couplet):基于深度学习的对对联项目,你出上联它自动生成下联。我尝试了下,对得三观很正,还挺有意思。[在线尝试](https://ai.binwang.me/couplet/) +

-

+32、[snownlp](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/isnowfy/snownlp):一个 Python 写的自然语言处理库。使用简单、功能强大,支持中文分词、词性标注、情感分析等 +```python +from snownlp import SnowNLP + +s = SnowNLP(u'这个东西真心很赞') +s.words # [u'这个', u'东西', u'真心', + # u'很', u'赞'] +s.tags # [(u'这个', u'r'), (u'东西', u'n'), + # (u'真心', u'd'), (u'很', u'd'), + # (u'赞', u'Vg')] +s.sentiments # 0.9769663402895832 positive的概率 +```

🔙 返回目录 🔙


- 『上一期』 | 反馈和建议 | 『下一期』 + 『上一期』 | 反馈和建议 | 『下一期』

---

- 看完了,还不够?<科技爱好者周刊>。还不过瘾,那就看看 <往期内容>吧。
- 点击分享发现的有趣项目 + 👉 点击赞助点击推荐项目 👈
+ 关注公众号:HelloGitHub
+ "第一时间收到推送及更多内容"
+