Upload
lecong
View
216
Download
0
Embed Size (px)
Citation preview
Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator
Ederson Evaristo JantschOrientador: Marcel Hugo
09/07/2002
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Introdução
� Sistema multicamadas� Páginas dinâmicas – ASP / JSP / WSP� WebIntegrator� Protótipo� Ferramentas� Definição
Objetivos do trabalho
� O objetivo do trabalho é criar um protótipo de uma aplicação que, integrada com o banco de dados Caché, acesse as classes definidas no arquiteto de objetos do banco de dados e a partir destas classes crie páginas WSP.
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo � Conclusões e Sugestões
Arquitetura de aplicações
� Uma camada – centralizada em um único ambiente mainframe.
� Duas camadas – cliente/servidor� Multicamadas – escalabilidade,
reusabilidade, flexibilidade, integridade, desempenho, ...
Arquitetura multicamadas� São componentes de aplicação que se comunicam através de uma interface abstrata
� É uma arquitetura de software em níveis, na qual há a separação dos serviços dos usuários (interface do usuário), dos serviços de negócio (modelo do domínio) e dos serviços de dados.
Componentes de aplicação
� Camada lógica de apresentação� Camada lógica de negócio� Camada lógica de acesso a dados
GUI
WEBWEBServer
Interface Negócio Banco
DataBase1
DataBase2
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Tecnologias de conteúdo dinâmico
� Conteúdo estático – nunca mudam dependendo de quem e quando são solicitados
� Conteúdo dinâmico – e-commerce, carrinho de compras online, notícias recentes, preços atualizados, ...
Conteúdo dinâmico� O browser manda uma requisição para o servidor web.
� O servidor web determina, pela extensão “.jsp”, “.asp”, “.wsp” e outras ,que a requisição deve ser processada para a inclusão do conteúdo.
� As partes de códigos são executados e os resultados são substituídos na página.
� O HTML gerado é enviado novamente para o servidor web.
� O servidor web envia o HTML para o browser.
Algumas tecnologias� CGI – primeiro padrão de conteúdo dinâmico (Perl)
� CODLDFUSION – suporta UNIX e Microsoft Windows
� PHP – open source (não comercial e disponível para diversas plataformas)
� ASP – disponível somente para Internet Information Server (IIS) rodando no Microsoft Windows NT
� CSP – Caché Server Pages
JSP – JavaServer Pages
� Acesso a uma grande varieade de API Java e serviços, incluindo JDBC, JavaMail, Java Transaction, dentre outros
� JavaBeans para acessar informações na camada de acesso aos dados
Roteiro� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Banco de dados orientado a objetos
� Surgiram da necessidade de se sustentar a programação orientada a objetos
� São fruto da união dos Sistemas Gerenciadores de Banco de Dados e Orientação a Objetos.
Vantagens do Banco de dados orientado a objetos� Capacidade de modelar não só os dados de estruturas complexas mas também seu comportamento
� Maior naturalidade conceitual, através da definição de objetos
� Concordância com fortes tendências das linguagens de programação e da engenharia de software
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Pattern e framework
� Buscam alcançar a reutilização em larga escala
� Evitam a copia de partes de código de outros programas para manter um padrão de desenvolvimento do código e um padrão de interface
Pattern� É um conjunto de regras descrevendo como executar certas tarefas no domínio do desenvolvimento de software
� Reuso de modelos de temas arquiteturais repetidos
� Em casos com infinito número de situações, os patterns fornecem um conjunto de situações previamente testadas
� Exemplo: algoritmos de ordenação, livros de algoritmos
Framework� É um conjunto de classes cooperativas que compõem modelos reutilizáveis para uma classe especifica de software
� Reuso no nível de modelo detalhado, algoritmos e implementação
� Normalmente se escreve o corpo principal da aplicação e se chama o código que se quer reutilizar, com framework reutiliza-se o corpo principal e se escreve o código que este chama
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Banco de dados Caché
� Modelo baseado em objetos, executando sobre um banco de dados multidimensional e voltado a transações
� Entre suas características web, o Cachéoferece o Caché Server Pages (CSP), Caché Hyper-Events e o Caché Web Wizard
Caché Object Script (COS)
É uma linguagem nativa e orientada a objetos, sendo formada basicamente por comandos, funções e variáveis
especiais
WebIntegrator� É um servidor de aplicações web com ambiente de desenvolvimento integrado
� Baseado em tecnologia web, conectando-se aos principais bancos de dados via ODBC, JDBC, Caché Factory e outras
� Caché Factory permite chamar queries, procedures e métodos do objeto
WebIntegratorEstá dividido em 2 grupos:� WI_Builder – responsável pelo ambiente de desenvolvimento
� WI_Engine – responsável pelo processamento
Interpretador de JSP, permitindo a codificação de trechos Java (JSP) e a chamada de classes Java
Protótipo
� Acessa classes no banco de dados, e utilizando componentes do WebIntegrator gera as páginas dinâmicas
� Utiliza templates para a geração de código
Roteiro
� Introdução� Aplicação multicamadas� Tecnologias de conteúdo dinâmico� Banco de dados orientado a objetos� Pattern e framework� Ferramentas e Protótipo� Conclusões e Sugestões
Conclusões
� A união das tecnologia de conteúdo dinâmico e BDOO formam um poderoso mecanismo para o desenvolvimento de sistema complexos, possibilitando modelar sistemas de acordo com o mundo real com as vantagens das aplicações web.
Sugestões
� Estudar a implementação no protótipo para a integração com outros bancos de dados orientados a objetos
� Implementação da possibilidade de geração de cadastros que possam utilizar mais de uma classe, implementando cadastros do tipo mestre-detalhe
Muito obrigado!
UNIVERSIDADE REGIONAL DE BLUMENAUCENTRO DE CIÊNCIAS EXATAS E NATURAISCURSO DE CIÊNCIAS DA COMPUTAÇÃO
(Bacharelado)
Blumenau, junho/2002