Questão de Engenharia de Software — Desenvolvimento de Software — CESGRANRIO 2024
Engenharia de SoftwareDesenvolvimento de Software
- Código
- cg022257
- Banca
- CESGRANRIO
- Órgão
- IPEA
- Ano
- 2024
- Nível
- Superior
- Cargo
- Técnico de Planejamento e Pesquisa - Desenvolvimento de Sistemas
Um antigo sistema usado pelo Ipea para produzir gráficos socioeconômicos dos estados e municípios brasileiros é composto pelas seguintes classes:
Esse design original atendia bem às necessidades de geração de gráficos. Com o passar do tempo, entretanto, surgiram novas demandas sobre dados dos municípios, o que obrigou os desenvolvedores a inserir novas operações na classe Municipio. Essas mudanças produziram as seguintes alterações no design original:
Essas alterações trariam alguns efeitos colaterais, pois, como o acesso aos dados de um município é feito por meio de operações definidas na classe Estado, quanto mais solicitações sobre os municípios houver, maior será o número de operações inseridas na classe Estado, com o único intuito de prover dados sobre os municípios localizados nesses estados. Sendo assim, os desenvolvedores do Ipea refatoraram o código existente e produziram o seguinte design:
A partir de então, as solicitações de dados sobre os municípios para a geração de gráficos passaram a ser feitas diretamente aos objetos da classe Municipio, sem a intermediação da classe Estado.Que refatoração foi aplicada?
Esse design original atendia bem às necessidades de geração de gráficos. Com o passar do tempo, entretanto, surgiram novas demandas sobre dados dos municípios, o que obrigou os desenvolvedores a inserir novas operações na classe Municipio. Essas mudanças produziram as seguintes alterações no design original:
Essas alterações trariam alguns efeitos colaterais, pois, como o acesso aos dados de um município é feito por meio de operações definidas na classe Estado, quanto mais solicitações sobre os municípios houver, maior será o número de operações inseridas na classe Estado, com o único intuito de prover dados sobre os municípios localizados nesses estados. Sendo assim, os desenvolvedores do Ipea refatoraram o código existente e produziram o seguinte design:
A partir de então, as solicitações de dados sobre os municípios para a geração de gráficos passaram a ser feitas diretamente aos objetos da classe Municipio, sem a intermediação da classe Estado.Que refatoração foi aplicada?- AHide Delegate
- BRemove Middle Man
- CReplace Data Value with Object
- DDuplicate Observed Data
- EDecomposing Methods