Junior — Middle
Máte praktické zkušenosti s používáním Protocol Buffers ve svých projektech?
sobes.tech AI
Odpověď od AI
Protocol Buffers (protobuf) je efektivní binární formát pro serializaci dat, který vyvinula společnost Google. V jazyce Go se obvykle používají oficiální nástroje protoc a plugin protoc-gen-go pro práci s protobuf.
Praktická zkušenost obvykle zahrnuje:
- Definování struktury dat v souboru
.proto. - Generování Go kódu pomocí
protoc. - Serializaci a deserializaci zpráv do binárního formátu.
Příklad použití:
import (
"log"
"github.com/golang/protobuf/proto"
)
// Předpokládejme, že typ Message byl vygenerován z proto
var msg = &Message{Field1: "test", Field2: 123}
// Serializace
data, err := proto.Marshal(msg)
if err != nil {
log.Fatal("chyba při marshalingu: ", err)
}
// Deserializace
newMsg := &Message{}
err = proto.Unmarshal(data, newMsg)
if err != nil {
log.Fatal("chyba při unmarshalingu: ", err)
}
Protocol Buffers se široce používají pro výměnu dat mezi službami, ukládání konfigurací a v RPC systémech.