Junior — Middle
Tem experiência prática na utilização de Protocol Buffers nos seus projetos?
sobes.tech IA
Resposta da IA
Protocol Buffers (protobuf) é um formato binário eficiente para serialização de dados, desenvolvido pelo Google. Em Go, normalmente usam-se as ferramentas oficiais protoc e o plugin protoc-gen-go para trabalhar com protobuf.
A experiência prática geralmente inclui:
- Definir a estrutura de dados num arquivo
.proto. - Gerar código Go usando
protoc. - Serializar e deserializar mensagens em formato binário.
Exemplo de uso:
import (
"log"
"github.com/golang/protobuf/proto"
)
// Suponha que o tipo Message foi gerado a partir de proto
var msg = &Message{Field1: "test", Field2: 123}
// Serialização
data, err := proto.Marshal(msg)
if err != nil {
log.Fatal("erro ao serializar: ", err)
}
// Desserialização
newMsg := &Message{}
err = proto.Unmarshal(data, newMsg)
if err != nil {
log.Fatal("erro ao desserializar: ", err)
}
Protocol Buffers são amplamente utilizados para troca de dados entre serviços, armazenamento de configurações e em sistemas RPC.