Есть ли опыт использования протокольных буферов?

StackOverflow https://stackoverflow.com/questions/1734

Вопрос

Я просто просматривал информацию о Google буферы протокола формат обмена данными.Кто-нибудь экспериментировал с кодом или даже создавал на его основе проект?

В настоящее время я использую XML в проекте Python для структурированного контента, созданного вручную в текстовом редакторе, и мне было интересно, каково общее мнение о протокольных буферах как формате ввода, ориентированном на пользователя.Преимущества скорости и краткости определенно присутствуют, но когда дело доходит до фактического создания и обработки данных, существует очень много факторов.

Это было полезно?

Решение

Если вы ищете взаимодействие с пользователем, придерживайтесь XML.В настоящее время у него больше поддержки, понимания и всеобщего признания.Если это внутреннее, я бы сказал, что буферы протоколов — отличная идея.

Возможно, через несколько лет, когда появится больше инструментов для поддержки буферов протоколов, мы начнем искать общедоступный API.До тех пор... JSON?

Другие советы

Буферы протоколов предназначены для оптимизации связи между машинами.Они действительно не предназначены для человеческого взаимодействия.Кроме того, формат является двоичным, поэтому в этом случае он не может заменить XML.

Я бы также рекомендовал JSON как самый компактный текстовый формат.

Судя по вашему краткому описанию, похоже, что буферы протоколов не подходят.Фраза «структурированный контент, созданный вручную в текстовом редакторе», в значительной степени указывает на XML.

Но если вам нужна эффективная связь с низкой задержкой со структурами данных, которые не используются за пределами вашей организации, двоичная сериализация, такая как буферы протоколов, может предложить огромный выигрыш.

Еще одним недостатком двоичного формата, такого как PB, является то, что если есть хоть один бит ошибки, весь файл данных не поддается синтаксическому анализу, но с помощью JSON или XML, в крайнем случае, вы все равно можете вручную исправить ошибку, поскольку он удобен для чтения человеком и имеет встроенное резервирование..

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top