Skip Navigation Links



Translate this page now :



»Programação
»Programação.NET
»Banco de Dados
»Webdesign
»Office
» Certificações Microsoft 4
»Treinamentos4
»Programação 4
»Webdesign«
»Office & User Tips«
»Grupos de UsuĆ”rios
»CĆ©lulas AcadĆŖmicas«

O melhor teclado da microsoft
Você já está cadastrado e participa do grupo de usuários de sua cidade ? Se não, comente o porque.
 
 
FaƧa um pequeno teste com 10 questƵes de VB
.:.
Teste seus conhecimentos em Visual Basic, SQL Server e ASP 3.0 com nossas provas on-line
.:.
Aprimore seus conhecimentos em programaĆ§Ć£o com nosso treinamento on-line de lĆ³gica de programaĆ§Ć£o
.:.
Veja nosso calendƔrio de treinamentos
Gostou da PƔgina?
Então

para um amigo!

Pesquisa personalizada
Pesquisar Dicas:

 






CD BufaloInfo
Este treinamento fornece conceitos avanƧados sobre desenvolvimento em ASP.NET
Valor : R$ 640,00 ou 5 X de R$ 134,00

Tenho visto muitos perguntando o que o ASP.NET tem de melhor que o ASP. Em primeiro lugar é necessário uma comparação geral : Comparando o ASP.NET com o ASP a impressão que se tem é que o ASP é uma programação de mais baixo nível que o ASP.NET. O ASP é mais vinculado às tecnologias da web, os problemas referentes a controle de sessão, gerenciamento de estado entre outros precisam ser resolvidos pelo programador. No ASP.NET isso não acontece : Ele fornece solução para os principais problemas da Web.

O programador, quando utiliza ASP.NET, desenvolve em uma linguagem de mais alto nível. Não, o ASP.NET não mudou a arquitetura da Web. O ASP.NET traduz o que o programador está escrevendo para a Web. Por exemplo : No ASP montávamos byte a byte a resposta em HTML que o browser receberia. No ASP.NET não fazemos isso - utilizamos a programação em mais alto nível do ASP.NET e ele se encarrega de traduzir o que escrevemos para o browser gerando HTML e até mesmo javascript automaticamente quando necessário.

Veja algumas grandes novidades do ASP.NET :


Manutenção de estado automatica

Manter as informações que um usuário digitou em um formulário era uma tarefa chata, que requeria uma criação de código desagradável para preencher cada caixa do formulário com a informação vinda do envio anterior, sendo que cada tipo de caixa (text, radio, select,etc.) tem uma forma diferente de preenchimento.

No ASP.NET os objetos de um formulário podem ser considerados como componentes do servidor. Sendo tratados como tal o ASP.NET, ao identifica-los no código intercepta-os e gera automaticamente o tratamento necessário para manter as informações nas caixas, sem a necessidade de maiores codificações.


Controle de sessão melhorado

A sessão do ASP exige que o usuário aceite um cookie de sessão. O controle de sessão do ASP.NET pode, automaticamente, dispensar esse cookie de sessão. Se esta caracteristica for ativada através do arquivo web.config o ASP.NET passa a inserir nas URL's o código de sessão do usuário, funcionando de forma parecida com a transmissão get. É necessário apenas uma configuração para que este recurso seja ativado.


Tratamento de Load Balance melhorado

As variáveis de sessão que utilizamos no ASP não funcionam em um ambiente de Load Balance (divisão de carga) pois elas estão na memória de um servidor. Se hora o usuário receber a página de um servidor hora do outro a variável de sessão hora estará disponível, hora não. Isso exigia grande alteração de código no momento em que fosse necessário rodar o site em ambiente de load balance.

No ASP.NET pode-se configura-lo para que guarde as variáveis de sessão em um servidor separado. Elas podem ser guardadas em RAM através de um serviço do W2K chamado ASP State que é instalado junto com o framework.net ou podem ser guardadas diretamente em um servidor de banco. Isso permite que as variáveis de sessão estejam disponíveis a todos os servidores de um load balance, fazendo com que não seja necessário alterar o código para que a aplicação funcione neste ambiente.


