相关疑难解决方法(0)

如何构建Go应用程序以生成多个二进制文件?

我正在创建三个非常相似的应用程序,但每个应用程序将应用不同的逻辑.我不知道如何最好地构建它以避免重复代码.

所有应用程序都有以下共同点: - 读取和解析配置 - 设置SQL数据库连接 - 收集统计信息 - 从STDIN读取

每个应用程序将对从STDIN读取的数据应用不同的逻辑.

这会被认为是可接受的吗?将所有常用代码放在main.go中,然后构建为"go build -o bin/app1 main.go app1.go"等等 - 只为每个二进制文件提供特定于应用程序的逻辑来构建?

main.go:

func main() {
    // db connection
    // stats worker
    // read from stdin

    proccessLine(line)
}
Run Code Online (Sandbox Code Playgroud)

app1.go:

func processLine(line string) {
    // logic for app 1
}
Run Code Online (Sandbox Code Playgroud)

app2.go:

func processLine(line string) {
    // logic for app 2
}
Run Code Online (Sandbox Code Playgroud)

等等

go

8
推荐指数
2
解决办法
2169
查看次数

标签 统计

go ×1