Avatar ·

如何正确组织Go多文件项目的结构?

大家好!我最近开始学习Go,在组织由多个文件组成的项目时遇到了问题。 我写了一个简单的控制台任务管理应用(todo list)。所有代码都放在一个main.go文件中:包括输入处理、逻辑和文件操作。当项目增长到500行时,导航变得非常不方便。 我尝试将代码拆分成多个文件,但没有成功。例如,我创建了一个`tasks`文件夹,在里面放了一个`tasks.go`文件,包含处理任务的函数,然后在`main.go`中尝试调用它们。但编译器报错说函数未定义。 以下是我的代码示例: ```go // main.go package main func main() { task := CreateTask("买牛奶") // 错误:undefined: CreateTask fmt.Println(task) } ``` ```go // tasks/tasks.go package tasks type Task struct { Title string } func CreateTask(title string) Task { return Task{Title: title} } ``` 我没有