Programação client/server transparente

A partir do momento que o ASP.NET passa a considerar os objetos que inserimos em formulários ou na página como objetos do servidor ele nos permite manipula-los diretamente, lendo e atribuindo valores a suas propriedades e utilizando seus métodos, esquecendo, praticamente, a relação client/server existente entre o IIS e o browser. É como se estivessemos trabalhando dentro de uma aplicação Vb.

Por exemplo : Podemos inserir um botão na página e programar o evento click do botão. Quando o botão for clicado um POST será feito e o evento click será executado no servidor e tudo isso sem que o usuário veja o código fonte ASP.NET (o ASP.NET gera javascript no client para fazer o POST e instruir o servidor a executar o evento click).


Componentização do desenvolvimento e componentes mais poderosos

Os objetos (caixas, por exemplo) que inserimos na página passam a ser considerados pelo ASP.NET como componentes do servidor e o ASP.NET intercepta o código feito pelo programador e gera HTML e JavaScript para o client.

Isso traz várias vantagens, veja :

  • O componente pode identificar o browser que o usuário está utilizando e gerar um código diferenciado de acordo com o browser do usuário. É o fim dos problemas de compatibilidade de browsers
  • O desenvolvimento passa a ser mais componentizado, o desenvolvedor pode criar seus próprios componentes ASP.NET (mais leves que o COM, mas menos escaláveis, diria que para um objetivo diferente : montagem da interface) e reutiliza-los a vontade. Muitas empresas de desenvolvimento de componentes Web para ASP.NET surgirão.
  • Surgem componentes mais poderosos. Para dar uma idéia disso o ASP.NET vem com um componente DataGrid, que trabalha com vinculação de dados. Basta abrirmos um conjunto de dados e vincularmos ao datagrid e este já gera automaticamente uma tabela para o client, sem a típica montagem de TD's e TR's. Para se ter uma idéia de até onde isso vai, veja alguns recursos do DataGrid :
    • Permite total personalização da tabela, incluindo intercalação de cores entre as linhas
    • Permite seleção de um registro específico, informando ao servidor qual registro foi selecionado
    • Permite paginação de dados, inclusive uma paginação personalizada, que permite ao programador controlar melhor a paginação em conjunto com um servidor como SQL Server
    • Permite exclusão de registros, avisando ao servidor o ocorrido e deixando ao programador a tarefa de excluir o registro do banco
    • Permite edição de registros dentro da própria grid, fornecendo os dados alterados ao servidor para que o código do programador os grave


Vinculação de dados

Temos no ASP.NET componentes que aceitam vinculação de dados. Ou seja, recuperamos um conjunto de dados do servidor e vinculamos ao componente, de forma semelhante ao que fazemos em VB. Ao fazer isso o componente gera no client o HTML para a exibição dos dados automaticamente. O DataGrid e o DataRepeater são exemplos disso.


Gerenciamento de validações melhorado

Podemos dizer que as validações no ASP tinham que ser realizadas "na mão", campo a campo. Sem mencionar que, para manter a escalabilidade, era recomendável realizar a validação tanto no client (via javascript) como no servidor (via ASP). Não raro o programador realiza a validação só no client e acaba gerando uma falha de segurança.

No ASP.NET temos componentes específicos para validação. Assim sendo ao inserirmos uma caixa em um form podemos inserir também um componente de validação para ela dizendo que a mesma tem que conter um valor numérico entre 10 e 20. O ASP.NET intercepta esse código e gera para o client uma combinação de HTML e JavaScript que fará a validação durante a digitação do usuário e impedirá o POST do formulário.

Além disso a validação é realizada novamente no servidor, de forma automatica. Isso faz com que se o usuário retirar o código javascript que realiza a validação ele esbarrará com a validação do servidor, não conseguindo assim burla-la. Acabam-se então as falhas de programação neste sentido.

Os componentes de validação permitem até mesmo a criação de um sumário de erros de validação, ao seja, o usuário tenta fazer o POST do formulário e aparece para ele uma lista de todos os campos com algum erro de validação. Tudo gerado automaticamente pelo ASP.NET a partir da inserção dos componentes de validação.

