TÉCNICAS AVANÇADAS EM 
PROGRAMAÇÃO ORIENTADA A 
OBJETOS 
 O foco do curso é oferecer aos alunos um curso 
avançado de programação voltado para o projeto e 
construção de sistemas complexos. O curso discutirá 
com maior profundidade os problemas relacionados com 
paradigmas de programação, especialmente as 
questões relacionadas a Padrões de Projeto e 
Programação Genérica. 
 Os tópicos a serem abordados incluem: 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Arquitetura Cliente Servidor 
 JDBC; 
 Introdução: HTML, CSS; 
 Applets, Servlets, JSP; 
 Padrões de Projeto; 
 Frameworks
Paradigma de Programação 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Definição 
 Conjunto de regras e/ou hipóteses que 
governam a definição de um modelo. 
 Aplicação na computação/informática 
 Auxiliar na condução do processo de 
busca da solução (modelo conceitual) de 
um problema. 
? Do CAOS as SOLUÇÕES ????
 Relembrando algo sobre OO 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
TÉCNICAS AVANÇADAS EM 
PROGRAMAÇÃO ORIENTADA A 
OBJETOS 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
Noção de objeto 
 Orientado a objeto: 
 Abstração de responsabilidades. Trabalha com a identificação de 
unidades comportamentais (estado e ações) independentes, que 
produzem a computação a partir de suas interações 
 O princípio da orientação a objetos está associado ao 
encapsulamento de comportamento. 
 A forma de fazer evoluir um programa é permitir que 
objetos compartilhem dados entre si através de trocas 
explicitas de mensagens.
TÉCNICAS AVANÇADAS EM PROGRAMAÇÃO 
ORIENTADA A OBJETOS 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Objeto 
 "Objeto é uma coisa, uma entidade, 
alguma coisa que você levanta ou 
chuta, qualquer coisa que você 
possa imaginar que tenha sua própria 
identidade." 
(Mike O´Docherty, 2005)
TÉCNICAS AVANÇADAS EM 
PROGRAMAÇÃO ORIENTADA A 
OBJETOS 
 Uma mensagem consiste em uma 
requisição, onde o objeto requisitante 
(sender) envia uma solicitação de 
serviço ao objeto requisitado (receiver). 
 Este serviço, necessariamente, precisa 
pertencer à interface de serviços oferecida 
pelo objeto requisitado. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
TÉCNICAS AVANÇADAS EM 
PROGRAMAÇÃO ORIENTADA A 
OBJETOS 
 Um serviço é especificado para um objeto como 
um método . 
 A estas informações, representadas por dados 
armazenados no contexto do objeto, dar-se 
denominação de atributos – objetos possuem 
atributos representando seu estado interno. 
 O estado interno de um objeto pode conter tanto 
valores como referenciar outros objetos. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
Identifique: 
 Identifique, na figura abaixo, os seguintes itens: 
 Objeto 
 Métodos de acesso modificados; 
 Propriedades; 
1,82 
altura 
81 
peso 
$12,45 
dimdim no bolso 
cofre 
comer(alimento) 
irNaPraia(valor) 
receberSalario(grana) 
Pessoa 
depositar(valor) 
retirar(valor) 
mostarValor(valor) 
$500,15 
saldo 
Cofre da Pessoa
Arquitetura 
Cliente / 
Servidor 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arquitetura Cliente / Servidor 
CONCEITOS 
 Cliente / Servidor (Client / Server) 
 A expressão “Cliente / Servidor” (comumente 
chamado de “Client / Server”) descreve o 
desenvolvimento físico de modelos onde o 
computador cliente faz um pedido para o 
computador servidor, e o computador servidor 
responde a esse pedido. 
pedido 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
C S 
resposta 
Este servidor 
também pode 
ser um cliente.
Arquitetura Cliente / Servidor 
Características 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Cliente: 
 AAttiivvoo.. 
 Inicia e termina as conversações com os 
servidores, solicitando serviços. 
 Normalmente não se comunica com outros 
clientes. 
 Normalmente é responsável pela entrada e saída 
de dados e comunicação com o usuário. 
 Torna a rede transparente ao usuário.
Arquitetura Cliente / Servidor 
Características 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Servidor: 
 RReeaattiivvoo.. 
 Execução contínua. 
 Recebe e responde a solicitações dos clientes e 
