Junior — Middle
Máte praktické skúsenosti s používaním Protocol Buffers vo svojich projektoch?
sobes.tech AI
Odpoveď od AI
Protocol Buffers (protobuf) je efektívny binárny formát na serializáciu dát, ktorý vyvinula spoločnosť Google. V jazyku Go sa zvyčajne používajú oficiálne nástroje protoc a plugin protoc-gen-go na prácu s protobuf.
Praktická skúsenosť zvyčajne zahŕňa:
- Definovanie štruktúry dát v súbore
.proto. - Generovanie Go kódu pomocou
protoc. - Serializáciu a deserializáciu správ do binárneho formátu.
Príklad použitia:
import (
"log"
"github.com/golang/protobuf/proto"
)
// Predpokladajme, že typ Message bol vygenerovaný z proto
var msg = &Message{Field1: "test", Field2: 123}
// Serializácia
data, err := proto.Marshal(msg)
if err != nil {
log.Fatal("chyba pri marshalingu: ", err)
}
// Deserializácia
newMsg := &Message{}
err = proto.Unmarshal(data, newMsg)
if err != nil {
log.Fatal("chyba pri unmarshalingu: ", err)
}
Protocol Buffers sa široko používajú na výmenu dát medzi službami, ukladanie konfigurácií a v RPC systémoch.