SóProvas


ID
142213
Banca
CESGRANRIO
Órgão
BNDES
Ano
2009
Provas
Disciplina
Engenharia de Software
Assuntos

O principal sistema de informação de uma empresa, desenvolvido internamente, contém regras de negócio no código da interface de usuário. Qual a técnica de refatoração que o arquiteto de software pode indicar para melhorar consideravelmente o sistema nesse caso?

Alternativas
Comentários
  • Tease Apart Inheritance quando você tem uma hierarquia de herança que realiza dois trabalhos ao mesmo tempo.

    Convert Procedural Design to Objects quando você tem código escrito em estilo procedural.

    Separate Domain from Presentation quando você tem classes de GUI que contém lógica do domínio.

    Extract Hierarchy quando você tem uma classe que está fazendo muito trabalho, principalmente através de muitos comandos condicionais
  • Martin Fowler sugere com a técnica de PresentationDomainSeparation "[...] keeping a good separation between the presentation aspects of a program (the user interface) and the rest of the functionality. "

    "[...] Presentation logic and domain logic are easier to understand when separate. [...]"

    "[...] You can support multiple presentations on the same base program without duplicating code. [...]"

    "[...] Despite these many advantages, I often see this principle violated. I think this is partly due to lack of knowledge, and partly due to the fact that many frameworks make it much too easy to intermix domain logic into the presentation, and make it harder to maintain the separation. [...]"

    Fonte: https://martinfowler.com/bliki/PresentationDomainSeparation.html