análise e projeto de sistemas universidade de cruz alta ciência da computação 2010/1

Post on 18-Apr-2015

104 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Análise e Projeto de Sistemas

UNIVERSIDADE DE CRUZ ALTA

Ciência da Computação

2010/1

ORIENTAÇÃO A OBJETOS

CENÁRIO ATUAL

Precursores da análise orientada a objeto, defendiam que devíamos estruturar programas de computadores de acordo com o problema a ser resolvido. O Termo orientação a objetos sugere abstrações no mundo real e trechos de programas de computador, ou objeto.

CENÁRIO ATUAL

Um grande fator da orientação a objetos é a REUSABILIDADE. Estamos reutilizando códigos de programas desde o início da computação. As técnicas de orientação a objetos nos permitem muito mais que a reutilização de códigos, podemos reutilizar requisitos, análise, projeto, planejamento de testes, interfaces de usuário e arquiteturas, ou seja, todos os componentes de engenharia de software podem ser encapsulados como reutilizáveis.

Análise orientada a objetos

Propósitos da análise orientada a objetos

formalizar uma visão do mundo real dentro do qual o sistema será desenvolvido, estabelecendo os objetivos que servirão como principais estruturas organizacionais do sistema de software e também as que o mundo real impõe.

Formalizar a colaboraçao de um dado conjunto de objetos na execução do trabalho do sistema de forma que está sendo especificado.

Objeto

Análise orientada a objetos

Análise é o estudo do domínio de um problema que leva a uma especificação de comportamentos observáveis externamente. Analisar é obter as necessidades de um sistema e o que este precisa ser desenvolvido para satisfazer as necessidades do usuário.

Análise orientada a objetos

ANÁLISE

INVESTIGAÇÃO DO PROBLEMAINVESTIGAÇÃO DO PROBLEMA

Projeto orientado a objetos

Processo de especificação das partes da construção, ou seja, instruções, guias, recomendações, qualificações, regras, etc...Utilizamos este processo para implementar um sistema em um ambiente específico, em busca da solução do problema.

Orientação a objetos

Significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam estes dados.

Características das linguagens orientadas a objetos

Objetos Polimorfismo Herança

Sistema de software orientado a objetos

Um sistema de software orientado a objetos consiste de objetos em colaboração com o objetivo de realizar as funcionalidades deste sistema. Cada objeto é responsável por tarefas específicas. É através da cooperação entre objetos que a computação do sistema se desenvolve.

OBJETOS

É uma entidade lógica que contém dados e códigos para manipular estes dados.

Exemplos: Coisas tangíveis = “a Bíblia”

Objetos

Componentes de um objeto

Objetos

Classes

É um tipo de dados, como os já conhecidos para declarar variáveis.

Uma variável de uma classe é chamada de objeto

Variáveis de Classe: são os dados declarados em uma classe

Instância: temos uma instancia de uma classe quando declaramos um objeto a partir de uma classe. Semelhante a declaração de uma variável.

Componentes de um objeto

Objetos

Dados

métodos

Classe

Variáveis de classe

Dados

métodos

Instancia de uma classe

Variáveis de instância

Objetos

Um Objeto é uma entidade independente, assíncrona e concorrente, armazena dados, encapsula serviços, troca mensagens com outros objetos, e é modelado para executar as funções finais do sistema.

Objetos

Objetos interagem e comunicam-se através de mensagens

As mensagens identificam as operações / métodos a serem executados no objeto receptor.

emissorReceptor/servidor

Mensagens e métodos

Para invocar um método de um objeto, deve-se invocar uma mensagem para este objeto.

Para enviar uma mensagem deve-se: Identificar o objeto que receberá a mensagem Identificar o método que o objeto deve executar Passar os argumentos requeridos pelo método. Um objeto possui: Um estado (definido pelo conjunto de valores de seus atributos

em um determinado instante) Um comportamento (definido pelo conjunto de métodos

projetados na sua interface) Uma entidade única.

Mensagens

Componentes de um objeto

Método

Um sinônimo para procedimento ou função. Invocado quando uma mensagem é recebida por um objeto.

Abstração

Consiste na seleção que o analista faz de alguns aspectos, ignorando outros.

Abstração

Homem, vaca e cachorro são mamíferos; Prata, chumbo e platina são metais; Poupança, conta corrente e aplicações são

tipos de contas bancárias; Características comuns: Todos os mamíferos são vertebrados; Todos os metais tem peso; Todas as contas bancárias tem saldo.

Abstração

A abstração deve ser sempre feita com algum objetivo, por que este determina o que é e o que não é importante

Classe

Classe é a abstração que capta os atributos e operações comuns a um conjunto de objetos;

É a descrição de um conjunto de objetos com características, atributos e comportamentos semelhantes.

Instancia: é um objeto individual que é tanto descrito por uma classe particular como é um membro dela. Repositório para dados que descreve o estado de um membro de uma classe

Classe

Classe

Conta bancária

Número da contaNúmero do titular

Saldo

Consulta saldo

Retirar

Depositar

Classe

Operações:Depósito: quantidadeRetirada: quantidade

Saldo

NumeroConta:123456NomeTitular:Elaine

Saldo:700.77

NumeroConta:123489NomeTitular:Carla

Saldo:500.77

NumeroConta:456789NomeTitular:Pedro

Saldo:300.77

Minha conta bancária

Conta bancária de Carla

Conta bancária de Pedro

Subclasse

Encapsulamento

Todo o acesso aos dados do objeto é feito através da chamada a uma operação (método) da sua interface.

Mudanças na implementação de um objeto, que preservem a sua interface externa, não afetam o resto do sistema.

Encapsulamento

Encapsulamento

Encapsulamento

Encapsular é omitir informações pelo princípio de que uma determinada entidade esconde informações as quais são necessárias apenas à mesma. É fundamental que o objeto proteja seus dados, não permitindo que o usuário do objeto os acesse diretamente, mas sim através de métodos.

Estado

Encapsulamento

Herança

É a principal característica do processo de generalização / especialização. Através da Herança uma determinada subclasse herda todos os atributos e métodos da superclasse.

Vantagem: Permite um analista especificar serviços e atributos

comuns uma só vez, assim como especializar e estender estes atributos a serviços em casos específicos.

Polimorfismo

O polimorfismo ocorre quando uma mesma mensagem chegando a objetos diferentes provoca respostas diferentes.

Herança

É o processo em que um objeto pode adquirir as características de um outro objeto.

Herança simples: um objeto herda as características de uma única classe.

Herança Múltipla: um objeto herda características de mais de uma classe.

Herança

Conta bancária

Conta corrente

Aplicação longo prazoAplicação curto prazo

Conta poupança

Herança

Herança

Herança

top related