Escolar Documentos
Profissional Documentos
Cultura Documentos
NET
Por Mauro SantAnna (mas_mauro@hotmail.com). Mauro um MSDN Regional
Director, consultor e instrutor.
O principal objetivo da arquitetura .NET permitir ao usurio o fcil acesso a seus
aplicativos e dados em qualquer lugar, a qualquer hora e usando qualquer dispositivo.
Para concretizar esta viso existem vrios componentes, de servidores a ferramentas de
desenvolvimento.
Uma importante capacidade desta arquitetura a de interagir com navegadores HTML
comuns, at mesmo produzidos por outras empresas que no a Microsoft. aqui que o
ASP.NET entra em cena. O ASP.NET uma ferramenta RAD para o desenvolvimento
de aplicativos baseados em pginas HTML. Dentre suas vrias vantagens, um grande
salto em produtividade quando comparado a qualquer outra ferramenta do mercado. Ele
torna o desenvolvimento de aplicativos baseados em Web to simples como o
desenvolvimento de aplicativos em Visual Basic. O programador no tem sequer que
conhecer HTML ou scripts de cliente (usualmente JScritp) para criar aplicativos
sofisticados.
A chave para este recurso um ambiente de desenvolvimento que usa componentes para
processar eventos do navegador e gerar HTML. Alm dos componentes que j vem com
o VS.NET, certamente aparecero diversos componentes de terceiros.
Mesmo que voc no decida abraar toda a arquitetura .NET (WinForms, por exemplo),
os ganhos de produtividade do ASP.NET so razo bastante para usa-lo.
De forma a mostrar como fcil escrever um aplicativo HTML que inclui at mesmo
scripts de cliente, vou guia-lo no desenvolvimento de um aplicativo ASP.NET bastante
simples: uma calculadora de quatro operaes. Vou partir do princpio que voc j tem o
Visual Studio Beta 1 instalado e funcionando. Usaremos a linguagem C#, mas esta
demonstrao essencialmente a mesma para todas as linguagens da arquitetura.NET.
Criando um projeto
Abra o VS.NET e selecione New | Project | Visual C# Projects | WebApplication. D
nome Calculator e aperte Ok:
Voc agora tem uma soluo (um conjunto de projetos relacionados) com um nico
projeto dentro. O projeto contm um nico WebForm chamado WebForm1.aspx,
uma pgina HTML especial que tem um fonte em linguagem de alto nvel associado C#
no caso. No se preocupe com os demais arquivos:
Note que voc pode escolher entre dois modos de Page Layout: linear e grid. O
modo GridLayout permite o posicionamento dos componentes em coordenadas
absolutas X e Y, mas no compatvel com todos os navegadores. Deixaremos esta
propriedade com o valor padro, LinearLayout.
Os componentes que colocamos no formulrio se parecem muito com tags HTML, mas
isto no verdade. Por exemplo, o componente TextBox pode gerar as tags INPUT,
INPUT PASSWORD ou TEXTAREA, dependendo do valor da propriedade
TextMode. Eles podem at mesmo no gerar nenhuma sada visvel no navegador caso
a propriedade Visible seja false. Os componentes so abstraes de alto nvel de
elementos usados nos aplicativos. Os prprios componentes geram a sada em HTML
conforme necessrio e de forma compatvel com o navegador (HTML 4.0, HTML 3.2,
WAAP, JScript etc). O seu aplicativo no precisa saber nada a respeito de HTML; os
componentes interagem com o navegador especfico que o usurio estiver rodando.
Selecione agora o boto + e clique no raio na pgina Properties. Note que cada
componente tem vrios eventos. Esta uma maneira de trabalho muito parecida com a do
Visual Basic, mas um grande contraste em relao a outras ferramentas HTML, onde
todo o formulrio gera um nico evento e voc deve escrever cdigo para descobrir que
componente fez o que.
Escreva DoOperation na caixa de texto ao lado do Click:
Quando voc pressionar Enter, ser exibido o editor de cdigo. Como desejamos que
todos os botes apontem para o mesmo evento, v at o WebForm (clique na aba
WebForm1.aspx na parte superior) e selecione todos os botes pressionando a tecla
Shift. V at a pgina de eventos, clique no combobox ao lado de Click e selecione
DoOperation. Novamente o editor de cdigo ser aberto, conforme mostrado a seguir:
Podemos usar o poder do C# e VS.NET para melhor organizar o cdigo e dividilo entre os diversos membros de uma equipe.
Validao no cliente
Vamos avanar um pouco mais no nosso exemplo. Suponha que desejemos validar o
contedo dos TextBoxes no cliente. Algo como se os nmeros entrados so vlidos,
sem precisar ir e voltar ao servidor. Usando a tecnologia corrente de navegadores, isto s
possvel com scrips de cliente, usualmente escrito em JScript. Scripts de cliente so
particularmente difceis de escrever e depurar, mas o ASP.NET pode gera-los
automaticamente para ns!
Da pgina Web Forms no Toolbox, adicione um CompareValidator ao lado de
cada TextBox. Mude as seguintes propriedades em cada um deles:
Operator: DataTypeCheck
Type: Double
Rode o programa. Observe que os contedos dos TextBox sero validados no cliente,
usando um script que foi enviado ao navegador. Voc pode agora perguntar o que
aconteceria caso tivesse sido usado um navegador que no suporte scripts de cliente. A
resposta simples: nenhum script enviado e a validao ser efetuada apenas no
servidor. Na verdade, a validao sempre feita no servidor de forma a evitar
falsificaes de pgina (spoofing). Esta a razo para as duas linhas no incio do nosso
cdigo: temos que impedir o resto de rodar caso a validao no servidor falhe.
Concluso
O ASP.NET um ambiente poderoso e produtivo para o desenvolvimento de aplicativos
baseados em HTML. Ele torna o desenvolvimento de aplicativos Web to simples como
o desenvolvimento de aplicativos Windows usando uma ferramenta RAD como o Visual
Basic.