O que é Digitação Dinâmica
A tipagem dinâmica permite atribuir diferentes tipos de valores à mesma variável durante o tempo de execução. Ao contrário da tipagem estática, em que o tipo de variável é determinado em tempo de compilação e permanece fixo, a tipagem dinâmica oferece flexibilidade ao determinar o tipo em tempo de execução com base no valor atribuído. Ele elimina a verificação de tipo em tempo de compilação, adiando-a para o tempo de execução.
Na tipagem dinâmica, a verificação de tipo não é executada pelo compilador durante a compilação. Em vez disso, o tipo da variável é determinado em tempo de execução com base no valor atribuído. Isso permite vinculação tardia, onde chamadas de método e acesso de membro são resolvidos dinamicamente com base no tipo real do objeto.
Como usar o tipo dinâmico em C #
Para usar o tipo dinâmico em C#, basta declarar uma variável usando a palavra-chave dynamic. Por exemplo:
minha variável dinâmica = 'Olá Mundo!' ;
Neste exemplo, myVariable é declarada como uma variável dinâmica e recebe o valor “Hello, World!”. No tempo de execução, o tipo de myVariable será determinado como uma string.
Exemplo de uso de tipo dinâmico em C#
Este código demonstra o uso da palavra-chave dynamic em C#:
usando o sistema ;
Programa de classe pública
{
público estático vazio Principal ( )
{
dynamic myDynamicVariable = 42 ;
Console. WriteLine ( 'Valor: {0}, Tipo: {1}' , minhaVariávelDinâmica , myDynamicVariable. GetType ( ) ) ;
minhaVariávelDinâmica = 'Olá Mundo!' ;
Console. WriteLine ( 'Valor: {0}, Tipo: {1}' , minhaVariávelDinâmica , myDynamicVariable. GetType ( ) ) ;
minhaVariávelDinâmica = falso ;
Console. WriteLine ( 'Valor: {0}, Tipo: {1}' , minhaVariávelDinâmica , myDynamicVariable. GetType ( ) ) ;
minhaVariávelDinâmica = Data hora. Agora ;
Console. WriteLine ( 'Valor: {0}, Tipo: {1}' , minhaVariávelDinâmica , myDynamicVariable. GetType ( ) ) ;
MyCustomFunction ( minhaVariávelDinâmica ) ;
}
público estático vazio MyCustomFunction ( dados dinâmicos )
{
Console. WriteLine ( 'Saída da função personalizada: {0}' , dados ) ;
}
}
A palavra-chave dynamic permite que uma variável seja digitada dinamicamente, o que significa que seu tipo pode mudar em tempo de execução. No código, uma variável chamada minhaVariávelDinâmica é declarado como dinâmico e inicialmente atribuído a um valor inteiro de 42. Em seguida, é impresso junto com seu tipo usando o Console.WriteLine.
Em seguida, myDynamicVariable recebe um valor de string (“Hello World!”) e novamente impresso com seu tipo. O mesmo processo é repetido para um valor booleano e finalmente para a data e hora atuais obtidas usando DateTime.Now.
O código também inclui um MyCustomFunction que recebe dados de parâmetros dinâmicos e os imprime. A função myDynamicVariable é chamada de argumento, demonstrando que variáveis dinâmicas podem ser passadas para funções e seu tipo pode ser determinado em tempo de execução.
Conclusão
O tipo dinâmico em C# 4.0 permite que as variáveis sejam declaradas sem especificar seu tipo, o que é útil ao trabalhar com dados de tipos desconhecidos em tempo de execução. A tipagem dinâmica permite que o compilador ignore a verificação de tipo durante a compilação. Em vez disso, o tipo da variável é determinado quando o programa é executado, com base no valor que contém. Leia mais sobre tipos dinâmicos neste artigo.