开发命令行工具的 12 个最佳实践
简评:设计良好的命令行应用是极富生产力的工具,本文介绍了开发命令行工具的 12 个最佳实践
CLI 是构建产品的绝佳方式,与 Web 应用不同的是它需要的时间更少,并且功能更强大。使用Web,你可以执行开发人员编写的任何操作,使用 CLI,你可以轻松地将多个工具混合在一起以执行更加高级的任务,而这需要更多的专业知识才能使用,但仍然适用于管理任务、高级用户任务或开发人员产品。
在 Heroku,我们提出了一种称为 「12-factor app」 的方法,这是一套旨在制作易于维护的优秀 Web 应用程序的原则。我们还构建了一个名为 oclif 的 CLI 框架,旨在遵循这些原则使用Node 构建出色的 CLI 应用。
本着这种精神,在构建下一个 CLI 时,请记住以下 12 个因素:
- 良好的帮助命令是必不可少的(Great help is essential)
- 倾向于使用选系代替参数 (Prefer flags to args)
- 明确当前的版本(一般是 --version/-V)(What version am I on?)
- 关注流处理(输入输出流和重定向)(Mind the streams)
- 处理错误(Handle things going wrong)
- 颜控(Be fancy!)
- 尽量提示(Prompt if you can)
- 使用表格(Use tables)
- 唯快不破(Be speedy)
- 鼓励开源贡献代码(Encourage contributions)
- 清晰的子命令(Be clear about subcommands)
- 遵循 XDG 规范(Follow XDG-spec)
极光,最专业的消息推送服务平台