最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

33K Star!這才是程序員需要的神器。。。

2022-12-02 22:05 作者:DevWeekly  | 我要投稿

程序員寶藏庫https://gitee.com/sharetech_lee/CS-Books-Store

你想要的,這里都有!

作為程序員用的比較多的工具是什么?

我覺得搜索引擎絕對能名列前茅。

在開發(fā)過程中,總會遇到這樣或者那樣的問題超出我們自身的知識范圍。這些問題可能是編程語言方面的,可能是Linux操作系統(tǒng)方面的,可能是服務部署方面的等等。

當遇到這種問題時,很多同學會選擇求助于搜索引擎,懂得懂得,搜索引擎搜出的很多結果要么和問題無關、要么是個大坑。

所以,從事開發(fā)工作這么多年,我深刻意識一個道理,能夠快速解決問題真的是一項非常突出的本領,哪怕是在借助于互聯(lián)網(wǎng)的情況下。

話說回來,正是因為尋求問題的道路非常曲折繁瑣,因此,網(wǎng)上出現(xiàn)了各種各樣的速查表「CheatSheet」,估計有不少同學過去都看到過很多了。

但是,我認為這并沒有從效率上徹底解決問題。

今天我在瀏覽Github時發(fā)現(xiàn)一款非常不錯的開源工具,真的讓我眼前一亮。

img

這款開源工具的名字叫做cheat.sh,目前已經(jīng)33K+ Star了。

這款工具的簡潔是「你唯一需要的速查表」,簡單概括,這款工具把知名、權威社區(qū)的答案、資料進行了統(tǒng)一匯總,我們只需要這一款工具就可以快速得到最準確、最可靠的答案。

img


它背后的知識來源于tldr、StackOverflow、cheat.sheets等社區(qū)或者開源項目。

為了更加清晰的理解它的用處,下面先來看一個示例:

$ curl cht.sh/lua/table+keys
? ?-- lua: retrieve list of keys in a table

? ?local keyset={}
? ?local n=0

? ?for k,v in pairs(tab) do
? ? ?n=n+1
? ? ?keyset[n]=k
? ?end