de outros servidores. 
 Presta serviços distribuídos. 
 Atende a diversos clientes ou outros servidores 
simultaneamente.
Arquitetura Cliente / Servidor 
Características 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
Comunicação: 
 Não hierárquica.. 
 Servidores enviam pela rede apenas os 
resultados relevantes ao pedido do cliente. 
 Abrangência das Redes: WAN, MAN e 
LAN.
Arquitetura Cliente / Servidor 
Características 
 Estrutura típica de um aplicativo: 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
Interface do 
Usuário 
Regras de 
Negócios 
Banco de 
Dados
Arquitetura Cliente / Servidor 
Máquina A Máquina B 
resposta 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
Cliente Serv. A 
pedido 
Serv. B 
Middleware Middleware 
Suporte de comunicação 
Usuário 
Características
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura centralizada 
 Dominantes até década de 80 como arquitetura corporativa; 
 Utilização de um Computador central (mainframe); 
 Problema básico: interface não amigável; 
recursos 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
mainframe 
terminais
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 2 camadas 
 Camada cliente trata da lógica de negócio e da UI; 
 Camada de servidor trata dos dados (usando um 
SGBD); 
 Melhor aproveitamento dos PCs das empresa; 
 Interfaces gráficas mais amigáveis. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Problemas: 
 Falta de escalabilidade (conexões a bancos de 
dados); 
 Manutenção (mudanças na lógica de aplicação 
forçava instalações);
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 2 camadas 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Ilustração prática:
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 3 camadas 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Criação das camadas de: 
 Apresentação; 
 Negócio; 
 Dados.
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 3 camadas 
 Com essa solução, os problemas de 
manutenção foram reduzidos, pois 
mudanças às camadas de aplicação e de 
dados não necessitam de novas 
instalações no desktop . 
 Fisicamente, várias camadas podem 
executar na mesma máquina; 
 Quase sempre, há separação física de 
máquinas. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 3/4 camadas (Baseada na 
WEB) 
 Ainda na arquitetura três camadas a instalação inicial dos 
programas no desktop é cara; 
 O problema de manutenção ainda persiste quando há mudanças 
à camada de apresentação (UI); 
 Não se pode instalar software facilmente num desktop que não 
está sob seu controle administrativo, pois: 
 Em máquinas de parceiros; 
 Em máquinas de fornecedores. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 3/4 camadas (Baseada na 
WEB) 
 Agora surge o cliente universal chamado 
“BROWSER”; 
 Conceito de Intranet; 
 A camada de aplicação se quebra em duas: Web e 
Aplicação. 
 Evitamos instalar qualquer software no desktop e portanto, 
problemas de manutenção; 
 Evita instalação em computadores de clientes, parceiros, 
fornecedores, etc. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arquitetura Cliente / Servidor 
Tipos de sistemas (Arquitetura) 
 Arquitetura em 3/4 camadas (Baseada na WEB) 
 Com tudo isso, continua-se a chamar de 3 camadas porque 
as camadas Web e Aplicação freqüentemente rodam na 
mesma máquina (para pequenos volumes) ; 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
Arquitetura Cliente / Servidor 
Vantagens e Desvantagens 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Vantagens 
 Maior facilidade de crescimento 
 Crescimento incremental dos serviços 
 Custos 
 Maioria dos equipamentos mais baratos. 
 Menor risco de falhas (Generalizadas) 
 Ocorrência de falhas somente em partes do 
sistema. 
 Maior facilidade em replicar entre os servidores
Arquitetura Cliente / Servidor 
Vantagens e Desvantagens 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) 
 Desvantagens 
 Soluções mais complexas 
 É preciso separar a aplicação em diversas 
partes. 
 Problemas com a utilização da rede 
 Dependência do meio de comunicação 
 Maior atenção com relação a segurança 
 Todas as informações circulam na rede 
 Utilização de algoritmos de criptografia.
Arquitetura Cliente / Servidor 
Bibliografia 
 Cay S. Horstmann - Conceitos de Computação com o Essencial 
de Java. 
 Daniel Gouveia Costa - Java Dicas & Truques. 
 Harvey M. Deitel - Como Programar Java. 
 Notas de aula do Prof. Antonio Geraldo da Rocha Vidal – USP – 
Universidade de São Paulo. 
 PAUL E. Renaud. Introduction to Client/Server Systems: A 
