Vous êtes sur la page 1sur 21

INSTITUTO FEDERAL FARROUPILHA CAMPUS SO BORJA/RS I SEMANA DA INFORMTICA

MODELO EM TRS CAMADAS


Douglas Boardman

Roteiro

Introduo Programao Orientada a Objetos Conceitos bsicos da Programao Orientada a Objeto;

Classes, Objetos, Atributos, Mtodos, Herana, Agregao, Encapsulamento, Abstrao e Polimorfismo. Breve histrico, conceitos bsicos. Aplicao prtica.

Introduo Programao em 3 camadas;


Introduo Orientao a Objetos

Vivemos em um mundo orientado a objetos

O enigma do carro; Linguagem Simula 67: 1 Linguagem Orientada a objetos; Introduziu os conceitos de classes e herana; Baseada no ALGOL 60 (1 Estruturada). Linguagem Smalltalk

Os conceitos de POO so antigos;

Originada do LOGO.

Conceitos Bsicos de POO

As Linguagens procedurais organizam o programa de forma linear e utilizam um fluxo de execuo de cima para baixo. Em outras palavras, o programa executado em uma srie de passos que so executados um aps o outro. Este tipo de programao funcionou bem para pequenos programas que consistiam de algumas centenas linhas de cdigo, mas conforme os programas se tornaram maiores e mais complexos eles se tornaram mais difceis de gerir e depurar.

Conceitos Bsicos de POO

Em uma tentativa de gerenciar o tamanho cada vez maior de programas, a programao estruturada foi introduzida para quebrar o cdigo em segmentos gerenciveis chamados de funes ou procedimentos. Isso foi uma melhoria, mas como os programas passaram a ter que realizar funcionalidade de negcios mais complexas e interagirem com outros sistemas, as seguintes deficincias da metodologia de programao estrutural comearam a aflorar:

Conceitos Bsicos de POO

Os problemas da abordagem procedural


Dificuldade de manuteno; Emaranhado de correes sequenciais (corrige 1 corrige todos) Pouco aproveitamento de cdigo para novas aplicaes; A programao no voltada para o desenvolvimento em equipe. Os programadores tinham de conhecer todos os aspectos do programa. Tornando-se difcil isolar os seus esforos em um aspecto do sistema;

Conceitos Bsicos de POO

Os problemas da abordagem procedural

Ficou muito difcil traduzir os modelos de negcios existentes em modelos de programao; A integrao entre os diversos sistemas existentes passou a ser um pesadelo; Alm de problemas de interao com o usurio. Programas pouco intuitivos e nada interativos.

Conceitos Bsicos de POO

Exemplo de cdigo procedural


Inicio Programa Imprimir Funcao Comecar() MostrarMensagem(Pressione o boto imprimir) evento_do_usuario = RecebeEvento IrPara LerEvento(evento_do_usuario) Fim Funcao Funcao LerEvento(evento) Se evento = botao_imprimir_pressionado ento IrPara Funcao Imprimir() Fim Funcao Funcao Imprimir() RotinaImpressao IrPara Comecar() Fim Funcao Fim Programa

Conceitos Bsicos de POO

Os benefcios da abordagem POO

Uma transio mais intuitiva dos modelos de anlise de negcios para a implementao do software; A capacidade de manter e implementar mudanas nos programas de forma mais rpida e eficiente; A capacidade criar sistemas de software atravs de um processo de equipe, permitindo a especialistas trabalharem em partes do sistema; A capacidade de reutilizao de componentes de cdigo em outros

Conceitos Bsicos de POO

Os benefcios da abordagem POO

A capacidade de reutilizao de componentes de cdigo e a aquisio de componentes escritos por desenvolvedores de terceiros aumentando a funcionalidade de programas com pouco esforo; Uma melhor integrao com sistemas distribudos e com baixo acoplamento; Melhor integrao com os Sisetmas Operacionais modernos; A capacidade de criar uma interface de usurio grfica mais intuitiva

Conceitos Bsicos de POO

Classes

Uma classe um tipo, uma categoria de objetos.

Ex.: Automvel, Cadeira, etc. Objetos

No contexto da OOP um objeto uma instncia de uma classe. Onde a classe o tipo e o objeto uma instncia do tipo.

Ex.: Carro, Cadeira de Praia, etc. Abstrao

habilidade de concentrar-se nos

Conceitos Bsicos de POO

Abstrao

habilidade de concentrar-se nos aspectos essenciais de um contexto qualquer, ignorando caractersticas menos importantes ou no essenciais e abstraindo (ou retirando) as realmente necessrias. uma classe uma abstrao de uma entidade existente no domnio do sistema de software

Ex.: Pedido, Produto, Cliente, etc.

Conceitos Bsicos de POO

Encapsulamento

O objeto esconde seus dados de outros objetos e permite que os dados sejam acessados por intermdio de seus prprios mtodos.

Ex.: Um departamento pessoal geralmente encapsula a informao sobre os empregados determinando como e quando esses dados podem ser manipulados.

Conceitos Bsicos de POO

Polimorfismo (sobrecarga)

a habilidade de objetos distintos responderem a mesma mensagem a sua prpria maneira.

Ex.: diferentes mtodos de um objeto com o mesmo nome mas assinaturas diferentes. getProduto(int codigo) getProduto(string nome)

Conceitos Bsicos de POO

Herana (superclasses e subclasses)

a capacidade de criar objetos novos ou especficos a partir de objetos originais primrios (tipos). Superclasse: classe a partir da qual todas as suas caractersticas so herdadas por suas subclasses. Subclasse: herda todas as caractersticas de suas superclasses.

Ex.: Funcionrio, Vendedor, Gerente, Gerente de Vendas, Gerente Comercial, etc.

Conceitos Bsicos de POO

Agregao:

A agregao ocorre quando um objeto consiste de uma composio de outros objetos que trabalham juntos.

Ex.: o objeto carro um composto de objetos roda, objeto motor, objeto farol, objeto direo, etc. Agregados (juntos) todos esses objetos compem o objeto carro.

Introduo Programao em 3 camadas

Breve Histrico:

Aplicaes Monolticas: Aplicativo continha todas a funcionalidades em um nico mdulo gerado por uma grande quantidade de linhas de cdigo e de manuteno nada fcil. Aplicaes em Duas Camadas: Nessas aplicaes a base de dados era colocada em uma mquina especfica, separada das mquinas que executavam as aplicaes. Temos aplicativos instalados em estaes clientes contendo toda a lgica da aplicao (problemas de verses)

Introduo Programao em 3 camadas

Modelo em trs camadas

Camada de apresentao ou GUI:

Esta camada interage diretamente com o usurio, atravs dela que so feitas as requisies como consultas, por exemplo.

Introduo Programao em 3 camadas

Modelo em trs camadas

Camada do negcio:

Tambm chamada de Lgica empresarial, Regras de negcio ou Funcionalidade. nela que ficam as funes e regras de todo o negcio. Inexiste uma interface para o usurio e seus dados so volteis, ou seja, para que algum dado seja mantido deve ser utilizada a camada de dados.

Introduo Programao em 3 camadas

Modelo em trs camadas

Camada de acesso a Dados (Persistncia):

A terceira camada definida como o repositrio das informaes e as classes que a manipulam. Esta camada recebe as requisies da camada de negcios e seus mtodos executam essas requisies em um banco de dados. Alterando o banco de dados alteraria apenas as classes da camada de dados, e o restante das camadas no seriam afetados por essa alterao.

Introduo Programao em 3 camadas

Modelo em trs camadas

Vous aimerez peut-être aussi