BT
x A sua opinião é importante! Por favor preencha a pesquisa do InfoQ sobre os seus hábitos de leitura!

C# dinâmico em Ação

por Jonathan Allen , traduzido por Felipe Rodrigues em 12 Nov 2008 |

Chamadas a Web Services REST-style tem uma vantagem significante sobre as chamadas baseada em SOAP pelo fato de não requer suporte de ferramentas. Isso as torna particularmente fácil de chamar a partir de linguagens como Ruby ou Phyton. Infelizmente, o mesmo não pode ser dito para C#, onde a falta de ferramental trabalha contra o desenvolvedor.

A razão para esta diferença é a tipagem dinâmica. Linguagens como Ruby e Phyton podem converter resultados JSON e XML direto ao modelo de objetos. E dessa forma ser acessado usando a sintaxe padrão para métodos e properties. Para linguagens como C#, esse tipo de mapeamento não é possível sem saber antecipadamente como os objetos são. Isso envolve um processo tedioso e passivo de erro para codificar as classes e a lógica de parser.

Com C# 4, tudo isso pode ser esquecido. Através da combinação com o projeto Nikhil Kothari's Dynamic Rest, desenvolvedores C# e VB podem utilizar a mesma sintaxe limpa que os programadores dinâmicos. Porém, há algumas limitações por se tratar de um early preview

Note que no CTP, não há nenhum suporte para indexadores utilizados nos tipos dinâmicos, que acaba usando u sintaxe normal de um array. Daí a solução acima usando Item(). No entanto, fui informado, que o suporte à indexação de tipos dinâmicos já existe em versões posteriores.

Em um outro post, Nikhil demonstra o uso de C# 4 para chamar os serviços da Amazon e Flickr.

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2014 C4Media Inc.
Política de privacidade
BT