Sobes.tech
Junior — Middle

Kas on Protocol Buffers Go keeles?

sobes.tech AI

Vastus AI-lt

Protocol Buffers (protobuf) on platvormist sõltumatu, keele- ja platvormne struktureeritud andmete serialiseerimise mehhanism, mille on välja töötanud Google.

Go kontekstis kasutatakse protobufi andmete tõhusaks kodeerimiseks ja dekodeerimiseks, mis on kasulik sõnumite vahetamisel teenuste vahel, andmete salvestamisel jne.

Peamised punktid:

  • Andmeskeem on määratletud .proto failis.
  • Koodi generaatori (protoc) abil luuakse Go jaoks serialiseerimise/de-serialiseerimise struktuurid ja meetodid.
  • Saadud kood võimaldab andmetega Go-s hõlpsasti töötada, pakkudes kompaktset ja kiiret formaati.

Näide kasutamisest:

  1. Määratlege message.proto:
syntax = "proto3";

message Person {
  string name = 1;
  int32 id = 2;
}
  1. Generaatoriga luuakse Go kood:
protoc --go_out=. message.proto
  1. Kasutage Go-s:
p := &Person{Name: "Alice", Id: 123}
data, err := proto.Marshal(p) // serialiseerimine
// ...
var p2 Person
err = proto.Unmarshal(data, &p2) // deserialiseerimine

Nii võimaldab Protocol Buffers Go-s tõhusalt vahetada struktureeritud andmeid süsteemi komponentide vahel.