29
19/05/2009 1 ASP.NET ASP.NET Módulo 1 Objetivo Objetivo Mostrar os conceitos fundamentais da plataforma Microsoft .Net e suas ferramentas; Apresentar os conceitos fundamentais de aplicações web e seus elementos; Demonstrar de forma interativa o Visual Web Developer 2008.

ASP.Net - M dulo1 · linguagem de programação específica; – O Código em MSIL é executado através do ... – Tecnologia que possibilita a construção de páginas dinâmicas;

  • Upload
    lykhue

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

19/05/2009

1

ASP.NETASP.NET

Módulo 1

ObjetivoObjetivo

• Mostrar os conceitos fundamentais da plataforma Microsoft .Net e suas ferramentas;

• Apresentar os conceitos fundamentais de aplicações web e seus elementos;

• Demonstrar de forma interativa o Visual Web Developer 2008.

19/05/2009

2

AgendaAgenda

• Visão Geral do .Net Framework– O que é?– Arquitetura– Linguagens– Ferramentas

• Comportamento de uma Aplicação Web– Arquitetura(Cliente/Servidor)– HTML– Linguagens de Cliente/Servidor

• Visual Web Developer 2008

.Net Framework .Net Framework –– O Que ÉO Que É

• É o novo modelo de desenvolvimento de software da Microsoft;– Construído em cima de padrões abertos– Atualmente, os dados estão disponíveis

através da internet, e não mais apenas no computador local.

19/05/2009

3

.Net Framework .Net Framework –– O Que ÉO Que É

Ferramentas de Desenvolviment

o

Clientes

Experiência do Usuário

Aplicações WEB ASP.NET

Web Services

XML

Bancos de Dados

ArquiteturaArquitetura

• A Arquitetura do .Net Framework é composta por linguagens, ambiente de execução, etc. Esta arquitetura

será detalhada a seguir.

19/05/2009

4

ArquiteturaArquitetura

• CLR – Common Language Runtime– Executa as aplicações .Net;– Interage com o Sistema Operacional;– Abstrai das aplicações .NET detalhes

obscuros do Sistema Operacional;– Torna possível que aplicações .NET sejam

indiferentes ao Hardware e Sistema Operacional.

ArquiteturaArquitetura

• MSIL – Microsoft Intermediate Language– O .Net Framework não está preso a uma

linguagem de programação específica;– O Código em MSIL é executado através do

CLR;– Sua utilização possibilita que artefatos

compilados em uma linguagem sejam utilizáveis pelas linguagens de programação que suportem o .Net Framework.

19/05/2009

5

ArquiteturaArquitetura

• Assembly– Biblioteca de código (utilizado para

disponibilização de aplicativos) (.dll);– Pode ser executável (.exe);– Utilizado para versionamento e segurança;

• O uso do assembly especifica qual a versão utilizada

ArquiteturaArquitetura

• Garbage collector– Gerenciamento de Memória automático;

• O desenvolvedor não é mais responsável por alocar e liberar memória;

• Evita erros ocasionados por gerenciamento de memória mal feito;

– Decide quando e se um objeto que não está mais sendo usado pode ser coletado.

19/05/2009

6

ArquiteturaArquitetura

• Vantagens– Viabiliza que softwares sejam construídos

independente de Hardware e de Sistema Operacional;

– É construído em cima de padrões abertos;– Possibilita que o desenvolvedor se foque na

solução do problema, e não em detalhes de como o problema pode ser resolvido.

Visual Studio 2008 e Visual Web Visual Studio 2008 e Visual Web DeveloperDeveloper 20082008

Web Forms, ASP.NET AJAX

Múltiplas Linguagens

Web Services, WCF

Acesso a Dados, LINQ

Tratamento de Erros

Windows Forms, WPF

19/05/2009

7

Visual Studio 2008 e Visual Web Visual Studio 2008 e Visual Web Developer 2008Developer 2008• Ambiente de Desenvolvimento oficial da

Microsoft;• Suporta as linguagens: C#, VB.Net, Visual

C++, Visual J#;• Possui ferramentas para construir

aplicações web, windows e Web Services XML.

Visual Studio 2008 e Visual Web Visual Studio 2008 e Visual Web DeveloperDeveloper 20082008• O Visual Web Developer 2008 é uma

versão free, porém, com menos recursos que o Visual Studio.– Requer um registro (sem encargos

financeiros) para uso por mais do que 30 dias.

19/05/2009

8

LinguagensLinguagens

• Todas as linguagens compatíveis com a Plataforma .Net fazem chamadas à Plataforma, não ao SO.

• Apesar de todas as linguagens compilarem para MSIL, as linguagens possuem características específicas;

• Algumas linguagens: VB.Net, C#, Delphi.Net.

LinguagensLinguagens

