Questão de Engenharia de Software — Refatoração — IV - UFG 2018
Engenharia de SoftwareRefatoração
- Código
- qq329347
- Banca
- IV - UFG
- Órgão
- Câmara de Goiânia - GO
- Ano
- 2018
- Nível
- Superior
- Cargo
- CS-UFG - - Assessor Técnico Legislativo - Analista de Sistemas
Sejam as classes A e B tais que o relacionamento entre elas é dado pelo fato de A usar (referenciar) a classe B. Dessa forma, qual das refatorações a seguir implementa o princípio da inversão de dependência?
- ACria interface para serviços oferecidos por B; a classe A passa a usar a interface criada; a classe B passa a implementar a interface criada; a classe A não usa mais a classe B.
- BCria interface para serviços oferecidos por A; a classe A passa a implementar a interface criada; a classe B passa a usar a interface criada; a classe A não usa mais a classe B.
- CCria um relacionamento de herança entre as classes A e B (A torna-se uma especialização de B); métodos da classe B empregados pela classe A são migrados para a classe A; a classe A não usa mais a classe B.
- DCria uma referência para a classe B na classe A; cria um método para receber uma instância de B (injeção de dependência) e guarda-a na referência criada; a classe A não usa mais a classe B.