Avatar ·

Wie man richtig mit Konfiguration in Go arbeitet: ENV, JSON, YAML oder Flags?

Hallo zusammen! Ich bin ein Anfänger in der Go-Entwicklung und schreibe meinen ersten Microservice zur Auftragsverarbeitung. Ich bin auf ein Problem gestoßen: Ich verstehe nicht, wie man die Speicherung von Konfigurationsparametern (Server-Port, Datenbank-Verbindungsstring, externe API-URL, Timeouts usw.) richtig organisiert. Im Moment habe ich einfach alles in main.go hartcodiert: ```go package main import ( "fmt" "net/http" ) func main() { port := ":8080" dbConn := "postgres://user:pass@localhost:5432/orders?sslmode=disable" apiURL := "https://api.example.com" fmt.Println("Starting server on", port) http.ListenAndServe(port, nil) } ``` Ich verstehe, dass das schrecklich ist: Bei einem Umgebungswechsel (dev/staging/prod) muss die Binärdatei neu kompiliert werden, und Passwörter im Code sind eine absolute Sicherheitskatastrophe. Ich habe gesehen, dass