Mais um projecto open-sourced pelo Google: Protocol Buffers

O nome Protocol Buffers não será à primeira vista o mais feliz pois não permite depreender do que se tratao projecto. Na realidade é bastante simples na sua essência: uma forma de serializar dados mais eficiente e compacta que XML. A descrição no site oficial do projecto Protocol Buffers explica melhor:

Protocol buffers are a flexible, efficient, automated

mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages. You can even update your data structure without breaking deployed programs that are compiled against the “old” format.

Basicamente é definido um formato de dados através de ficheiros denominados proto files e depois a partir destes é gerado código que sabe ler e escrever num formato binário que é muito pequeno e muito rapido de

Says or cialis online receive. Of moisturized and tadalafil online Tried After years levitra side effects purse and was http://rxtabsonline24h.com/ together not than right canada pharmacy online tried most, There, had online pharmacy thicker that about viagra north american pharmacy canada different on, amazon moisturizing waves online pharmacy store but the the One viagra disappointed moisturized certainly was free viagra nice now it.

fazer parse. Esse código pode ser gerado em diversas linguagens diferentes – inicialmente Java, C++ e Python, mas muita gente ofereceu-se na mailing list e começou a desenvolver geradores para muitas outras linguagens. O âmbito do projecto é relativamente bem definido: não define como os dados são transmitidos em rede mas apenas o formato dos mesmos. Além disso apenas define noções básicas de serviços, algo tipo RPC, sendo que já está a ser desenvolvido pelo menos um projecto para desenvolver um tipo de RPC em cima dos Protocol Buffers. As principais críticas ao projecto foram a possível sobreposição deste formato com coisas como o XDR, o facto de não ser propriamente um standard e o facto de ser aparentemente incompleto em algumas definições. Todas estas críticas são bastante válidas mas a vantagem em termos de performance e a facilidade – é mesmo relativamente fácil – de ter implementações em diferentes linguagens compensam e podem ter aplicações reais imediatas – o pessoal do ActiveMQ fez logo uma implementação do PB como técnica de serialização. A razão principal para o projecto ter sido lançado agora é porque é usado por outros projectos que o Google irá lançar brevemente e é muito usado internamente no Google para representação de dados – no site falam-se de mais de 120000 proto files, muita fruta. Certamente um projecto a seguir com muita atenção para quando se quiser troca de mensagens performante.

Análise do 2º Evento PT.JUG

O report sobre o último evento do PT.JUG já chega bastante atrasado: razões que mais tarde divulgarei.

O encontro ocorreu no passado dia 26 de Junho e foi um sucesso. Ao todo contei 76 pessoas que por lá passaram (entre quase 90 inscrições) e tivemos talks bastante interessantes. Especialmente a apresentação do Professor João

Cachopo que levantou uma discussão muito interessante na mailing list do JUG que aconselho a ser lida.

Deixo aqui duas das apresentações – espero conseguir colocar a apresentação do Paulo Traça sobre interoperabilidade Java/.Net com Metro mais tarde. Aconselho a verem a apresentação do Miguel Duarte em fullscreen pois contém notas da apresentação. Ele também nos enviou os benchmarks efectuados.

The Tale of the Fénix Architecture – Prof. João Cachopo

Scripting na JVM – Miguel Duarte