Avatar ·

Go文件命名约定:snake_case还是其他?

你好!我最近开始学习Go,从Python转过来,文件命名问题让我有点困惑。在Python中,我习惯对模块和文件使用snake_case,但在Go中,根据标准库,使用的是带下划线的snake_case,我看到有些文件命名为`http.go`、`transport.go`、`server.go`。但我也在开源项目中遇到过`myHandler.go`、`MyService.go`甚至`user_repository.go`这样的文件。哪种才是正确的? 以下是我尝试组织代码的项目示例: ```go // 我的项目:简单的笔记REST API // 文件:main.go package main import "fmt" func main() { fmt.Println("Hello, Notes API!") } // 文件:handlers.go package main // 创建笔记的处理函数 func CreateNoteHandler() { // ... } // 文件:models.go package main type Note struct { ID int Text string } ``` 我不确定是否应该用大写字母命名文件(如`Handlers.go`)还是使用下划