? ?--[[
? ? ? [ Note that you cannot guarantee any order in keyset. If you want the
? ? ? [ keys in sorted order, then sort keyset with table.sort(keyset).
? ? ? [
? ? ? [ [lhf] [so/q/12674345] [cc by-sa 3.0]
? ? ? ]]

上面執(zhí)行的curl命令包含下面幾個信息:

  • cht.sh:工具名稱

  • lua:編程語言

  • table+keys:要查詢的問題,多個關鍵詞用加好鏈接

img


通過這樣,它就可以快速在終端下給出問題的答案。

如果你不想要文字描述,只想要「純凈」的答案,還可以通過參數(shù)來處理:

$ curl cht.sh/lua/table+keys\?Q
? ?local keyset={}
? ?local n=0

? ?for k,v in pairs(tab) do
? ? ?n=n+1
? ? ?keyset[n]=k
? ?end

想必到這里,很多同學都已經(jīng)知道它的用法了,概括一下這款工具的價值,主要有以下幾點:

  • 簡潔——它應該只包含你需要的東西,沒有雜亂的信息

  • 快速——能夠快速得到問題的答案,「所見即所得」

  • 全面——編程語言、操作系統(tǒng)等等,覆蓋面非常全

  • 通用——隨時隨地可用,

可能很多同學還有一絲疑慮,感覺用curl每次都要輸入很長的命令,太麻煩。

img


沒事,前面只是一個小示例,下面系統(tǒng)的介紹一下如何安裝并使用客戶端。

安裝

方式1

PATH_DIR="$HOME/bin" ?# or another directory on your $PATH
mkdir -p "$PATH_DIR"
curl https://cht.sh/:cht.sh > "$PATH_DIR/cht.sh"
chmod +x "$PATH_DIR/cht.sh"

方式二

curl -s https://cht.sh/:cht.sh | sudo tee /usr/local/bin/cht.sh && sudo chmod +x /usr/local/bin/cht.sh

安裝后就可以在終端下使用了。

如果想用交互式命令模式,還需要通過命令sudo apt install rlwrap安裝rlwrap。

用法

通過上述命令安裝客戶端之后,就不用再像前面curl命令那樣每次輸入很長的命令,可以用更加貼近人為描述的方式查詢問題答案。

舉幾個例子:

$ cht.sh go reverse a list
$ cht.sh python random list elements
$ cht.sh js parse json

這樣看,估計很多開發(fā)同學都能夠懂得它的用法了,「命令+語言+問題」。

可以看看效果:

$ cht.sh python random number
# ?Try:

from random import randrange
print(randrange(10))

# ?**Docs:**
# ?https://docs.python.org/3/library/random.htmlrandom.randrange
# ?
# ?[kovshenin] [so/q/3996904] [cc by-sa 3.0]

再嘗試一個:

$ cht.sh python matplotlib plot line
# ?You can directly plot the lines you want by feeding the `plot` command
# ?with the corresponding data (boundaries of the segments):
# ?
# ?`plot([x1, x2], [y1, y2], color='k', linestyle='-', linewidth=2)`
# ?
# ?(of course you can choose the color, line width, line style, etc.)
# ?
# ?From your example:

import numpy as np
import matplotlib.pyplot as plt

np.random.seed(5)
x = np.arange(1, 101)
y = 20 + 3 * x + np.random.normal(0, 60, 100)
plt.plot(x, y, "o")

# draw vertical line from (70,100) to (70, 250)
plt.plot([70, 70], [100, 250], 'k-', lw=2)

# draw diagonal line from (70, 90) to (90, 200)
plt.plot([70, 90], [90, 200], 'k-')

plt.show()

# ?![new chart](https://i.imgur.com/76drc.png)
# ?
# ?[gcalmettes] [so/q/12864294] [cc by-sa 3.0]

可以看得出來,它不僅支持編程語言的基本語法,還支持查詢語言基礎之外的工具包的用法。

IDE+編輯器

前面介紹了它在命令行下的用法,其實,cht.sh更強大的是它不僅支持命令行,它還可以在常用的IDE、編輯器下用。

例如:

  • Vim

  • Emacs

  • Sublime

  • IDEA

  • VS Code

  • IDEA

  • ...

除此之外,它還是跨平臺的,在Windows、Linux、macOS下都可以用。

另外,這款工具在編輯器、IDE下功能更加豐富,甚至可以自動生成代碼片段,直接補全答案。

下面看一下效果!

Sublime:

img


IDEA:

img


VS Code:

img


最后再補充一點,在知識方面,它覆蓋也非常全,Python、JavaScript、Go、C++、Linux、php,我們在開發(fā)中遇到的很多問題通過cht.sh都可以快速得到答案!

傳送門

建議大家有空可以多瀏覽Github,有很多好用的開源免費工具。但是,目前Github上項目多如牛毛,而且刷榜現(xiàn)在也非常嚴重,想要找到優(yōu)質(zhì)的項目變得越來越難。這里,給大家推薦Github上一個非常不錯的項目《DevWeekly》,這個項目每周都會精挑細選一些優(yōu)質(zhì)的開源項目,涵蓋C++、JAVA、JavaScript、Python、Go等不同編程語言。此外,還有一些開源工具、優(yōu)秀的技術文章:

https://github.com/Jackpopc/DevWeekly


33K Star!這才是程序員需要的神器。。。的評論 (共 條)

分享到微博請遵守國家法律
巴楚县| 聂荣县| 逊克县| 阿拉善盟| 通江县| 女性| 泰州市| 马山县| 丰顺县| 兴山县| 栾川县| 五河县| 商城县| 延寿县| 南通市| 原阳县| 漠河县| 石台县| 桐城市| 沙坪坝区| 达孜县| 开远市| 南木林县| 民乐县| 察隅县| 武山县| 通渭县| 阳原县| 孟村| 彝良县| 龙门县| 三原县| 噶尔县| 惠来县| 永定县| 泰来县| 肃宁县| 德江县| 吉安县| 秦皇岛市| 贡嘎县|