Обмен данными типа XML-RPC, SOAP, JSON, но более...

Обмен данными типа XML-RPC, SOAP, JSON, но более...

Цитирую:
"1. Кросс-платформенность. Мы определяем нашу модель данных и операций сервиса, используя в Thrift язык я зык описания интерфейса (Interface Definition Language), и после компиляции получаем на выходе заготовки клиентского и серверного кода для дюжины разных языков.
2. Компактность передачи данных. Если в описании структуры указать, что есть бианарное поле, и положить туда 1 мегабайт данных, то в результате по каналам связи будет передан ровно этот 1 мегабайт.
3. Прямая/обратная совместимость. Вот где Thrift действительно бесподобен. При определенной аккуратности и понимании того, как работает Thrift (что не всегда дается сразу, разумеется), вы можете добавлять структуры, поля, служебные методы и параметры функций без нарушений в существующих клиентах. Клиенты для Windows или Mac, которые мы выпустили 3 года назад, и сегодня могут синхронизироваться с Evernote.
4. Привязки к языкам программирования (bindings). См. пункт 1. В самом начале в Thrift не было никакой поддержки Objective-C Cocoa, так что Andrew McGeachie (наш “человек-команда” по разработке Mac-клиента) добавил эту поддержку в компилятор Thrift.
5. Базирование на стандартах и/или открытые исходники. Facebook передал разработку Thrift под управление Apache Software Foundation, что очень щедро с их стороны.
6. Компактность. Исполняемые библиотеки Thrift и сгенерированный код получались весьма небольшими и понятными. Их можно было легко прочитать и точно понять, что они делают (с тех пор, правда, он немного обросли всяким дополнительным кодом, но и на сегодня, по нашему ощущению, это все еще это самый компактный вариант по сравнению с альтернативами)."

Речь идет о Apache Thrift
http://habrahabr.ru/company/evernote/blog/120895/

Компьютерные вопросы: 
2002-2012 ©