Laboratório de Programação II: Tipo Abstrato de Dados (TAD)
alexcamargoweb
1,870 views
12 slides
Feb 26, 2015
Slide 1 of 12
1
2
3
4
5
6
7
8
9
10
11
12
About This Presentation
Laboratório de Programação II: Tipo Abstrato de Dados (TAD)
Size: 154.6 KB
Language: pt
Added: Feb 26, 2015
Slides: 12 pages
Slide Content
Tipo Abstrato de Dados (TAD)Tipo Abstrato de Dados (TAD)
Prof. Alex Camargo [email protected]
UNIVERSIDADE FEDERAL DO PAMPA
CAMPUS BAGÉ
LABORATÓRIO DE PROGRAMAÇÃO II
Introdução
Para implementar um Tipo Abstrato de Dados em C, usa-se a
definição de tipos juntamente com a implementação de funções
que agem sobre aquele tipo.
O usuário só "enxerga" a interface, não a implementação .
O TAD encapsula a estrutura de dados . Os usuários do TAD
só tem acesso a algumas operações disponibilizadas sobre
esses dados.
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Tipo de dados, estruturas de dados
e tipo abstrato de dados
Termos parecidos, mas com significados diferentes:
O tipo de dado de uma variável o conjunto de valores que ela
pode assumir. Ex.: variável float pode assumir números reais.
Um tipo estruturado é um exemplo de estrutura de dados, ou
seja, são estruturas de dados já pré-definidas na linguagem de
programação. Ex: vetores, structs, unions.
Um tipo abstrato de dados agrupa a estrutura de dados
juntamente com as operações que podem ser feitas sobre
esses dados. Usualmente, typedef + structs + funções.
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Vantagens
Vantagens do uso de TADs:
Reuso: Podemos modificar a implementação do TAD sem
modificar o código que usa o TAD, e vice-versa.
Manutenção: TAD pode ser reaproveitado em vários
programas ou módulos.
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Implementação
Como boa regra de programação, evita-se acessar o dado
diretamente, fazendo o acesso somente através das funções.
Em linguagens orientadas a objeto (C++, Java) a
implementação é feita através de classes.
Em linguagens estruturadas (C, Pascal) a implementação é
feita pela definição de tipos e implementação de funções.
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Modularização
Outra boa técnica de programação é implementar os TADs em
arquivos separados do programa principal. Geralmente separa-se o
TAD em dois arquivos:
NomeDoTAD.h : com a declaração
NomeDoTAD.c : com a implementação
Os programas que utilizam o seu TAD devem dar um include no
arquivo .h
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Exemplo
Implemente um TAD conta bancária com campos número e saldo
que suporte as as seguintes operações:
- Iniciar uma nova conta com um número e saldo
- Depositar um valor na conta
- Sacar um valor da conta
- Imprimir o saldo
- Faça um pequeno programa para testar o seu TAD
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Exemplo (contaBancaria.h)
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Exemplo (contaBancaria.c)
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Exemplo (main.c)
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Considerações finais
Um TAD define:
um novo tipo de dado;
o conjunto de operações para manipular dados desse tipo.
Um TAD facilita:
a manutenção e a reutilização de código;
abstrato = "forma de implementação não precisa ser
conhecida".
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)
Exercício
Implemente um TAD funcionário com campos matrícula e salario
que suporte as as seguintes operações:
- Cadastrar um novo funcionário com a matrícula e salário
- Atribuir férias (50%) ao salário
- Atribuir comissão (x%)
- Atribuir faltas (cada falta representa um desconto de 10%)
- Exibir os dados do funcionário
- Faça um pequeno programa para testar o seu TAD
Laboratório de Programação II – Tipo Abstrato de Dados (TAD)