Junior — Middle
Czy masz praktyczne doświadczenie w korzystaniu z Protocol Buffers w swoich projektach?
sobes.tech AI
Odpowiedź od AI
Protocol Buffers (protobuf) to wydajny binarny format serializacji danych, opracowany przez Google. W Go zazwyczaj używa się oficjalnych narzędzi protoc i wtyczki protoc-gen-go do pracy z protobuf.
Doświadczenie praktyczne zwykle obejmuje:
- Definiowanie struktury danych w pliku
.proto. - Generowanie kodu Go za pomocą
protoc. - Serializację i deserializację wiadomości w formacie binarnym.
Przykład użycia:
import (
"log"
"github.com/golang/protobuf/proto"
)
// Załóżmy, że typ Message został wygenerowany z proto
var msg = &Message{Field1: "test", Field2: 123}
// Serializacja
data, err := proto.Marshal(msg)
if err != nil {
log.Fatal("błąd podczas marshalingu: ", err)
}
// Deserializacja
newMsg := &Message{}
err = proto.Unmarshal(data, newMsg)
if err != nil {
log.Fatal("błąd podczas unmarshalingu: ", err)
}
Protocol Buffers są szeroko stosowane do wymiany danych między usługami, przechowywania konfiguracji i w systemach RPC.