• Algumas linguagens suportadas pelo Visual Studio 2008– C#: Linguagem criada para uso com o .Net

Framework, evitando problemas e dificuldades encontradas em outras linguagens.

19/05/2009

9

LinguagensLinguagens

• Ex em C#using System;

namespace ConsoleApplication1{

class Program{

static void Main(string[] args){

Console.WriteLine("Olá.");}

}}

LinguagensLinguagens

• Ex em VB.NetModule Module1

Sub Main()Console.WriteLine("Olá.")

End Sub

End Module

19/05/2009

10

FerramentasFerramentas

• Windows Forms– Windows Forms é utilizado para construir

aplicativos em Janelas;– Estes aplicativos não precisam de um

navegador para ser executado;– Normalmente utilizado para aplicativos mais

robustos;– Ex: Calculadora, Word, Excel, etc

FerramentasFerramentas

• Web Forms:– Utilizado para a construção de Aplicativos

Web.– Estes aplicativos serão executados através

de um navegador web convencional.– Apresenta como vantagem a acessibilidade e

facilidade de atualização– Ex: hotmail, orkut

19/05/2009

11

FerramentasFerramentas

• Mobile– Utilizado para construir aplicativos que serão

executados em dispositivos móveis (PDAs, SmartPhones, etc);

– Dispositivos móveis são fáceis de carregar;

FerramentasFerramentas

• Web Services– Serviços disponibilizados através da Internet;– Podem ser utilizados independente da

linguagem– Utilizam XML para trafegar dados– Utilizado para fazer integração entre

aplicações distintas– Ex: Serviço de busca de cep dos correios

19/05/2009

12

FerramentasFerramentas

• Windows Services– Serviços que rodam no Sistema Operacional;– Provêm um conjunto de funcionalidades;– Serviços são gerenciáveis a partir do Painel

de Controle;– Ex: SQL Server, Oracle.

Comportamento de uma Aplicação Web

19/05/2009

13

Comportamento de uma Aplicação Comportamento de uma Aplicação WebWeb

• Arquitetura Cliente/Servidor– O Cliente faz uma requisição ao servidor;– O Servidor processa a requisição e retorna ao

cliente solicitante;– O Processamento de uma requisição pode

demandar que o Servidor se conecte a bases de dados, leia arquivos XML, se comunique com Web Services, etc.

Comportamento de uma Aplicação Comportamento de uma Aplicação WebWeb

Cliente

Servidor

Requisição

Resposta

XMLComponentes

Bancos

De

Dados

19/05/2009

14

HTMLHTML

• HTML– Linguagem de Marcação utilizada para dar

forma (definir como o conteúdo será apresentado) em páginas HTML;

– Composta por tags (ex<div>,<a>, etc);– Seu conteúdo é textual (pode ser editado no

bloco de notas, Word, Visual Studio, Dream Weaver, etc).

HTMLHTML

• Ex:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>

<title>título da página</title></head><body>

Conteúdo do corpo da página</body></html>

19/05/2009

15

Linguagens de Cliente/ServidorLinguagens de Cliente/Servidor

• Logo que o desenvolvimento comercial de software passou a utilizar a Web, inúmeras linguagens e tecnologias surgiram para possibilitar a construção de aplicações web;

• A maior parte delas é composta por uma mescla de elementos HTML e elementos próprios da linguagem.

• Javascript– Linguagem de Script utilizada em sua maior

parte para prover dinamismo no lado cliente.– Mais utilizado para validação de páginas,

AJAX;– Pode estar em páginas html ou em arquivos

externos (normalmente .js)

19/05/2009

16

• Javascript– Ex:<script>

function exibirMensagem(msg) {alert(msg);

}</script>

• ASP (Active Server Pages – Microsoft, 1990)– Tecnologia que possibilita a construção de páginas

dinâmicas;– Utiliza <% e %> para separar código ASP dos outros

conteúdos da página;– Deve ser acessada através de requisições a um

Servidor Web (IIS – Microsoft Internet Information Services)

– Pode se comunicar com Bancos de Dados, etc durante sua etapa de processamento da página;

– Não utiliza terminador de instrução

19/05/2009

17

• ASP– Ex:

<html><body><%response.write("Olá!")%></body></html>

• PHP (Personal Home Pages – Rasmus Lerdof, 1994)– Tecnologia que possibilita a construção de páginas

dinâmicas;– Utiliza <?php e ?> para separar os trechos da página

que devem ser interpretados como código PHP;– Suporta Orientação a Objetos– Deve ser acessada através de requisições a um

servidor web que possua interpretador PHP instalado– Pode se comunicar com Bancos de Dados, etc

durante sua etapa de processamento da página;– Utiliza terminador de Instrução - ;.

19/05/2009

18

• PHP– Ex:

