Em relação às linguagens de programação, é correto afirmar ...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa D é a correta: A linguagem Java é baseada em C++, mas foi projetada para ser menor, mais simples e mais confiável. Vamos entender o porquê.
Java foi desenvolvida para ser uma linguagem de programação que herdasse aspectos positivos de C++, mas que fosse mais simples e eliminasse certas complexidades e recursos considerados propensos a erros, como a manipulação direta de ponteiros.
Agora, vamos analisar as alternativas incorretas:
A - A afirmação de que Java e C++ são linguagens orientadas a objetos não baseadas no paradigma imperativo está incorreta. Ambas são de paradigma imperativo, além de suportarem a programação orientada a objetos. O paradigma imperativo é caracterizado por comandos que mudam o estado do programa através de instruções de controle de fluxo.
B - Esta alternativa menciona que Smalltalk não apresenta suporte completo à orientação a objetos, o que é incorreto. Smalltalk é conhecida por ter sido uma das primeiras linguagens a implementar completamente o paradigma orientado a objetos, influenciando várias linguagens que vieram depois.
C - Aqui, a afirmação diz que linguagens de scripting como Perl, JavaScript e Ruby não são imperativas em todos os sentidos. Isso está incorreto, pois essas linguagens são, sim, baseadas no paradigma imperativo, embora também possam suportar outros paradigmas, como o funcional.
E - Lua foi, de fato, projetada na PUC-Rio, mas a parte que afirma que ela oferece suporte à programação não procedural e não funcional está incorreta. Lua é uma linguagem procedural que também suporta programação funcional, e até mesmo orientada a objetos através de metatables.
Espero que essa explicação tenha esclarecido suas dúvidas sobre as linguagens de programação mencionadas na questão. Caso tenha mais perguntas, estou à disposição para ajudar.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Letra D ao pé da letra
Conceitos de linguagens de programação 11ed pg: 88
Por Robert W. Sebesta
por que não a letra A?
a) Java e C++ são linguagens orientadas a objetos não baseadas no paradigma imperativo. (ERRADA)
Segundo Sebesta, 9ª edição, página 114: "2.17 UMA LINGUAGEM ORIENTADA A OBJETOS BASEADA NO PARADIGMA IMPERATIVO: JAVA"
b) Smalltalk foi a primeira linguagem de programação que ofereceu suporte à orientação a objeto. No entanto, devido à sua natureza precursora, não apresenta suporte completo a esse tipo de paradigma.
Segundo Sebesta, 9ª edição, página 108: "Smalltalk foi a primeira linguagem de programação que ofereceu suporte completo à programação orientada a objetos".
c) As linguagens de scripting, dentre elas Perl, JavaScript e Ruby, não são imperativas em todos os sentidos. (ERRADA)
Segundo Sebesta, 9ª edição, página 44: As linguagens de scripting, dentre elas Perl, JavaScript e Ruby, são imperativas em todos os sentidos.
d) A linguagem Java é baseada em C++, mas foi projetada para ser menor, mais simples e mais confiável.
GABARITO: retirado da página 115 do Sebesta, 9ª edição.
e) Lua foi projetada na Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) e oferece suporte à programação não procedural e não funcional.
Segundo Sebesta, 9ª edição, página 44: "É uma linguagem de scripting que oferece suporte para programação procedural e funcional com extensibilidade como um de seus objetivos primários."
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo