360 likes | 447 Views
Desenvolvimento de Aplicações Web na plataforma Microsoft. Apresentação. Sobre a disciplina. 2 Avaliações semestrais + substitutiva 2 trabalhos semestrais Critério dos trabalhos (*) Bibliografia
E N D
Desenvolvimento de Aplicações Web na plataforma Microsoft Apresentação Academia de Ensino Superior Prof. André Morais
Sobre a disciplina • 2 Avaliações semestrais + substitutiva • 2 trabalhos semestrais • Critério dos trabalhos (*) • Bibliografia • HART, CHRIS KAUFFMAN, JHON SUSSMAN, DAVID ULLMAN, CHRIS - BEGINNING ASP.NET 2.0 WITH C#: WILEY, 2006 • Ferramentas complementares • Fórum/chat • Exercícios • Email Academia de Ensino Superior Prof. André Morais
Sobre a disciplina • Tópicos • Introdução ao ASP; • HTML • Server controls • GUI • Eventos • Usando controles de banco de dados • Trabalhando com XML Academia de Ensino Superior Prof. André Morais
A Internet Academia de Ensino Superior Prof. André Morais
O que é a Internet? • “Rede de redes” • Não há controle centralizado • Não há gerência • Acesso instantâneo e de baixo custo • Comunicação entre todos os pontos da rede Academia de Ensino Superior Prof. André Morais
Histórico • 1969 - ARPANET: 4 computadores conectados • 1972 - Primeiro email criado • 1973 – Desenvolvimento do protocolo TCP/IP • 1982 – Termo Internet usado pela primeira vez • 1983 – Desenvolvimento do primeiro DNS (Utilização de URLs) • 1990 – Criação do hipertexto; ARPANET cai em desuso • 1993 – Criação do MOSAIC Academia de Ensino Superior Prof. André Morais
Histórico • 1994 - World Wide Web Consortium (W3C) • 1995 – Internet entrega mais mensagens do que o US Post Office • 1996 – Número de computadores na Internet dobram a cada 12 meses • 2000 – Marca de 185 países conectados • 2003 – Pela primeira vez ouve-se o termo Web 2.0 Academia de Ensino Superior Prof. André Morais
Hierarquia • Todo computador conectado faz parte da rede Academia de Ensino Superior Prof. André Morais
Ponte • Roteadores determinam para onde enviar a informação. • Ele garante que a informação: • Não vá onde não necessita; • Vá ao destinatário correto Academia de Ensino Superior Prof. André Morais
Backbone • Backbones (espinha-dorsal) são meios físicos de conectar redes à altas velocidades; • São tipicamente feitos com fibra ótica; • Muitas companhias possuem um backbone próprio Academia de Ensino Superior Prof. André Morais
Internet Protocol: Endereço IP • Toda máquina na internet possui um único número, chamado endereço IP; • Este é um típico endereço IP: • 216.27.61.137 • O mesmo número em notação binária: • 11011000.00011011.00111101.10001001 • Ips reservados: 0.0.0.0 e 255.255.255.255 Academia de Ensino Superior Prof. André Morais
Internet Protocol: DNS • DNS (Domain Name System) é a forma pelo qual se identifica um endereço por um nome “human-like”; • Mapeamento de nomes X endereço IP Academia de Ensino Superior Prof. André Morais
Uniform Resource Locators • URL (Uniform Resource Locators) é a notação utilizada para especificar informações do domínio. Academia de Ensino Superior Prof. André Morais
Cliente e Servidor • Toda máquina na rede pode ser hora cliente, hora servidor; • As máquinas que provem serviço são servidoras • E as máquinas que se conectam a este serviço são clientes; Academia de Ensino Superior Prof. André Morais
Páginas dinâmicas Academia de Ensino Superior Prof. André Morais
Servidor Web • Processo básico: Academia de Ensino Superior Prof. André Morais
Mecanismo CGI • Padrão para atendimento de requisição • Tratado e executado no servidor Academia de Ensino Superior Prof. André Morais
CGI: Exemplo #include <stdio.h> int main() { printf("Content-type: text/html\n\n"); printf("<html>\n"); printf("<body>\n"); printf("<h1>Hello there!</h1>\n"); printf("</body>\n"); printf("</html>\n"); return 0; } Academia de Ensino Superior Prof. André Morais
CGI: Exemplo <html> <body> <h1>Hello there!</h1> </body> </html> Academia de Ensino Superior Prof. André Morais
Form: Envio de dados • Toda informação que deve ser transmitida pelo usuário para o servidor deve ser feita através de formulários • Exemplos: • Usuário/senha; • Sites de busca (google); • Cadastro de usuário Academia de Ensino Superior Prof. André Morais
Form: Exemplo Academia de Ensino Superior Prof. André Morais
Form: Exemplo #include <stdio.h> #include <stdlib.h> int main() { printf("Content-type: text/html\n\n"); printf("<html>\n"); printf("<body>\n"); printf("<h1>O nome informado foi: ") printf("%s</h1>\n", getenv("QUERY_STRING")); printf("</body>\n"); printf("</html>\n"); return 0; } Simpleform.cgi Academia de Ensino Superior Prof. André Morais
Arquitetura de Aplicações Academia de Ensino Superior Prof. André Morais
Arquitetura de Aplicações • Necessidades Atuais • Produtividade no desenvolvimento (desde a concepção à implantação); • Agilidade na manutenção; • Integração com sistemas legados; • Escalabilidade; • Redução do custo de produção, treinamento e suporte ao usuário; • Agilidade e baixo custo na atualização de versões; • Segurança. Academia de Ensino Superior Prof. André Morais
Arquitetura de Aplicações • Arquitetura de Aplicações define a organização estática dos sistemas aplicativos em um alto nível; • Boas arquiteturas são tolerantes a mudanças; Academia de Ensino Superior Prof. André Morais
Mainframe • Características • Processamento centralizado; • Terminais Burros; • Redes de comunicação lentas. • Metodologia de Desenvolvimento • Linguagem Cobol; • Bancos de dados hierárquicos, rede e "relacional"; • Análise Estruturada Clássica. Academia de Ensino Superior Prof. André Morais
Mainframe • Características das Aplicações • Aplicações corporativas batch e on-line e com até poucos milhares de usuários; • Aplicações com interface com o usuário baseada em caracteres. • Vantagens • Facilidade de gerência da segurança; • Facilidade de gerência de usuários; • Facilidade de gerência de aplicações; • Facilidade de integração de sistemas. • Desvantagens • Processamento centralizado permitindo apenas escalabilidade vertical; • Alto custo (milhões de dólares/ano); • Arquiteturas de hardware, software e comunicação totalmente proprietárias levando à dependência do fornecedor; • Interface com o usuário limitada, baseada em caractere; • Usuário sem autonomia. Academia de Ensino Superior Prof. André Morais
Aplicações em rede • Características • Servidores de serviços compartilhados (ex. arquivos, impressão) com boa capacidade de processamento; • Estações de trabalho com bom poder de processamento com aplicações locais, interface gráfica; • Redes com boa velocidade (10, 100 Mbps). • Metodologia de Desenvolvimento • Linguagens Clipper, Pascal, Cobol; • Gerenciamento de arquivos específico das linguagens; Academia de Ensino Superior Prof. André Morais
Aplicações em rede • Características das Aplicações • Aplicações departamentais on-line com até dezenas de usuários; • Aplicações com interface com o usuário baseada em caracteres, mas com mais recursos visuais e processamento local; • Aplicações acessam servidor através de mapeamento de unidades de disco ou protocolos proprietários. • Vantagens • Processamento espalhado permitindo o uso de aplicações nas estações; • Servidores e estações de baixo custo; • Arquiteturas de software e comunicação proprietárias mas com recursos de integração entre plataformas; • Interface com o usuário montada localmente e com recursos gráficos; • Usuário com autonomia total. Academia de Ensino Superior Prof. André Morais
Aplicações em rede • Desvantagens • Dificuldade de gerência da segurança; • Dificuldade de gerência de usuários; • Dificuldade de gerência de aplicações; • Dificuldade de integração de sistemas; • Aplicações são executadas nas estações de forma independente, podendo acessar arquivos no servidor, mas sobrecarregando muito a rede. Academia de Ensino Superior Prof. André Morais
Aplicações Cliente-Servidor • Características • Aplicações divididas em dois módulos: o cliente e o servidor; • Cliente e servidor comunicam-se através de protocolos de comunicação proprietários voltados para serviços; • Metodologia de Desenvolvimento • Linguagens Delphi, Visual Basic, etc; • Servidores de Banco de Dados Relacional; • Análise Essencial e Orientada a Objetos. • Características das Aplicações • Aplicações departamentais on-line e com até dezenas de usuários; • Aplicações com interface gráfica com o usuário. Academia de Ensino Superior Prof. André Morais
Aplicações Cliente-Servidor • Vantagens • Diminuição do tráfego na rede. • Desvantagens • Dificuldade de gerência da segurança; • Dificuldade de gerência de usuários; • Dificuldade de gerência de aplicações; • Dificuldade de integração de sistemas; • Aplicações são executadas nas estações de forma independente, podendo acessar serviços no servidor, mas sobrecarregando muito a rede. Academia de Ensino Superior Prof. André Morais
Três camadas • Consiste em três camada de software. • Camada de Interface • Responsável pela interface com o usuário. • Camada de Regra de Negócio • Responsável pela regra de negócio. • Camada de Dados • Responsável pelo acesso aos dados (normalmente em banco de dados). Academia de Ensino Superior Prof. André Morais
Multicamadas • Possui as três camadas anteriores com a adição de subcamadas na camada de regra de negócio, normalmente para a integração com sistemas legados. • Desvantagens • Maior dificuldade de implementação. • Vantagens • Grande facilidade de gerência de segurança; • Grande facilidade de gerência de aplicações; • Grande facilidade de gerência de usuários; • Grande facilidade de integração de sistemas: administração de componentes; • Independência de banco de dados; • Grande escalabilidade horizontal através da criação de clusters de servidores de aplicação; • Boa performance; • Maior flexibilidade para a estruturação da arquitetura da aplicação; • Maior flexibilidade para incorporar o uso de outras tecnologias. Academia de Ensino Superior Prof. André Morais
Case Academia de Ensino Superior Prof. André Morais
Vamos analisar... • Proponha uma arquitetura e descreva o cenário para a utilização de cada uma das necessidades abaixo: • Sistema de estoque; • Pagamento de crediário; • Portal corporativo (intranet); • Web-site empresarial; • E-commerce; • Sistema de operação de tanques de combustível; • ERP; • Aplicação interna (reembolso de despesas, cadastro em cursos, apontamento de horas, etc.) • Sistema de gerenciamento bancário; Academia de Ensino Superior Prof. André Morais