Re: [討論] 記錄 code snippet 的好用工具
看板Soft_Job作者alan23273850 (God of Computer Science)時間7年前 (2018/08/26 19:12)推噓4(4推 0噓 12→)留言16則, 6人參與討論串3/3 (看更多)
※ 引述《alan23273850 (God of Computer Science)》之銘言:
: 標題: [討論] 記錄 code snippet 的好用工具
: 時間: Sat Apr 28 14:54:19 2018
:
: 各位板友午安,本魯軟體板首次發文請小力鞭
: 是說最近常和同學討論到整理 code snippet 的重要,也就是功能導向的筆記
: 舉例來說,要測量程式執行的時間,
: 以 C 語言來說,可以是:
: clock_t start = clock();
: ... // code execution
: clock_t end = clock();
: printf("%f\n", (float)(end - start) / CLOCKS_PER_SEC);
: 但如果是以 python 而言,則是:
: import datetime
: before = datetime.datetime.now()
: ... // code execution
: after = datetime.datetime.now()
: print after - before
: 那麼各位工程師不覺得針對不同的功能,把所有語言的 code 整理在一起,
: 未來撰寫程式在翻閱或查閱的時候就更方便,不需要再敲 Google 關鍵字了呢?
: 台大資訊系劉邦鋒教授也有寫過 "由片語學習 C 程式設計" 一書,
: 雖然我沒讀過,不過我猜應該就類似書中那種以功能為導向整理過的感覺。
: 有沒有什麼好用的工具或方法能有條不紊地整理這些 code 呢?
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.168.84.181
: ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1524898463.A.BF0.html
: → x000032001: GitHub https://github.com/cirosantilli/cpp-cheat 04/28 15:34
: 推 Jasonzheng: 開發我用 SnippetsLab 04/28 16:53
: → Jasonzheng: 筆記我用 Quiver 04/28 16:53
: 推 Jasonzheng: 管理 Gist 我用 Lepton 04/28 16:57
: 推 pptsodog: Dash 04/28 18:07
: 推 fayhong: 這不是 http://rosettacode.org/wiki/Rosetta_Code 的目 04/28 18:12
: → fayhong: 的嗎? 04/28 18:12
: → alan23273850: 太感謝樓上幾位大大,我暑假有空會好好品嘗品嘗的 04/28 19:41
: 推 CRPKT: 我覺得當它們數量成長到一定程度之後就會變得難以分類了 04/28 21:52
: → CRPKT: 然後難以分類的情況下最好的方法就會變成關鍵字搜尋 XD 04/28 21:53
: → alan23273850: 這也是一個方法阿,例如我敲date就會跑出上面的code 04/28 22:52
: 推 t64141: cacher+gist不錯用 04/28 23:36
: 推 Piceman: 我推 Bear 04/29 17:09
: 推 andy80764: Dash 04/30 01:14
: 推 aszx4510: Lepton 好用 04/30 03:42
: → alan23273850: 後來發現這裡有各種統整:https://goo.gl/2VvZLk 08/26 00:43
各位板友好,我是原 PO,前幾個月有向各位詢問到有沒有整理 code 的好用工具,
感謝各位版上好手提供多方建議,我想在這邊記錄一下每種工具的特性,順便問個問題。
先給個某網站的大略統計結果 https://goo.gl/2VvZLk 有個感覺 (雖然有些不太可信),
經大量 survey 之後發現這種工具可以先概略分為 公用code 與 私人code 兩種,
公用 code 就是別人已經整理好的,我們只能拿來用,可以透過其他方式貢獻,只不過就
不能維護自己私有的片段,板友提供的有:
(a) http://rosettacode.org/wiki/Rosetta_Code:提供將近 1100 多種的程式片段,
大部分是數學、演算法,但不限於此,其他功能像 GUI 或 IO 等雜項也很齊全。更重要
的是可以自己添加不同程式語言的例子或新增其他的 task,像工具書一樣。
(b) https://github.com/cirosantilli/java-cheat:接下來是 cirosantilli 的大抄,
這邊以 java 為例,點進去可以看到裡面很多例子,不過跟 Rosetta 相比仍遠遠不足,
只能像是個人的少量備忘錄,我個人比較推 Rosetta。
(c) https://kapeli.com/dash:Dash 的話我看官網截圖傾向是各種語言的 API,介面看
起來蠻動人的,不過因為限 macOS,所以我沒試過,要在 Windows 上跑的話有 Velocity
(要錢) 與 Zeal (免費),https://goo.gl/SEnJke 這裡有網站介紹可以看看,而我試用
Zeal 的感想是還不錯,有安裝版跟可攜版,剛開始都沒有文件,需要針對不同語言一個
一個安裝,因為文件都是從 Dash 來的,我猜效果就跟它差不多,除此之外還有跟編輯器
整合的 plugin ( 解說 https://zealdocs.org/usage.html ),功德圓滿。
而 私人 code 則僅是把自己寫的 code 整理起來,通常會備份在 gist 上,並且在本地
端提供良好介面供查詢取用,板友提供的有:Cacher、Lepton、SnippetsLab、Bear 四種,
因為 SnippetsLab 只有 macOS,Bear 不是專門給程式碼用的,這邊主要就只比較 Cacher
https://www.cacher.io/ 與 Lepton https://hackjutsu.com/Lepton/ 兩種。
優點:都會自動附上程式語言的 tag,都可以自己加上其他 tag (label),都會自動拿
gist 當作 backend database,Cacher 有黑底背景主題,Cacher 有多人協作功能,
Cacher 可與編輯器 (如 vscode) 整合,Lepton 完全免費。
缺點:從 label 篩選 code 的時候一次都只能挑一個 (也就是不能 tag 與 language 同時
篩),都無法選擇本地端當作 code database,Lepton 不能選背景 (白色),Lepton
也不能多人協作,Cacher 則是部分免費 (免費版本 private gist 有所限制),
Lepton 無與編輯器整合。
(2018/08/27)
經板友提醒,我這邊再補一下 Boostnote (https://boostnote.io/ ) 的優缺點:
優點:可以自己標 label,code 可以放本地端,有黑底背景主題,可多重 tag 找尋,
而且也完全免費。
缺點:無程式語言 tag,無自動雲端備份 (只能利用雲端硬碟備份機制),無多人協作,
無編輯器整合。
原本決定是採用 Cacher,感覺比 Lepton 還好一些,只差在背景主題,不過經板友提點
感覺 Boostnote 又更優了。
以上大概就是我的備忘,另外我也蠻好奇有沒有完全只有我提到以上優點而非缺點的
manager,有知道的大大可以告訴我ㄇ,穴穴~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.218.113
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1535281969.A.4B5.html
推
08/27 04:23,
7年前
, 1F
08/27 04:23, 1F
→
08/27 04:23,
7年前
, 2F
08/27 04:23, 2F
推
08/27 09:37,
7年前
, 3F
08/27 09:37, 3F
→
08/27 10:16,
7年前
, 4F
08/27 10:16, 4F
→
08/27 10:17,
7年前
, 5F
08/27 10:17, 5F
→
08/27 16:30,
7年前
, 6F
08/27 16:30, 6F
→
08/27 16:30,
7年前
, 7F
08/27 16:30, 7F
→
08/27 16:30,
7年前
, 8F
08/27 16:30, 8F
推
08/27 16:33,
7年前
, 9F
08/27 16:33, 9F
→
08/27 16:53,
7年前
, 10F
08/27 16:53, 10F
→
08/27 16:53,
7年前
, 11F
08/27 16:53, 11F
→
08/27 16:53,
7年前
, 12F
08/27 16:53, 12F
→
08/27 16:56,
7年前
, 13F
08/27 16:56, 13F
→
08/27 16:57,
7年前
, 14F
08/27 16:57, 14F
※ 編輯: alan23273850 (140.112.77.212), 08/27/2018 17:33:07
※ 編輯: alan23273850 (140.112.77.212), 08/27/2018 17:45:05
→
08/27 17:55,
7年前
, 15F
08/27 17:55, 15F
推
08/27 17:58,
7年前
, 16F
08/27 17:58, 16F
※ 編輯: alan23273850 (140.112.218.113), 08/29/2018 20:48:13
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):