Whats new? | Login | Parceiros
Cadastre-se | Atendimento | RSS
+ .net:
artigos   |   vídeos   |    cursos   |    mais

  #Este é um post fechado

Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!



Artigo .net magazine 71 - Dynamic types

Este artigo descreve algumas das capacidades dinâmicas introduzidas na nova versão do framework .NET. Através de um exemplo prático, iremos explorar as mais novas funcionalidades do DLR (Dynamic Language Runtime) e entender como utilizá-las em aplicações reais.

Vinicius Quaiato
Trabalha com desenvolvimento de software há mais de 3 anos. Atualmente trabalha com desenvolvimento de aplicações SOA na Envision Tecnologia tendo atuado também como evangelista de TDD e boas práticas. Cursa o 5º semestre de análise de sistemas no In...


Ver space do autor


Estatísticas:
Visualizações:
891
Favoritado:
 0 vez(es)

Serviços:






Novidades – Boa Ideia - Expert
Dynamic types
Dinamismo no .NET 4


Do que trata o artigo
Este artigo descreve algumas das capacidades dinâmicas introduzidas na nova versão do framework .NET. Através de um exemplo prático, iremos explorar as mais novas funcionalidades do DLR (Dynamic Language Runtime) e entender como utilizá-las em aplicações reais.
Para que serve
Utilizando as novas capacidades dinâmicas do framework, é possível construir aplicações mais flexíveis, maleáveis e fáceis de adaptar e integrar. Os tipos dinâmicos se integram facilmente com as linguagens dinâmicas incorporadas ao framework, como Python e Ruby.
Em que situação o tema é útil
As funcionalidades dinâmicas podem ser úteis em ersos cenários, dentre eles podemos destacar a criação de web sites de forma rápida e simples, interoperabilidade entre aplicações e bibliotecas, utilização de metaprogramação, dentre outros. Existem ersas aplicações e usos para linguagens e funcionalidades dinâmicas.

Resumo do DevMan
As linguagens dinâmicas tiveram uma grande popularidade na década de 80. Eram bastante utilizadas para a criação de scripts. Pode-se dizer que elas perderam seu espaço na década de 90 para linguagens estaticamente tipadas. Com a grande procura por sistemas distribuídos e sendo executados na web, as linguagens dinâmicas voltaram a ter um grande foco. Suas implementações simples, facilidade de codificação e refatoração são alguns dos fatores positivos que levam ao seu sucesso. Neste artigo abordaremos algumas destas facilidades utilizando duas novas classes do .Net Framework 4.0: ExpandoObject e DynamicObject.

Na versão 4 do .NET framework, capacidades dinâmicas foram incluídas para fornecer flexibilidade às linguagens estaticamente tipadas, como o C# e o VB por exemplo, e também fornecer acesso aos recursos do framework para linguagens dinâmicas como Ruby e Python.
O responsável por tudo isso é uma parte do framework chamada DLR – Dynamic Language Runtime, que faz uma espécie de “meio de campo” entre as linguagens estaticamente tipadas e as linguagens e recursos dinâmicos do framework, como mostra a Figura 1.
 
Figura 1. Integração do Dynamic Language Runtime

O DLR nos possibilita criar objetos e classes dinâmicas no C# (como veremos adiante neste artigo) e também nos possibilita executar código escrito em linguagens como Python e o Ruby dentro do C# (ou VB).
A partir de agora exploraremos duas novas classes introduzidas no .NET 4.0, que são essenciais para trabalhar com esas capacidades: ExpandoObject e DynamicObject.
A classe ExpandoObject
ExpandoObject representa um objeto que pode ter propriedades e/ou métodos adicionados ou removidos em tempo de execução. O ExpandoObject nos permite criar objetos completamente dinâmicos, que terão seus membros avaliados somente durante a sua execução. Para demonstrar um pouco o funcionamento e utilidade desta classe, iremos criar como exemplo um simples mapeador para uma tabela do banco de dados. Este mapeador irá gerar um objeto do tipo ExpandoObject, onde suas propriedades serão as colunas de uma tabela do banco de dados lidas e geradas na execução do sistema.
Por que usar dynamic?
A utilização de dynamic não fornece suporte a IntelliSense, >">



ATENÇÃO! A EXIBIÇÃO DESTE ARTIGO FOI INTERROMPIDA.


  #Este é um post fechado

Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!







Participe! Inclua um comentário
[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar ;-)



 


[Fechar]
Este post está disponível para assinantes da .net Magazine DIGITAL ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 4,90 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ 1,96 (assinante) ou R$ 2,45 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ 1,03
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
DevMedia Group   www.devmedia.com.br   |   www.javafree.org   |   www.mrbool.com
2010 - Todos os Direitos Reservados a DevMedia Group - (21) 3382-5038