Linguagem c#

Disponível somente no TrabalhosFeitos
  • Páginas : 23 (5564 palavras )
  • Download(s) : 0
  • Publicado : 2 de novembro de 2012
Ler documento completo
Amostra do texto
Sumário 1. Introdução 4 2. Programa Hello 5 3. Estrutura da Linguagem 5 3.1 Propriedades 5 3.2 Indexadores 7 3.3 Delegates 7 3.4 Eventos 7 3.5 Coleções e Instruções Foreach 9 3.6 Structs 9 3.7 Unificação de Tipos 10 3.8 Sobrecarga de Operadores 10 Entrevista com Anders Helsberg. 12 Bibliografia 19 |

História da Linguagem C#
Paradigmas Computacionais

1. Introdução

O C# é umalinguagem de programação apresentada pela Microsoft juntamente com o lançamento da plataforma. NET, em meados do ano 2000, apresentando uma excelente integração com a mesma. É uma linguagem de uso geral, moderna, robusta e orientada a objetos, incorporando diversos recursos para trabalhar efetivamente com componentes da maneira mais fácil.
A Sintaxe do C# é baseada na linguagem C++, mas eliminando asdiversas dificuldades existentes na mesma. Ela foi desenvolvida por uma equipe liderada por Anders Hejlsberg, conhecido por criar o Turbo Pascal, o Delphi e o Microsoft Visual J++.
Assim como todas as outras tecnologias, as linguagens de programação precisam evoluir. A demanda por aplicativos mais sofisticados e por softwares para a Web e dispositivos portáteis é o pretexto para a utilização dalinguagem C# em detrimento de outras mais antigas. Além das vantagens da orientação a objetos, C# apresenta as seguintes características:

§ Gerenciamento de memória automático através do “coletor de lixo”. Um programa pode alocar memória, mas não precisa se preocupar em liberá-la, pois esse trabalho é feito pelo coletor;
1. Todas as informações de um arquivo C# são compiladas em um únicoarquivo, facilitando o desenvolvimento;
2. Compatibilidade com outras linguagens. É possível utilizar em C# uma classe da plataforma. NET que tenha sido desenvolvida em outra linguagem. Por exemplo, uma classe de C# pode ser derivada de uma classe que tenha sido escrita em VB. NET. Por conseguinte, o contrário também é possível. Isso acontece porque todo código da plataforma, independente dalinguagem, é compilado para um código intermediário que é reconhecido pela Common Language Runtime;
3. Sobrecarga de operadores e operadores de conversão, muito importantes em aplicativos de âmbito científico, mas com uma sintaxe diferente do C++;
4. Utilização de ponteiros, mas apenas para desenvolvimento de código qualificado como “unsafe”. A aplicação ganhará em performance, mas terá um agravante emrelação aos seus privilégios de execução;
5. Suporte direto a programação com componentes;
6. Todos os tipos são objetos, mas os tipos mais simples, como inteiros, pagam um preço menor para fazer operações simples como uma soma. Para obter esse recurso, C# usa 2 tipos: por valor e por referência. Tipos por valor são alocados diretamente na pilha, ao invés de terem o custo adicional degerenciamento de memória característico dos tipos por referência. A conversão de um tipo para o outro é feita facilmente em um processo chamado “boxing”;
7. Presença de struct e enum para realizar tarefas em que o uso de classes é extremamente custoso;
8. A documentação é mais fácil, podendo ser feita dentro do próprio código, utilizando-se de código em XML que o compilador reconhece para poder geraro arquivo de documentação;
9. É possível chamar DLLs e APIs do Windows caso seja absolutamente necessário;
10. Permite criar WebServices através do protocolo SOAP, além de ter ótima integração com banco de dados e com o padrão XML.
O C# não pode ser usado diretamente para criar código nativo para a CPU, como o C++. O único tipo de código que o compilador cria é chamado de “Managed Code”.Esse tipo de código é compilado na primeira execução do aplicativo para a CPU nativa. Essa característica torna o código independente da CPU, bastando que exista um runtime de. NET no computador. O código em C# é seguro e incapaz de violar as restrições de segurança impostas ao programa. Exemplificando, um aplicativo local tem privilégios altos, outro que vem através da rede não tem o mesmo...
tracking img