Avatar ·

Namenskonventionen für Konstanten in Go: CamelCase, ALL_CAPS oder etwas anderes?

Hallo zusammen! Ich habe gerade angefangen, Go nach Python und C# zu lernen, und die Namenskonventionen für Konstanten verwirren mich etwas. In Python verwenden wir normalerweise `ALL_CAPS` für Konstanten: `MAX_CONNECTIONS = 100`. In C# ist `PascalCase` üblich. In Go sehe ich jedoch unterschiedlichen Code in verschiedenen Projekten. Zum Beispiel bin ich in der Go-Standardbibliothek auf folgende Beispiele gestoßen: ```go // Im http-Paket const ( MethodGet = "GET" MethodPost = "POST" ) // Im os-Paket const ( O_RDONLY = 0x0 O_WRONLY = 0x1 ) ``` Das erste Beispiel verwendet CamelCase (`MethodGet`), das zweite snake_case mit Großbuchstaben (`O_RDONLY`). Als ich einen Kollegen fragte, sagte er, dass man in Go `CamelCase` für exportierte Konstanten und `lowerCamelCase` für nicht exportierte verwenden sollte. Aber warum wird dann in `os` `O_RDONLY` verwendet? Das ist doch eine exportierte Konstante! Ich habe meinen Code so geschrieben: ```go package config const MAX_RETRIES = 3 const DEFAULT_TIMEOUT_SECONDS = 30 const DATABASE_URL = "local