LINUX.ORG.RU
ФорумTalks

Protocol Buffers


0

0

http://en.wikipedia.org/wiki/Protocol_Buffers http://code.google.com/apis/protocolbuffers/ http://code.google.com/p/protobuf/

Краткий обзор: http://code.google.com/apis/protocolbuffers/docs/overview.html

Туториал: http://code.google.com/apis/protocolbuffers/docs/tutorials.html

Обсудим? :)

Для Ъ: альтерантива XML с C-подобным синтаксисом. Есть реализация и генератор классов для C++, Java и Python. Всё это ОпенСорс и Фри софтваре. :) Но, понятное дело, не стандартизировано всё это пока.

В общем, мне это дело нравится.

Фигня. Такое можно на Common Lisp макрами реализовать.

anonymous
()

а нафига пост удалять? всё же правильно написал!

anonymous
()

Зумль конечно гробина еще та, может и выйдет у них чего...

anonymousI
()

Чего только не изобретут, лишь бы s-exprы не использовать.

И это замечательно :)

scabarocci
()
Ответ на: комментарий от Deleted

.proto (что-то вроде xsd):
====================
message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    required string number = 1;
    optional PhoneType type = 2 [default = HOME];
  }

  repeated PhoneNumber phone = 4;
}
====================

Использование и вывод на C++:
====================
Person person;
person.set_name("John Doe");
person.set_id(1234);
person.set_email("jdoe@example.com");
fstream output("myfile", ios::out | ios::binary);
person.SerializeToOstream(&output);
====================

Ввод:
====================
fstream input("myfile", ios::in | ios::binary);
Person person;
person.ParseFromIstream(&input);
cout << "Name: " << person.name() << endl;
cout << "E-mail: " << person.email() << endl;
====================

nanonymous
() автор топика

Вот ещё немного для Ъ:

Protocol buffers have many advantages over XML for serializing structured data. Protocol buffers:

* are simpler
* are 3 to 10 times smaller
* are 20 to 100 times faster
* are less ambiguous
* generate data access classes that are easier to use programmatically

nanonymous
() автор топика
Ответ на: комментарий от nanonymous

симпатично. вполне себе STLьно.

anonymous
()

Хм, сейчас прочитал, что ещё и для Перла готовят привязки.

nanonymous
() автор топика

пока не вижу смысла в использовании этого ... XML меня полностью устраивает.

phasma ★☆
()
Ответ на: комментарий от nanonymous

Да, на убийцу xml'а пока как-то не очень похоже. Ну что же, чем бы дитя ни тешилось...

Deleted
()

только что прочёл статью на компуленте http://soft.compulenta.ru/362383/
да впечатляет ибо о таком текстовом представлении я думал давно
XML mustdie

anonymous
()

Просветите пожалуста зачем оно нужно кроме сериализации? С сериализацией отлично справляется YAML.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.