Java foi uma das linguagens que popularizou o uso de Padrões...
Com relação à Linguagem de desenvolvimento JAVA, analise os itens a seguir:
I. O desenvolvimento de aplicações empresariais, APIs RESTful e microsserviços, focando em arquitetura e produtividade, pode ser obtido pelo uso de Frameworks (Spring Boot, Quarkus).
II. A partir do Java 8 (JSR 335: Lambda Expressions for the Java™ Programming Language) houve transição do paradigma puramente imperativo para o paradigma funcional, permitindo que o código Java fosse mais conciso, legível e preparado para processamento paralelo.
III. O acesso a dados em Java pode ocorrer pelo uso de frameworks ORM (Object-Relational Mapping), como o Hibernate, sendo viabilizado de forma robusta pela API JDBC que provê a conectividade base, e evolui para uma gestão estruturada através da especificação Jakarta Persistence (JPA).
Está correto o que se afirma em
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito: E
Fundamento decisivo: O critério decisivo era verificar se os três itens podiam ser considerados verdadeiros em leitura técnica de prova. Como I, II e III se sustentam conceitualmente, a alternativa compatível com o gabarito oficial é a letra E.
- Em itens sobre Java 8, verifique se a afirmação fala em incorporação de recursos funcionais; isso é aceitável, mas não autoriza concluir que a linguagem se tornou puramente funcional.
- Em persistência Java, separe os níveis: JDBC é conectividade base, Hibernate é ORM e JPA/Jakarta Persistence é especificação.
- Em frameworks corporativos Java, afirmações que associam Spring Boot e Quarkus a APIs RESTful, microsserviços e produtividade são compatíveis com o uso técnico consagrado.
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
Não entendi o porquê da alternativa II ser dada como correta. Java em algum momento utilizava "puramente" o paradigma funcional ?
A questão aborda a evolução e o ecossistema moderno da linguagem Java. Todas as afirmações estão corretas, o que torna a alternativa E (I, II e III) a correta.
Aqui está um resumo de cada ponto:
I. Frameworks e Produtividade
O Java moderno é amplamente utilizado para microserviços e APIs RESTful através de frameworks como Spring Boot (o padrão de mercado) e Quarkus (focado em alto desempenho e baixo consumo de memória, ideal para ambientes cloud-native). Eles automatizam configurações complexas, aumentando a produtividade.
II. Java 8 e Paradigma Funcional
O lançamento do Java 8 (JSR 335) foi um marco. Com a introdução de Expressões Lambda e a Stream API, o Java deixou de ser estritamente imperativo/orientado a objetos para aceitar elementos de programação funcional. Isso permitiu um código mais limpo e facilitou o processamento de dados em paralelo.
III. Persistência de Dados (Hibernate e JPA)
O acesso a bancos de dados em Java evoluiu em camadas:
* JDBC: É a base tecnológica que provê a conexão direta com o banco.
* Jakarta Persistence (antigo JPA): É a especificação (o "livro de regras") para mapear objetos Java para tabelas de banco de dados.
* Hibernate: É a implementação mais famosa dessa especificação (o framework ORM que realmente executa o trabalho).
Resumo da Resposta:
* Item I: Verdadeiro (Spring Boot/Quarkus são pilares atuais).
* Item II: Verdadeiro (Java 8 trouxe lambdas e estilo funcional).
* Item III: Verdadeiro (JDBC é a base, JPA a regra e Hibernate a ferramenta).
Tenho visto que as "banquíces" estão incomodando professores também. Isso é ótimo.
Analíse essa afirmação:
A partir do Java 8 (JSR 335: Lambda Expressions for the Java™ Programming Language) houve transição do paradigma puramente imperativo para o paradigma funcional, permitindo que o código Java fosse mais conciso, legível e preparado para processamento paralelo
"
A afirmação contém verdades parciais, mas exageros significativos que precisam ser esclarecidos.
- Java 8 introduziu expressões lambda e API Stream (JSR 335) ✓
- O código pode ficar mais conciso ✓ - Exemplo:
java
- Facilita processamento paralelo ✓ - permite uso eficiente de múltiplos núcleos
AfirmaçãoProblema"Transição do paradigma puramente imperativo"Java nunca foi puramente imperativo - já tinha herança, polimorfismo, encapsulamento (OO desde o início)"para o paradigma funcional"Java não se tornou funcional. Continua sendo multiparadigma com predominância OO"permitindo que o código fosse mais legível"Nem sempre - expressões lambda mal usadas prejudicam legibilidade
Java continua sendo OO:
- Lambdas são implementadas como interfaces funcionais (SAM - Single Abstract Method)
- Não há funções de alta ordem puras no sentido Haskell/Scala
- Tipos ainda são fortemente baseados em classes
Limitações do "funcional" em Java:
- Ausência de imutabilidade por padrão (diferente de linguagens funcionais)
- Efeitos colaterais são comuns e permitidos
- Não há tail call optimization nativo
Legibilidade é subjetiva:
java
A afirmação é imprecisa. O correto seria:
Java é hoje uma linguagem multiparadigma com forte base OO, não uma linguagem funcional.
"
Acho estranho a afirmação II estar correta. Até onde eu sei, o Java sempre foi compatível com o paradigma orientado a objetos. Como a afirmação de que no Java 8 houve transição do paradigma puramente imperativo para o paradigma funcional está correta?
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo