Protótipo de uma ferramenta de apoio para desenvolvimento...
Transcript of Protótipo de uma ferramenta de apoio para desenvolvimento...
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