Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

DÚVIDA_01_Modelagem de bancos: Atributo de Especialização

Professor.

Minha dúvida é em relação as chaves do atributo principal e as entidades do Atributo de Especialização.

Em aula passada, foi dito que quando houvesse Atributo de Especialização, todas as chaves do atributo principal desceriam para as entidades especializadas. Entretanto, nessa aula, tudo foi mantido no atributo principal cliente.

Afinal, qual o correto?

Vídeo: https://cursos.alura.com.br/course/modelagem-banco-relacional-entidade-relacionamento-atributo/task/73038

4 respostas

Olá Thiago, tudo bem?

Peço desculpas pela demora no retorno.

Quando utilizamos a generalização\especialização, os atributos da entidade principal devem ser herdados pela entidade especializada. Mas, no momento de representar no modelo, os atributos gerais, ou seja, os que são herdados pelas entidades especialistas,são realmente representados na entidade principal.

E um do motivos que podemos pensar e levar em consideração sobre essa representação é que em uma generalização\especialização, podemos ter mais de duas especializações, então ao invés de repetir os atributos para todas as especializações, que isso seria um retrabalho, eles são representados na entidade principal e herdados pelas especialistas, mas não precisamos representá-los diretamente na entidade especialista.

Acredito que o instrutor utilizou a representação no momento da explicação, para que fosse possível visualizar de uma forma mais clara o conceito de herança na prática.

Qualquer dúvida é só falar Thiago que estarei a disposição para ajudar!

Bons estudos!

Olá, Danielle...tudo bem e com você?

Então, numa aula anterior (https://cursos.alura.com.br/course/modelagem-banco-relacional-entidade-relacionamento-atributo/task/73029) o professor demonstra exatamente isso aqui:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Perceba que no exemplo teórico acima, foram repedidos os atributos nas entidades especializadas.

Já na aula da minha pergunta, foi colocada assim:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Perceba que, nesse exemplo prático, não foram repetidos os atributos nas entidades especializadas.

Comprendi o que você falou na sua resposta, sobre a questão de retrabalho, mas perceba que explicar um mesmo conteúdo separadamente de duas formas (teórico e prático) confunde bastante.

Então, sobre isso, fica minha pergunta final:

A necessidade de replicação dos atributos para as entidades especialistas fica só subtendida por conta do simbolismo de especialização no esquema?

solução!

Realmente é verdade Thiago, a forma como o instrutor abordou o assunto, acabou deixando as coisas um pouco confusas. Mas, irei tentar explicar melhor para que você possa entender.

Associado ao conceito de generalização\especialização, associamos a herança, já que subentendemos que os atributos da entidade principal (genérica), serão herdados pelas entidades especialistas.

Como por exemplo, em um hospital é necessário realizar o cadastro dos médicos, mas neste hospital existem os médicos que são efetivos e os médicos que são apenas residentes. Porém, são solicitadas as mesmas informações para todos os médicos, tanto os residentes como os efetivos:

Representando em duas entidades separadas

Então ao invés de criar duas entidades diferentes, que irão conter os mesmo campos, utilizamos a generalização\especialização em uma única entidade, onde a entidade MÉDICO será a generalização e se o médico é RESIDENTE ou EFETIVO, são as especializações:

Generalização e especialização

Então representamos os atributos gerais, ou seja, os que são comuns para as duas especializações na entidade principal e nas entidades especialistas os atributos específicos de cada uma:

generalização e especialização

Quando falamos que as entidades especialistas herdam os atributos da entidade principal, estamos dizendo que, quando vamos realizar o cadastro de um médico,vamos informar se ele é residente ou efetivo, e vamos informar apenas o atributo específico de cada um, se ele for residente, será o número do contrato, e se ele for efetivo será o número da carteira de trabalho, por exemplo. Mas nos dois casos, sempre vamos informar também todos os atributos da entidade principal. Por este motivo, é utilizado também o conceito de herança quando utilizamos a generalização\especialização.

Então Thiago, no momento de representar em modelo, os atributos gerais são sempre representados na entidade principal por serem utilizados por todas as entidades especialistas e os atributos específicos serão cadastrados cada um, na sua entidade especialista, pois eles só serão utilizados por ela.

Peço desculpas pela demora no retorno Thiago, estarei respondendo também às dúvidas dos seus outros tópicos, mas qualquer nova dúvida é só falar!

Oie, Dani.

Entendi tudo que você falou.

E sim, o treinamento, além de ter falhas técnicas, tem conceitos sendo explicados de diversas formas e de forma espaçada, assim causando confusão no entendimento do aluno.

Só to pegando esses pontos porque estou olhando com muito detalhe e anotando porque sei o quão importante é essa parte para banco de dados e manipulações.

Reforço a necessidade de utilização de design na explicaões, com o objetivo de facilitar ao maximo a comprensão, e também de fazer algo mais enxuto.

No mais, agradeço muito a paciência da equipe e sua nas esplicações!