Rigidez é a tendência de um software ser difícil de modificar. Cada… — Questão 20 · ENADE 2019 — Engenharia de Computação (INEP) Ir para o conteúdo
Universo Concursos
Buscar no site
Resolver questões

Prova do ENADE 2019 — Engenharia de Computação (INEP)

  • 0respondidas

  • 0acertos

Pausar

INEP, ENADE

questão 11 de 19, número 20 na prova

Rigidez é a tendência de um software ser difícil de modificar. Cada mudança causa uma cascata de mudanças subsequentes em módulos dependentes. O trecho de código a seguir faz parte de um sistema com suporte à comunicação entre diferentes dispositivos de comunicação via rádio (modems):

1 struct Modem { enum Type {hayes, courrier, ernie) type; };

2 struct Hayes { 3 Modem::Type type;

4 // Detalhes do modem tipo Hayes 5 };

6 struct Courrier { 7 Modem::Type type;

8 // Detalhes do modem tipo Courrier 9 };

10 struct Ernie { 11 Modem::Type type;

12 // Detalhes do modem tipo Ernie 13 };

14 void LogOn(Modem& m, string& frq, string& user, string& pw) { 15 if (m.type == Modem::hayes)

16 OpenHayesChannel((Hayes&)m, frq);

17 else OpenCourrierChannel((Courrier&)m, frq);

18 // depois de conectado, enviar user, pw, etc.

19 // (continua)

Disponível em: Acesso em: 15 jun. 2019 (adaptado).

Nesse trecho, cada tipo de modem tem suas particularidades e foram criadas estruturas específicas para cada tipo (linhas 2 a 13). Um "enumeration" (linha 1) é utilizado para identificar o tipo de modem. O procedimento (linhas 14 a 19) é responsável por realizar a conexão a um modem. Dados o tipo LogOn do modem (m), a frequência (frq), o nome de usuário (user) e a senha (pw), inicialmente, é feita a abertura do canal de comunicação, que corresponde a uma chamada específica para cada tipo de modem (linhas 15 a 17). Como os modems do tipo e são similares em termos de abertura de Courrier Ernie canal, o programador decidiu otimizar o código, utilizando a função do modem para ambos Courrier (OpenCourrierChannel - linha 17). Uma vez conectado, o código continua o processo de na LogOn linha 18 em diante.

Nesse projeto do código um sintoma de rigidez é que

Questões parecidas

Ver todas desta matéria

Ainda não há outras questões de Engenharia de Computação em outras provas do acervo.