Aprenda a linguagem MSIL, Microsoft Intermediate Language Ji-Paraná, Rondônia

Saiba como é estruturada a linguagem "C#" . O autor explica qual é o seu conceito e sua sintaxe. Conheça os detalhes da linguagem MSIL.

Ebp Telecomunicacoes
(69) 3213-3354
r Jose Amador Dos reis 3227 Jk
Porto Velho, Rondônia

Dados Divulgados por
Assistencia comercio e serviços de computadores Ltda
(69) 8414-9322
r Emil Gorayeb, 2929 Jardim América
Porto Velho, Rondônia

Dados Divulgados por
Arte & engenho soluçoes em informatica
(69) 3043-5847
r Dq Caxias, 2132 São Cristóvão
Porto Velho, Rondônia

Dados Divulgados por
comtec eletronica material informatica
(69) 3026-3400
r Jatuarana, 3746 Conceição
Porto Velho, Rondônia

Dados Divulgados por
Ponto Com Informática
(69) 3422-4640
Av. Marechal Rondon 1495
Ji-Parana, Rondônia
 
dimençao informatica
(69) 3223-6500
r Uruguai, 2729 Embratel
Porto Velho, Rondônia

Dados Divulgados por
Sct Informática
(21) 2242-0977
r Santana, 210
Porto Velho, Rondônia

Dados Divulgados por
Binatec suplimentos e manutençao
(69) 3223-6500
av José Vieira Caula, 3671 S 6 Embratel
Porto Velho, Rondônia

Dados Divulgados por
c & c comercio e informatica Ltda
(69) 3227-1010
av Imigrantes, 2509 S A Liberdade
Porto Velho, Rondônia

Dados Divulgados por
bragsoft informatica
(69) 3043-2717
r Brasília, 2639 S 17 São Cristóvão
Porto Velho, Rondônia

Dados Divulgados por
Dados Divulgados por

Aprenda a linguagem MSIL, Microsoft Intermediate Language

Minha proposta nesse espaço inicialmente seria de analisarmos a linguagem C#, sua sintaxe, implementações dos conceitos de orientação a objetos, etc. Para tal ,acredito que a implementação de programas console [aqueles que rodam no DOS], seja a melhor alternativa nesse primeiro momento. Sem dúvida o Visual Studio é uma ferramenta poderosíssima, mas tentaremos não fazer uso do mesmo, para uma maior intimidade com a linguagem, o compilador, suas ferramentas e as diversas técnicas de desenvolvimento que o ambiente nos permite. Uma ressalva ao editor de programas, onde o Visual Studio tem uma interface bastante agradável (destaque para identação e visual das linhas de código), no entanto para os mais nostálgicos o uso do Edit é bem vindo.

Pré-requisitos:

Para execução de um programa .Net. o mínimo necessário é a instalação do Framework, disponível paradownloadno site da Microsoft. Uma vez instalado temos disponíveis os compiladores VB e C#, para nosso caso o programa csc [digite csc /? para maiores detalhes de compilação]. Caso tenhamos apenas o framework instalado seria interessante adicionar à variável de ambiente Path, o caminho do programa csc, se tivermos o Visual Studio instalado utilize a opção Visual Studio Command Prompt, dentre as ferramentas do VS.

Finalmente:

Bom pessoal, nada mais batido como primeira lição nos escritos de qualquer linguagem de programação que o conhecido "Hello Word" , pois bem, não faremos diferente, no entanto, utilizaremos desse programa para passarmos algumas informações importantes para o entendimento de qualquer programa C#. Faremos uma viagem pelo universo do MSIL, a mágica da Microsoft para que os programas sejam multiplataformas, independente de linguagem, seguros, versionados, etc. O MSIL, nada mais é que uma linguagem intermediaria gerada no processo de compilação do código fonte, assim ao final desse processo temos um código intermediário e dependente do runtime do Framework ao invés dos executáveis "independentes", até então gerado pelos compiladores [e ainda possível nos compiladores C++, e C# em situações especiais].

Esse código é formado por um conjunto de instruções em linguagem intermediária e por metadados, conhecido como MANISFESTO, onde temos descrito informações essenciais para execução do código, tais como definição de tipos, controle de versão [e ai o fim da terrível DLL HELL, ou incompatibilidade de versões], referencia à assemblies externos, dentre outras funcionalidades.

Esse formato do código, com dados e metadados, permite aos assemblies uma autodescrição o que dispensa a necessidade das antigas Type Libraries ou IDLs. Assim o próprio runtime do framework, localiza e obtém as informações necessárias para executar as instruções conforme preciso, tudo junto num mesmo lugar.

O processo de execução inicia-se com o runtime do Framework [o conhecido CLR], que carrega do código IL e o executa, como já dissemos, o código tem é gerenciado e seguro. No entanto, antes dessa execução o CLR, garante a validade do código para só então compilá-lo, gerando um código de fato executável compatível com o processador, através do just-in-time compiler [JITter] que é cacheado, e caso haja alteração no código fonte / IL o mesmo é atualizado. Durante a execução do código gerenciado, o mesmo recebe serviços como garbage collection [responsável pela uma "limpeza" periódica na memória], interoperabilidade com códigos não gerenciados, serviço de controle de versão, segurança, etc, ou seja nosso processo fica constantemente monitorando para garantir sua qualidade em performance, segurança, gerenciamento otimizado da memória e outras funcionalidades providas pelo Framework.

A seguir, analisaremos nosso programa, o compilaremos e analisaremos seu código intermediário.

Listagem 1 - Hello World

• using System; //Referenciando namespace System
• namespace iMasters //Definindo namespace iMasters
• {
• class hello //Definindo classe hello
• {
• public static void Main() //Função principal
• {
• for(int i=0;iCaio Azevedo

Caio Azevedo é arquiteto de softwares, especialista em soluções corporativas nos ambientes intranet/internet. Graduado em Ciência da Computação, Mestrando da Escola Politécnica da USP. Certificações Microsoft [MCP, MCAD e MCSD .NET]. Gestor da célula Microsoft da Magna Sistemas Consultoria ( www.magnasistemas.com.br).

Clique aqui para ler este artigo na Artigonal.Com