A plataforma .NET oferece uma grande quantiddade de recursos para desenvolvedores de vários segmentos. Recursos que vão de o Cobol.NET até o J# (muito embora particularmente não veja muito sentido nestas linguagens) passando pelo VB.NET e pelo C#.NET (grande e acertada aposta da Microsoft).
Um dos diferenciais do .NET é o fato de poder se desenvolver aplicativos em uma única linguagem da plataforma e “escolher” se este aplicativo será executado como uma aplicação client convencional ou, se este aplicativo será executado em ambiente web, ou se este aplicativo será executado em dispositivos móveis, etc.
Com este artigo, começo uma série que pretende apresentar alguns recursos da linguagem C# sob a plataforma .NET com o foco no desenvolvimento para web. Em cada artigo da série apresentarei dicas que, em grande escala, atravancam o trabalho de desenvolvedores .NET mundo a fora.
A plataforma .NET
Quando dizemos “Plataforma .NET” estamos querendo dizer na verdade “Framework .NET”.
Um framework é um mecanismo projetado para capturar funcionalidades gerais a diversos elementos de uma arquitetua, ou seja, é um recurso de software projetado para entender diferentes características e gerar um resultado final comum. Um framework é projetado para facilitar o processo de desenvolvimento de software pois, ela “camufla” o processo de baixo nível do software deixando para o programador a função de cuidar de aspectos mais gerais do software. A Figura 1 apresenta a estrutura da framework .NET:
Figura 1: Visão geral da plataforma .NET
A arquitetura é composta por quatro elementos principais: Commom Language Specification(CLS), Basse Class Library (BCL), Common Language Runtime (CLR) e a Common Type System (CTS). A seguir uma resumida explicação sobre cada uma das camadas da framework:
- CLS – Common Language Specification
O CLS, ou Especificação Comum da Linguagem, é um subconjunto do CTS, e define um conjunto de regras que qualquer linguagem que implemente a .NET deve seguir a fim de que o código gerado resultante seja perfeitamente entendido pelo runtime .NET. [1] - BCL – Base Class Library
O objetivo da BCL (Biblioteca de Classes Base), oferecer ao desenvolvedor uma biblioteca consistente de componentes de software reutilizáveis. Na BCL encontramos classes que contemplam desde um novo sistema de janelas a bibliotecas de entrada/saída, gráficos, sockets, gerenciamento da memória etc. Esta biblioteca de classes é organizada hierarquicamente em uma estrutura conhecida como namespace.Abaixo exemplo de namespace onde você vai encontrar tudo o que é necessário para lidar com bases de dados e, como é de se esperar, você encontrará ADO.NET aqui.System.Data,
System.Data.Commom,
System.Data.OleDb,
System.Data.SqlClient [1] - CLR – Common Language Runtime
As aplicações .NET não são aplicações Win32 propriamente ditas (apesar de executarem no ambiente Windows),razão pela qual o runtime Win32 não sabe como executá-las. O Win32, ao identificar uma aplicação .NET, dispara o runtime .NET que, a partir desse momento, assume o controle da aplicação no sentido mais amplo da palavra. O CLR como seu próprio nome o diz, é compartilhado e, portanto, não temos um runtime para VB.NET, outro para C# etc. É o mesmo para todo mundo. [1] - CTS – Common Type System
O CTS, ou Sistema Comum de Tipos, que também faz parte do CLR, define os tipos suportados por .NET e as suas características. Cada linguagem que suporta .NET tem de, necessariamente, suportar esses tipos.
No próximo artigo começaremos a ver alguns recursos ASP.NET com C#.
Até lá!
Facebook
Twitter
Instagram
LinkedIn
RSS