Apostila do ferrari

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1031 palavras )
  • Download(s) : 0
  • Publicado : 4 de junho de 2012
Ler documento completo
Amostra do texto
Módulo 1: Tipos Abstratos de Dados, Objetos
















1- Top-Down Design versus Object-Oriented Design

Ciclo de desenvolvimento de software (tradicional):
• Initiation, Analysis, Design, Implementation, Testing, Maintenance

Objetivo da fase de Design:
• Transformar a especificação funcional do sistema ("o sistema precisa fazer isso, isso, e isso") em um modeloabstrato (versão geral, não muito detalhada) do programa final.

Técnica de projeto "Top-Down"
• A partir da especificação inicial, decompor (funcionalmente) o problema em problemas menores (técnica de refinamentos sucessivos, para algoritmos).

Exemplo: Festa de formatura
1. Arrumar um salão
2. Arrumar comida
3. Arrumar uma banda
4. Cuidar dos convites
• Fazer a lista de convidados• Consultar preços e escolher
• Mandar fazer
• Arrecadar o dinheiro e pagar
• distribuir


Exemplo: vídeo locadora

Sistema
• Módulo alterações na base de dados
• Adicionar ou eliminar cliente
• Adicionar ou eliminar fita
• Módulo consultas à base de dados
• Onde está tal fita?
• Quanto deve tal cliente?
• Relatórios financeiros
• Módulo:transações rotineiras
• empréstimo
• devolução
• pagamento



Object-Oriented Design
• A partir da especificação inicial, identificar os objetos, e a seguir descrever seu comportamento, responsabilidades, componentes e relacionamentos.

Exemplo: vídeo locadora

Objeto Cliente
• Inclui cliente, elimina cliente, quanto deve?
Objeto Fita
• Inclui fita, elimina fita, ondeestá?
Objeto Caixa
• Pagamento
• Relatórios financeiros
Objeto Emprestimo
Objeto Devolução


2- Tipos Abstratos de Dados (TADs)
Uma das motivações: dar ao projetista de software condições de especificar os dados de um programa através de sua funcionalidade sem fornecer detalhes de sua implementação. Ou seja, a especificação abstrata mostra o que é possível FAZER com os dados, oucomo tais dados poderão ser utilizados, sem fornecer detalhes do código que implementa a funcionalidade, ou ainda o comportamento dos dados.

Definição: Um Tipo Abstrato de Dados é uma coleção bem definida de dados, e um grupo de operadores que podem ser aplicados em tais dados.

A especificação de um TAD descreve quais dados podem ser armazenados (características do TAD), como eles podem serutilizados (operações), mas não descreve como isso é implementado no programa.

Assim, um TAD consiste, basicamente de
Uma ESTRUTURA para armazenamento de valores
Um conjunto de OPERADORES para manipulação dos valores armazenados

Característica Fundamental da utilização de um TAD: os valores armazenados na estrutura devem ser manipulados SOMENTE através dos operadores

Exemplos...
|mundoreal |dados de interesse |ESTRUTURA de armazenamento |possíveis OPERAÇÕES |
|[pic] |a idade da pessoa |tipo inteiro |nasce ( i tira alguem do cadastro
begin > altera o cargo
p := l; anterior := nil ; > altera o salário
while (p nil) and (p^.info < x) dobegin
anterior := p ;
p := p^.next;
end;
new( newnode );
newnode^.info := x;
newnode^.next := p;
If anterior = nil {x será o primeiro da lista }
then L := newnode
else anterior^.next := newnode;
end;


6- Algumas Vantagens de TADs e Objetos

13. mais fácil programar (sem se preocupar com detalhes de implantação)
14. mais seguro programar (apenas os métodos do próprio objetoalteram as estruturas locais)
15. maior independência e portabilidade de código (alterações na implementação de um objeto não precisam alterações sua funcionalidade)
16. maior potencial de reutilização de código (pode-se alterar a lógica de um programa sem a necessidade de reconstruir objetos)

conseqüência...
17. custo menor no desenvolvimento de software

Exercício: Construir o algoritmo...
tracking img