A equipe do Google App Engine anunciou o ProtoRPC, uma nova ferramenta para a criação de web services em Python. O ProtoRPC tem como objetivo simplificar o desenvolvimento de componentes que são utilizados na integração entre as camada cliente e servidor de uma aplicação web, de maneira que o desenvolvedor não se preocupe com a transformação dos dados trafegados entre essas camadas.
O Google ProtoRPC possibilita que componentes implementados em Python sejam acionados pela web como um serviço RPC (Remote Procedure Call). O ProtoRPC é composto por dois tipos de componentes: uma coleção de bibliotecas, para descrever as mensagens e serviços disponíveis para a troca de dados através da web; e um conjunto de bibliotecas para fazer RPC via HTTP em vários formatos, como: JSON, formulários com URL-encoding e Protocol Buffers.
Atualmente, boa parte dos aplicativos web precisam enviar e receber dados de diferentes componentes ou aplicações, aumentando a complexidade do desenvolvimento. Com o tempo, a demanda por novas funcionalidades e a necessidade de compartilhar dados entre componentes de uma aplicação tornaram ess trabalho mais difícil de administrar. Conforme a equipe do App Engine, o ProtoRPC foi construído para ajudar nessas situações. Usando o ProtoRPC, o desenvolvedor não precisa aprender como escrever uma IDL (Interface Description Language) para expor um componente Python como um serviço RPC, pois a geração dos stubs do web service é feita automaticamente para a camada cliente.
Ainda em fase experimental, o ProtoRPC faz parte da SDK Python para desenvolvimento de aplicativos no App Engine, e muito provavelmente estará disponível na SDK Java também. No anúncio, a equipe do App Engine escreveu um Hello World demonstrando como utilizar o ProtoRPC. Mais detalhes podem ser encontrados nesse guia disponibilizado pelos criadores da tecnologia. O download do projeto pode ser feito aqui.