Explique a diferença entre agregação e composição na modelagem de objetos e dê um exemplo prático de cada um…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Explique a diferença entre agregação e composição na modelagem de objetos e dê um exemplo prático de cada um, indicando multiplicidades e justificando a escolha.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Resposta modelo: Definições: - Agregação: é um tipo de associação fraca entre objetos, em que uma entidade (todo) tem referências para outras entidades (partes), mas as partes podem existir independentemente do todo. Em UML costuma-se representar com um losango vazio. - Composição: é uma associação forte e de propriedade, onde a parte tem sua existência dependente do todo; se o todo for destruído, normalmente as partes também deixam de existir. Representa-se com um losango preenchido em UML. Exemplo de agregação: - Sistema: Turma e Aluno - Justificativa: Um Aluno pode pertencer a uma Turma, mas também pode existir independentemente (pertencer a outra turma ou não estar matriculado momentaneamente). A relação é "Turma" (1) ---- (0..*) "Aluno". - Multiplicidades: Turma 1 ---- 0..* Aluno. Os alunos existem fora da turma, portanto é agregação. Exemplo de composição: - Sistema: Casa e Comodo (cômodo) - Justificativa: No contexto do modelo, um Cômodo é parte integral de uma Casa; se a casa for demolida, os cômodos, como entidades, deixam de existir no mesmo contexto. A relação é Casa (1) ---- (1..*) Cômodo. - Multiplicidades: Casa 1 ---- 1..* Cômodo. A existência dos cômodos depende da casa (composição). Quando usar cada uma: - Use agregação quando as partes têm identidade própria e podem sobreviver sem o todo; é útil para modelar relações de associação com menor acoplamento. - Use composição quando a parte não faz sentido sem o todo e quando se deseja indicar responsabilidade de ciclo de vida (criação/remoção) pelo todo. Observações práticas: - A distinção também costuma orientar decisões de implementação e persistência: composição pode indicar que a tabela da parte é dependente da tabela do todo (chave estrangeira com cascata), enquanto agregaçãosugere independência. - Nem sempre é necessário complicar o modelo com composição se a independência das partes não influenciará requisitos; a escolha deve ser guiada por restrições de domínio e comportamento esperado.
Explicação
A explicação apresentada distingue claramente agregação e composição, abordando suas definições e características fundamentais. Os exemplos práticos ilustram como as entidades se relacionam, evidenciando a dependência ou independência da existência das partes em relação ao todo. Além disso, a discussão sobre quando usar cada tipo de relação oferece um entendimento mais profundo sobre a modelagem de objetos e suas implicações no design de sistemas.
Raio-X da questão
agregação e composição
avaliacao
modelagem orientada a objetos · relacoes entre objetos
Revisar os conceitos de agregação e composição na modelagem de objetos.
Confundir agregação com composicao, nao diferenciando a dependencia e ciclo de vida dos objetos envolvidos.
pensamento_critico
abstrato
Questões parecidas com resolução
- Explique como a modelagem de objetos pode ser aplicada em um projeto de software, dando exemplos práticos.
- Explique como a modelagem de objetos pode ser aplicada em um projeto de software, citando um exemplo prático.
- Explique o conceito de modelagem de objetos na computação e como ele pode ser utilizado para representar dados do mundo…
- Descreva a importância da modelagem de objetos na programação e como ela auxilia na organização e implementação de…
- Explique como a modelagem de objetos pode facilitar a resolução de problemas complexos em algoritmos. Cite um exemplo.
- Explique como a modelagem de objetos pode ser utilizada para melhorar um projeto de software, considerando atributos e…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
