開發(fā)命令行工具的 12 個最佳實踐

簡評:設(shè)計良好的命令行應(yīng)用是極富生產(chǎn)力的工具副编,本文介紹了開發(fā)命令行工具的 12 個最佳實踐

CLI 是構(gòu)建產(chǎn)品的絕佳方式负甸,與 Web 應(yīng)用不同的是它需要的時間更少,并且功能更強大。使用Web呻待,你可以執(zhí)行開發(fā)人員編寫的任何操作打月,使用 CLI,你可以輕松地將多個工具混合在一起以執(zhí)行更加高級的任務(wù)蚕捉,而這需要更多的專業(yè)知識才能使用奏篙,但仍然適用于管理任務(wù)、高級用戶任務(wù)或開發(fā)人員產(chǎn)品迫淹。

在 Heroku秘通,我們提出了一種稱為 「12-factor app」 的方法,這是一套旨在制作易于維護的優(yōu)秀 Web 應(yīng)用程序的原則敛熬。我們還構(gòu)建了一個名為 oclif 的 CLI 框架肺稀,旨在遵循這些原則使用Node 構(gòu)建出色的 CLI 應(yīng)用。

本著這種精神应民,在構(gòu)建下一個 CLI 時话原,請記住以下 12 個因素:

  1. 良好的幫助命令是必不可少的(Great help is essential)
  2. 傾向于使用選系代替參數(shù) (Prefer flags to args)
  3. 明確當(dāng)前的版本(一般是 --version/-V)(What version am I on?)
  4. 關(guān)注流處理(輸入輸出流和重定向)(Mind the streams)
  5. 處理錯誤(Handle things going wrong)
  6. 顏控(Be fancy!)
  7. 盡量提示(Prompt if you can)
  8. 使用表格(Use tables)
  9. 唯快不破(Be speedy)
  10. 鼓勵開源貢獻代碼(Encourage contributions)
  11. 清晰的子命令(Be clear about subcommands)
  12. 遵循 XDG 規(guī)范(Follow XDG-spec)

原文鏈接:12 Factor CLI Apps
推薦閱讀:Level UP! 提升你的編程技能

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市瑞妇,隨后出現(xiàn)的幾起案子稿静,更是在濱河造成了極大的恐慌,老刑警劉巖辕狰,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異控漠,居然都是意外死亡蔓倍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門盐捷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來偶翅,“玉大人,你說我怎么就攤上這事碉渡【鬯” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵滞诺,是天一觀的道長形导。 經(jīng)常有香客問我婿牍,道長暂衡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任存璃,我火速辦了婚禮淋叶,結(jié)果婚禮上阎曹,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好处嫌,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布栅贴。 她就那樣靜靜地躺著,像睡著了一般熏迹。 火紅的嫁衣襯著肌膚如雪筹误。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天癣缅,我揣著相機與錄音厨剪,去河邊找鬼。 笑死友存,一個胖子當(dāng)著我的面吹牛祷膳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播屡立,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼直晨,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了膨俐?” 一聲冷哼從身側(cè)響起勇皇,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎焚刺,沒想到半個月后敛摘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡乳愉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年兄淫,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蔓姚。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡捕虽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出坡脐,到底是詐尸還是另有隱情泄私,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布备闲,位于F島的核電站晌端,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏浅役。R本人自食惡果不足惜斩松,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望觉既。 院中可真熱鬧惧盹,春花似錦乳幸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嫡霞,卻和暖如春瓶埋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背诊沪。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工养筒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人端姚。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓晕粪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親渐裸。 傳聞我的和親對象是個殘疾皇子巫湘,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)昏鹃,斷路器尚氛,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,808評論 6 342
  • 每當(dāng)我一人坐在凳子上,我總在想會不會發(fā)生些什么超自然的事洞渤,讓我改變我的生活阅嘶。比如開始會飛,我就去大西藏先飛個來回您宪,...
    百里Barry閱讀 312評論 0 1
  • 早上一覺醒來就7:20了奈懒,還好老公早就起床,并且做好了早餐宪巨,我把飯都盛好了,這時孩子們也都起床了溜畅,早晨的陽光...
    王皓怡媽媽閱讀 235評論 0 0
  • 小小章魚1996閱讀 169評論 0 1