Practical Guide for Systems Professionals . Second 
Edition. 
 http://www.dsc.ufcg.edu.br/~jacques/cursos/j2ee/html/intro/intro.ht 
m. 
 Notas de aula do Prof. Carlos A. Maziero – PUCPR. 
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) 
Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)

Aula01 arquitetura clienteservidor

  • 1.
    TÉCNICAS AVANÇADAS EM PROGRAMAÇÃO ORIENTADA A OBJETOS  O foco do curso é oferecer aos alunos um curso avançado de programação voltado para o projeto e construção de sistemas complexos. O curso discutirá com maior profundidade os problemas relacionados com paradigmas de programação, especialmente as questões relacionadas a Padrões de Projeto e Programação Genérica.  Os tópicos a serem abordados incluem: Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Arquitetura Cliente Servidor  JDBC;  Introdução: HTML, CSS;  Applets, Servlets, JSP;  Padrões de Projeto;  Frameworks
  • 2.
    Paradigma de Programação Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Definição  Conjunto de regras e/ou hipóteses que governam a definição de um modelo.  Aplicação na computação/informática  Auxiliar na condução do processo de busca da solução (modelo conceitual) de um problema. ? Do CAOS as SOLUÇÕES ????
  • 3.
     Relembrando algosobre OO Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 4.
    TÉCNICAS AVANÇADAS EM PROGRAMAÇÃO ORIENTADA A OBJETOS Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) Noção de objeto  Orientado a objeto:  Abstração de responsabilidades. Trabalha com a identificação de unidades comportamentais (estado e ações) independentes, que produzem a computação a partir de suas interações  O princípio da orientação a objetos está associado ao encapsulamento de comportamento.  A forma de fazer evoluir um programa é permitir que objetos compartilhem dados entre si através de trocas explicitas de mensagens.
  • 5.
    TÉCNICAS AVANÇADAS EMPROGRAMAÇÃO ORIENTADA A OBJETOS Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Objeto  "Objeto é uma coisa, uma entidade, alguma coisa que você levanta ou chuta, qualquer coisa que você possa imaginar que tenha sua própria identidade." (Mike O´Docherty, 2005)
  • 6.
    TÉCNICAS AVANÇADAS EM PROGRAMAÇÃO ORIENTADA A OBJETOS  Uma mensagem consiste em uma requisição, onde o objeto requisitante (sender) envia uma solicitação de serviço ao objeto requisitado (receiver).  Este serviço, necessariamente, precisa pertencer à interface de serviços oferecida pelo objeto requisitado. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 7.
    TÉCNICAS AVANÇADAS EM PROGRAMAÇÃO ORIENTADA A OBJETOS  Um serviço é especificado para um objeto como um método .  A estas informações, representadas por dados armazenados no contexto do objeto, dar-se denominação de atributos – objetos possuem atributos representando seu estado interno.  O estado interno de um objeto pode conter tanto valores como referenciar outros objetos. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 8.
    Arleys Pereira Nunesde Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) Identifique:  Identifique, na figura abaixo, os seguintes itens:  Objeto  Métodos de acesso modificados;  Propriedades; 1,82 altura 81 peso $12,45 dimdim no bolso cofre comer(alimento) irNaPraia(valor) receberSalario(grana) Pessoa depositar(valor) retirar(valor) mostarValor(valor) $500,15 saldo Cofre da Pessoa
  • 9.
    Arquitetura Cliente / Servidor Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 10.
    Arquitetura Cliente /Servidor CONCEITOS  Cliente / Servidor (Client / Server)  A expressão “Cliente / Servidor” (comumente chamado de “Client / Server”) descreve o desenvolvimento físico de modelos onde o computador cliente faz um pedido para o computador servidor, e o computador servidor responde a esse pedido. pedido Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) C S resposta Este servidor também pode ser um cliente.
  • 11.
    Arquitetura Cliente /Servidor Características Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Cliente:  AAttiivvoo..  Inicia e termina as conversações com os servidores, solicitando serviços.  Normalmente não se comunica com outros clientes.  Normalmente é responsável pela entrada e saída de dados e comunicação com o usuário.  Torna a rede transparente ao usuário.
  • 12.
    Arquitetura Cliente /Servidor Características Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Servidor:  RReeaattiivvoo..  Execução contínua.  Recebe e responde a solicitações dos clientes e de outros servidores.  Presta serviços distribuídos.  Atende a diversos clientes ou outros servidores simultaneamente.
  • 13.
    Arquitetura Cliente /Servidor Características Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) Comunicação:  Não hierárquica..  Servidores enviam pela rede apenas os resultados relevantes ao pedido do cliente.  Abrangência das Redes: WAN, MAN e LAN.
  • 14.
    Arquitetura Cliente /Servidor Características  Estrutura típica de um aplicativo: Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) Interface do Usuário Regras de Negócios Banco de Dados
  • 15.
    Arquitetura Cliente /Servidor Máquina A Máquina B resposta Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) Cliente Serv. A pedido Serv. B Middleware Middleware Suporte de comunicação Usuário Características
  • 16.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura centralizada  Dominantes até década de 80 como arquitetura corporativa;  Utilização de um Computador central (mainframe);  Problema básico: interface não amigável; recursos Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com) mainframe terminais
  • 17.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 2 camadas  Camada cliente trata da lógica de negócio e da UI;  Camada de servidor trata dos dados (usando um SGBD);  Melhor aproveitamento dos PCs das empresa;  Interfaces gráficas mais amigáveis. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Problemas:  Falta de escalabilidade (conexões a bancos de dados);  Manutenção (mudanças na lógica de aplicação forçava instalações);
  • 18.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 2 camadas Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Ilustração prática:
  • 19.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 3 camadas Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Criação das camadas de:  Apresentação;  Negócio;  Dados.
  • 20.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 3 camadas  Com essa solução, os problemas de manutenção foram reduzidos, pois mudanças às camadas de aplicação e de dados não necessitam de novas instalações no desktop .  Fisicamente, várias camadas podem executar na mesma máquina;  Quase sempre, há separação física de máquinas. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 21.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 3/4 camadas (Baseada na WEB)  Ainda na arquitetura três camadas a instalação inicial dos programas no desktop é cara;  O problema de manutenção ainda persiste quando há mudanças à camada de apresentação (UI);  Não se pode instalar software facilmente num desktop que não está sob seu controle administrativo, pois:  Em máquinas de parceiros;  Em máquinas de fornecedores. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 22.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 3/4 camadas (Baseada na WEB)  Agora surge o cliente universal chamado “BROWSER”;  Conceito de Intranet;  A camada de aplicação se quebra em duas: Web e Aplicação.  Evitamos instalar qualquer software no desktop e portanto, problemas de manutenção;  Evita instalação em computadores de clientes, parceiros, fornecedores, etc. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 23.
    Arquitetura Cliente /Servidor Tipos de sistemas (Arquitetura)  Arquitetura em 3/4 camadas (Baseada na WEB)  Com tudo isso, continua-se a chamar de 3 camadas porque as camadas Web e Aplicação freqüentemente rodam na mesma máquina (para pequenos volumes) ; Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)
  • 24.
    Arquitetura Cliente /Servidor Vantagens e Desvantagens Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Vantagens  Maior facilidade de crescimento  Crescimento incremental dos serviços  Custos  Maioria dos equipamentos mais baratos.  Menor risco de falhas (Generalizadas)  Ocorrência de falhas somente em partes do sistema.  Maior facilidade em replicar entre os servidores
  • 25.
    Arquitetura Cliente /Servidor Vantagens e Desvantagens Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)  Desvantagens  Soluções mais complexas  É preciso separar a aplicação em diversas partes.  Problemas com a utilização da rede  Dependência do meio de comunicação  Maior atenção com relação a segurança  Todas as informações circulam na rede  Utilização de algoritmos de criptografia.
  • 26.
    Arquitetura Cliente /Servidor Bibliografia  Cay S. Horstmann - Conceitos de Computação com o Essencial de Java.  Daniel Gouveia Costa - Java Dicas & Truques.  Harvey M. Deitel - Como Programar Java.  Notas de aula do Prof. Antonio Geraldo da Rocha Vidal – USP – Universidade de São Paulo.  PAUL E. Renaud. Introduction to Client/Server Systems: A Practical Guide for Systems Professionals . Second Edition.  http://www.dsc.ufcg.edu.br/~jacques/cursos/j2ee/html/intro/intro.ht m.  Notas de aula do Prof. Carlos A. Maziero – PUCPR. Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos (UFBA)(arleys.castro@gmail.com)