Compilação e Cache de compilação

As páginas ASP.NET não são mais totalmente interpretadas, elas passam por um processo de transformação para uma linguagem chamada IL e esta linguagem é executada. No primeiro acesso a uma página ASP.NET em um servidor ela é compilada para a IL, processo lento. Mas nos acessos seguintes a IL encontra-se em cache no servidor web, neste caso apenas a IL é executada, fazendo com que a execução seja muitas vezes mais rápida do que a execução de uma página ASP tradicional.


Sistema de Cache

O ASP.NET possui um sistema de cache de páginas. Quando ativado pelo programador isso permite que ao invés de processar as páginas a cada vez que elas são chamadas o ASP.NET possa manter as páginas em cache. Assim sendo se dezenas de usuários estiverem realizando acessos à página em um curto período de tempo a página pode ser executada uma única vez e todos os demais recebem a resposta do cache.

O ASP.NET reconhece inclusive parâmetros transmitidos via GET para poder diferenciar as páginas mantidas em cache.


Código Oculto

Novo recurso do ASP.NET, o truque de código oculto permite separar o design de uma página de seu código. Como mencionamos anteriormente, a programação em ASP.NET é programação de eventos, programa-se eventos dos objetos da página.

Pois pode-se inserir estes eventos em uma página separada e realizar uma referência de uma a outra, separando o código do design e melhorando a qualidade de escrita de código.

 

ADO.NET

A nova versão do ADO para Web, apesar de um pouco mais complexa é mais robusta, manipula os dados internamente em XML e trabalha apenas com cursor no client, ideal para desenvolvimento web. No ADO os cursores no client ficavam mais lentos que seu default devido ao mal gerenciamento dos cursores static no client. Isso não acontece com o ADO.NET, gerando ganhos de performance


Visual Basic.NET

Ferramenta visual de desenvolvimento da própria Microsoft, evita que tenhamos que ficar escrevendo código. Muitos dos recursos que citei acima, como a Grid e os recursos de validação, podem ser obtidos simplesmente inserindo componentes dentro da área de design da página aspx (nova extensão dos arquivos) e configurando suas propriedades.


Conclusão

Era óbvio para todo desenvolvedor de software que faltava algo. A estrutura do ASP é um retrocesso em técnicas de desenvolvimento : Em plena era da orientação a objetos o ASP se mantinha totalmente modular e desestruturado, o que fazia que projetos web demorassem muito mais para ser desenvolvidos que seus equivalentes client/server.

Sim, faltava algo, e esse algo chegou : ASP.NET, que veio para elevar o nível da codificação, facilitando o trabalho do programador e aproximando a codificação Web do RAD e do desenvolvimento client/server.

O que falta

Falta uma ferramenta de design gráfico que consiga entender as TAG's do ASP.NET para permitir a montagem do design baseado nesta codificação. Será que a macromedia entrará nesta área ?

Dennes Torres
MCSD,MCSE,MCDBA





Envie seus comentįrios sobre este artigo

Nome :

E-mail :

Comentários :


Avise-me quando houverem novos comentįrios nesta pįgina

Veja abaixo os comentários já enviados :

Nome : pedro E-Mail : pedro@zpt.pt
sadasdasd
Nome : Cosmo E-Mail : cosmomorais@pop.com.br
Olá colegas, sou iniciante em ASP.Net e gostaria de informações de apostilas que posso ler para aprender melhor.

Grato.
Nome : shcL0PC4tH E-Mail : wn42esc1a@gmail.com
I recokn you are quite dead on with that.

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Conheça mais sobre o nosso site :

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::



Quer saber mais?
Faça um curso na Búfalo Informática, Treinamento e Consultoria e
Prepare-se para o Mercado!
Veja o que a Búfalo tem para você.

ļæ½ BĆŗfalo InformĆ”tica, Treinamento e Consultoria - Rua Ɓlvaro Alvim, 37 Sala 920 - CinelĆ¢ndia - Rio de Janeiro / RJ
Tel.: (21)2262-1368 (21) 9240-5134 (21) 9240-7281 e-Mail:
contato@bufaloinfo.com.br