Analise de Sistemas
Tecnologia e Inovação
Elaborador por:
Jonatas Dinelli Trafaniuc
Descrição:
Apostila para treinamento de C#
Data elaboração:
12/04/2013
Linguagem de Programação C#
Introdução .NET
1.1 CLR (Common Language Runtime)
Frequentemente chamado de código gerenciado, antes de ser executado pelo CLR, qualquer código desenvolvido precisa ser compilado primeiramente para IL (Linguagem Intermediária) e então compilada uma segunda vez, pelo próprio CLR, para o código específico da plataforma onde será executado.
1.2 Independência de plataforma
Embora a Microsoft forneça apenas implementação do .NET para a plataforma Windows, em teoria o código
IL pode ser compilado para qualquer plataforma. Uma implementação parcial multi-plataforma do .NET chamada projeto Mono está disponível.
1.3 JIT (compilação Just-in-Time)
O código IL é compilado em tempo de execução para código específico da plataforma, em contraste com o byte code Java, que é comumente interpretado. Partes do código é compilado à medido em que é utilizado, tornando a primeira utilização um pouco mais lenta, porém, com isso não se perde performance devido a interpretação em tempo real. Outra vantagem é a possibilidade do CLR gerar código compilado otimizado para o processador em uso e, neste caso, pode-se até mesmo obter ganho de performance.
1.4 Interoperabilidade de Linguagens
Independente da linguagem ou plataforma, a compilação sempre resulta na mesma linguagem intermediária
(IL). Desta forma, componentes desenvolvidos, por exemplo, em C#, C++, VB.NET e F# podem ser utilizados em qualquer projeto para a plataforma .NET.
1.5 Coletor de Lixo (Garbage Collector)
Facilita o desenvolvimento removendo a preocupação existente em liberar memória utilizada por objetos que não serão mais utilizados, evitando assim, vazamentos de memória por descuido humano. Também tenta otimizar o acesso a objetos ao tentar aloca-los em sequência na memória. O momento em que o