SóProvas


ID
2431642
Banca
IESES
Órgão
CREA-SC
Ano
2017
Provas
Disciplina
Engenharia de Software
Assuntos

Assinale a alternativa que define claramente o conceito de coesão:

Alternativas
Comentários
  • Fonte Ipsis Litteris: "Coesão está, na verdade, ligado ao princípio da responsabilidade única, que foi introduzido por Robert C. Martin no inicio dos anos 2000 e diz que uma classe deve ter apenas uma única responsabilidade e realizá-la de maneira satisfatória, ou seja, uma classe não deve assumir responsabilidades que não são suas."

    http://www.devmedia.com.br/entendendo-coesao-e-acoplamento/18538

     

    Gabarito: d)

  • Além da qustão apresentar problema de Português, informa erroneamente que Martin (Quem?) "apresentou" esse conceito.

    "The 1970s and 1980s were a fertile time for principles of software architecture. Structured Programming and Design were all the rage. During that time the notions of Coupling and Cohesion were introduced by Larry Constantine, and amplified by Tom DeMarco, Meilir Page-Jones and many others."

    "The software metrics of coupling and cohesion were invented by Larry Constantine in the late 1960s as part of Structured Design, based on characteristics of “good” programming practices that reduced maintenance and modification costs."

    https://8thlight.com/blog/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html
    https://en.wikipedia.org/wiki/Cohesion_(computer_science)

     

    Cleiton Bittencourt encontrou de onde a banca retirou aquele texto, porém, perceba que o exemplo informado logo na sequência (classe Programa) tem um problema no método gravarProdutoDB, já que lhe faltam parêntesis. Por esse motivo, esse exemplo, presente em uma questão da SPTrans 2012, houve discussão aqui mesmo no Qconcursos.

    Ou seja, o post na DevMedia contém problemas e é usado de forma imprudente por bancas de concursos.