Laboratório de Programação II: Tipo Abstrato de Dados (TAD)
1. Tipo Abstrato de Dados (TAD)Tipo Abstrato de Dados (TAD)
Prof. Alex Camargo
alexcamargoweb@gmail.com
UNIVERSIDADE FEDERAL DO PAMPA
CAMPUS BAGÉ
LABORATÓRIO DE PROGRAMAÇÃO II
2. 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)
3. 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)
4. 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)
5. 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)
6. 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)
7. 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)
11. 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)
12. 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)