Google опубликовала язык описания данных Protocol Buffers
В понедельник Google представила Protocol Buffers, язык описания данных с открытым исходным кодом, который компания разработала для внутреннего применения. Он напоминает XML, только проще, компактнее и быстрее.
«С его помощью мы кодируем почти любую структурированную информацию, которую нужно передавать по сети или хранить на диске, — пишет в блоге менеджер Google по программам open-source Крис Ди-Бона (Chris DiBona). — Мы подумали, что Protocol Buffers может оказаться полезным и для других, поэтому решили опубликовать его как проект open-source».
Инженер-программист Google Кентон Варда (Kenton Varda) поясняет, что Google использует тысячи разных форматов данных, большинство из которых структурированы. Кодировать эти форматы в больших объемах при помощи XML слишком накладно, поэтому Google разработала Protocol Buffers. Варда сравнивает этот язык с Interface Description Language (IDL), но без присущей ему сложности. «Одной из главных целей при разработке Protocol Buffers была простота, — пишет он. — Придерживаясь простой модели списков и записей, которая решает большинство задач, и подавляя в себе желание гнаться за журавлем в небе, мы создали мощный и в то же время не перегруженный язык. И работает он очень быстро — как минимум, на порядок быстрее, чем XML».
В документации Google утверждается, что Protocol Buffers в 3-10 раз компактнее сопоставимых файлов XML и может анализироваться в 20-100 раз быстрее. Однако XML остается лучшим вариантом для таких файлов, как текстовые документы. XML предназначен для чтения и редактирования человеком. Для понимания Protocol Buffer требуется определение файла служебных сообщений .proto.
В бесплатной загрузке, которую предлагает Google, содержится полный исходный код компиляторов protocol buffer для Java, Python и C++. В вопросах и ответах по Protocol Buffers говорится, что Google планирует выпустить по лицензии open-source многие другие свои онлайновые проекты. Но так как для этих проектов требуется Protocol Buffers, компания решила начать с него.
Редакция мировых новостей ИТ