json.Unmarshal vs json.NewDecoder.Decode: o que escolher para parsing de JSON em Go?
Olá a todos! Acabei de começar a estudar Go e me deparei com o problema de escolher entre `json.Unmarshal` e `json.NewDecoder.Decode` para fazer parsing de JSON. Ambos os métodos fazem a mesma coisa — decodificar JSON em uma estrutura, mas na documentação diz que existem nuances.\n\nAqui está um exemplo que escrevi:\n\n```go\npackage main\n\nimport (\n "encoding/json"\n "fmt"\n "strings"\n)\n\ntype User struct {\n Name string `json:"name"`\n Age int `json:"age"`\n}\n\nfunc main() {\n jsonStr := `{"name": "Alice", "age": 30}`\n\n // Opção 1\n var user1 User\n err := json.Unmarshal([]byte(jsonStr), &user1)\n if err != nil {\n fmt.Println("Unmarshal error:", err)\n }\n fmt.Println(user1)\n\n // Opção 2\n var user2 User\n decoder := json.NewDecoder(strings.NewReader(jsonS