As linguagens de programação imperativa são também chamadas de linguagens procedurais devido ao fato de permitirem uma certa estruturação do código construído. Acerca desse conceito, assinale a alternativa que apresenta uma desvantagem dessa característica:
Questão
As linguagens de programação imperativa são também chamadas de linguagens procedurais devido ao fato de permitirem uma certa estruturação do código construído. Acerca desse conceito, assinale a alternativa que apresenta uma desvantagem dessa característica:
Alternativas
a) Falta de recursos de implementação de código recursivo.
b) Dificuldade em legibilidade do código.
c) Falta de recursos de comandos interativos.
d) Falta de flexibilidade dado o caráter sequencial das instruções.
e) Dificuldade de disponibilidade de linguagens de programação no mercado.
Explicação
Linguagens imperativas/procedurais organizam o programa como uma sequência de comandos (passos) que alteram o estado do sistema. Essa estruturação costuma ajudar a construir o algoritmo de forma direta, mas traz como desvantagem a forte dependência do fluxo sequencial de execução (controle passo a passo), o que pode reduzir a flexibilidade para modelar certos problemas de outra forma (por exemplo, de maneira mais declarativa), além de aumentar o acoplamento à ordem das instruções.
Analisando as alternativas:
- a) Incorreta. Linguagens procedurais geralmente suportam recursão (C, Pascal, etc.).
- b) Incorreta como desvantagem “dessa característica”. A estruturação procedural tende a melhorar a organização/legibilidade em muitos casos; a dificuldade de legibilidade não é a desvantagem típica associada ao conceito de “procedural por ser sequencial”.
- c) Incorreta. “Comandos interativos” não é uma limitação inerente ao paradigma procedural.
- d) Correta. A sequencialidade do paradigma imperativo pode ser vista como menor flexibilidade na construção/expressão do programa, pois o foco é “como fazer” passo a passo.
- e) Incorreta. Disponibilidade no mercado não depende do fato de ser procedural.
Alternativa correta: (d).