<html><body><?phpecho "Olá!";?></body></html>

• JSP (Java Server Pages – Sun Microsystems)– Tecnologia que possibilita a construção de páginas

dinâmicas;– Utiliza <% e %> para separar código JSP dos outros

conteúdos da página;– Utiliza a linguagem Java no bastidores;– Deve ser acessada através de requisições a um

Servidor Web que suporte Java;– Pode se comunicar com Bancos de Dados, etc

durante sua etapa de processamento da página;– Utiliza terminador de Instrução - ;.

19/05/2009

19

• JSP– Ex:

<html><body><%=response.write("Olá!")%>

</body></html>

• ASP.NET (Active Server Pages –Microsoft, 2000)– Evolução da Tecnologia ASP;– Baseado no .Net Framework;– Deve ser acessada através de requisições a

um Servidor Web (IIS – Microsoft Internet Information Services);

– Separação entre a página e o código (codebehind);

– Uma grande quantidade de componentes

19/05/2009

20

• ASP.NET (Active Server Pages –Microsoft, 2000)– Possibilita reutilizar assemblies criados com o

.Net Framework;– Possibilita que Componentes personalizados

(User Controls) sejam criados através dos componentes já existentes;

Visual Web Developer 2008Visual Web Developer 2008

• Ao longo do curso, utilizaremos para desenvolver aplicações web, o Visual Web Developer 2008.– Disponível para download no site

• http://www.microsoft.com/express/vwd/

– Não requer licença para uso, apenas registro por parte do utilizador.

19/05/2009

21

Atividade de apoioAtividade de apoio

Conhecendo o Visual Web Developer 2008.

Visual Web Developer 2008

• Recent Projects– Esta janela exibe os últimos

projetos utilizados pelo usuário;

– Sempre que um projeto é criado ou aberto, ele será referenciado nesta janela;

– Para abrir um projeto desejado, basta clicar duas vezes no nome do projeto ou pressionar <enter>;

– Estar listado na janela não impede que um projeto seja excluído.

19/05/2009

22

Visual Web Developer 2008

• MSDN– Esta janela exibe as

últimas notícias, novidades, atualizações, tutoriais, etc disponibilizados no MSDN;

Visual Web Developer 2008

• Getting Started– Esta janela sugere os passos

iniciais para quem não possui muita experiência com a ferramenta;

19/05/2009

23

Visual Web Developer 2008

• Criação de Web Site– Para criar um Web Site,

acesse o menu File > New Web Site ...

– A Janela ao lado será exibida

– Em Templates, selecione ASP.NET Web Site; em Location, especifique onde o Web site será salvo; Language selecione Visual C#.

Visual Web Developer 2008

• Solution Explorer– Esta janela exibe os detalhes

estruturais do projeto que está aberto.

19/05/2009

24

Visual Web Developer 2008

• Solution Explorer– Esta janela exibe os detalhes

estruturais do projeto que está aberto.

Visual Web Developer 2008

• Class View– Exibe as Classes que estão

no escopo do Projeto

19/05/2009

25

Visual Web Developer 2008

• Server Explorer– Permite Explorar os

Servidores que estão cadastrados no VWD.

Visual Web Developer 2008

• Toolbox– Contém os controles que

podem ser adicionados às Páginas.

19/05/2009

26

Visual Web Developer 2008

• Error List– Contém os erros encontrados pelo VWD 2008. Estes

erros podem incluir erros em páginas, códigos com erro, etc;

– Esta janela pode ser exibida / ocultada a partir do menu View > Error List

Visual Web Developer 2008

• Output– Saída textual que pode ser utilizada pelos

desenvolvedores para escrever valores;– Utilizado em tempo de Desenvolvimento;– Esta janela pode ser exibida / ocultada a partir do

menu View > Output

19/05/2009

27

Visual Web Developer 2008

• Find Results– Exibe os resultados de busca, feitos através de

alguma das opções disponíveis no menu Edit > Find and Replace

Visual Web Developer 2008

• Immediate Window• Permite ao desenvolvedor interagir com a

aplicação que está em execução;• Esta interação possibilita que testes sejam

feitos.

19/05/2009

28

Visual Web Developer 2008

• Janela de Design– É nesta janela onde a página é projetada e construída;– Para incluir um componente, o selecione na Toolbox e

o solte no local desejado na página.

Visual Web Developer 2008

• Janela de Código– Exibe o código da página;

– Pode ser utilizado para modificar o conteúdo da página;

19/05/2009

29

Visual Web Developer 2008

• Properties– Permite editar as

propriedades do elemento selecionado

Visual Web Developer 2008

• Intelisense– Recurso muito útil e importante que faz sugestões à

medida que se digita;– O Intelisense está disponível também aos códigos

em C# e VB.Net