Protocol Buffers não só irá ajudar a reduzir o tamanho da transferência, mas também melhorar o tempo que leva para codificar e enviá-lo também.
Desenvolvido pelo Google para ajudar a melhorar as transferências de dados, Protocol Buffers é ideal para todos os protocolos baseados em RPC e formatos de arquivos adjacentes.
Atualmente, a biblioteca é considerado o melhor no negócio, sendo ainda amplamente utilizado na produção em Google e muitos produtos de outras empresas.
O pacote inclui módulos para C ++, Java e aplicações Python.
Portos de terceiros do protocolo buffers foram criados por desenvolvedores de linguagens como ActionScript, C, C #, Clojure, Common Lisp, D, Dart, Erlang, Go, JavaScript, Lua, MATLAB, OCaml, Objective-C, PHP, Perl, R, Ruby, Scala, Visual Basic, e muitos outros mais
O que é novo nesta versão:.
- C ++:
- Corrigido o problema frendship para compiladores antigos para tornar a biblioteca agora gcc 3 compatível novamente.
- vcprojects Fixo / extract_includes.bat para extrair compilador / plugin.h.
- Java:
- usos Removido do JDK 1.6 apenas características para tornar a biblioteca agora JDK 1.5 compatível novamente.
- Corrigido um erro sobre valores enum negativos.
- serialVersionUID agora é definido em mensagens geradas para java serialização.
- PROTOC fixo para usar java.lang.Object, o que faz com que & quot; objeto & quot; agora um nome de mensagem válida novamente.
- Python:
- Experimental implementação C ++ agora exige C ++ biblioteca protobuf instalado.
- Veja o arquivo README.txt no diretório python para mais detalhes.
O que é novo na versão 2.3.0:
- C ++:
- Diversas otimizações de código de velocidade e tamanho.
- DynamicMessageFactory agora é totalmente thread-safe.
- método Mensagem :: Utf8DebugString () é como DebugString (), mas evita escapar bytes UTF-8.
- Compilado-in tipos de mensagens agora pode conter extensões dinâmicas, através da utilização de CodedInputStream :: SetExtensionRegistry ().
- Agora compila bibliotecas compartilhadas (DLLs) por padrão no Cygwin e MinGW, para coincidir com outras plataformas. Utilize --disable-share para evitar isso.
- Java:
- parseDelimitedFrom () e mergeDelimitedFrom () agora detectar EOF e retornar false / null em vez de lançar uma exceção.
- Corrigido alguns erros de inicialização ordenação.
- Correções para OpenJDK 7.
- Python:
- 10-25 vezes mais rápido do que 2.2.0, ainda puro-Python.
- Chamar um método de mutação em uma sub-mensagem sempre instancia a mensagem em seu pai, mesmo se o método mutante na verdade não se transformar qualquer coisa (por exemplo, a análise de uma cadeia vazia).
- descritores expandidas um pouco.
Comentários não encontrado