【发布时间】:2016-08-20 20:10:09
【问题描述】:
我想创建一个具有 main 函数并使用标志包指定参数的包。
此外,我希望能够将此包包含在其他包中,并使用与在 cli 上传递 args 类似的语法调用它的方法。可能是这样的
err := myPackage.setFlags(args ...string)
out, err := myPackage.exec()
我希望包含的包具有主要功能的一些原因是:
它使我能够将包分发为独立的可执行文件。我的用户可能不需要完整的系统
它可以使手动故障排除更容易
我应该将所有内容分开并使用 os\exec 吗?
我是否应该为每个包创建独立的包装器(也许可以生成这些包装器?)并直接从整个系统调用导出的函数而不做 setFlags 的事情?
我可以遵循一个好的设计模式来做到这一点吗?
还是我想出了一个反模式?
【问题讨论】:
标签: go