Протокольные буферы — это независимый от языка и платформы расширяемый механизм для «сериализации структурированных данных»

Мобильные приложения, микросервисы и другое программное обеспечение почти используют XML или JSON для передачи данных. Сегодня у нас новый плеер от Google с обещанием: Уменьшить размер сообщения и увеличить скорость в 10 и более раз. Меньше, быстрее и проще.

Буферы протоколов поддерживают различные языки, такие как Python, Objective-C, Java и C++, Ruby, Dart, Go и C#.

Чтобы использовать буферы протокола, вам необходимо определить структуру сообщения с парами имя-значение в файле .proto и запустить компилятор для создания классов-заглушек.

Вы можете без проблем добавлять новые поля и сохранять совместимость.

Если вам интересна эта тема, вот несколько ссылок:

  • Руководство по стилю для .proto файлов: здесь.
  • Языковой гид proto2: здесь.
  • Языковой справочник proto3: здесь.
  • Формат бинарного провода Кодировка: здесь.
  • Часто используемые шаблоны проектирования: здесь.
  • Учебники для разных языков: здесь.
  • Ссылка на API: здесь.

Источник: https://developers.google.com/protocol-buffers/