From 537518fd509b5163bbfae77849aacb927ee358e7 Mon Sep 17 00:00:00 2001 From: Vitor Lobo Ramos Date: Fri, 19 Jul 2024 10:55:17 -0300 Subject: [PATCH] fix txt --- 2024/07/18/oop/index.html | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/2024/07/18/oop/index.html b/2024/07/18/oop/index.html index 333f0f9..77dccd3 100644 --- a/2024/07/18/oop/index.html +++ b/2024/07/18/oop/index.html @@ -201,9 +201,7 @@

Java e Clojure

20 21(defn set-employee-department [employee new-department] 22 (assoc employee :department new-department)) -

Peço desculpas pela confusão. Vou revisar o texto e focar na remoção de redundâncias:

-
-

Aqui, defrecord cria uma estrutura de dados com campos nomeados, gerando funções para acessar e modificar esses campos, promovendo a imutabilidade. Isso reduz a probabilidade de erros comuns, como alterações de estado não intencionais, e simplifica o entendimento, teste e manutenção do código.

+

Aqui, defrecord cria uma estrutura de dados com campos nomeados, gerando funções para acessar e modificar esses campos, promovendo a imutabilidade. Isso reduz a probabilidade de erros comuns, como alterações de estado não intencionais, e simplifica o entendimento, teste e manutenção do código.

Essa abordagem minimiza a cerimônia e o boilerplate típicos da OOP em Java, focando mais nos dados e comportamentos reais do que na estrutura de classes. Além disso, defrecord implementa automaticamente interfaces para serialização e outras funcionalidades, oferecendo mais do que apenas uma simplificação do acesso aos dados.

É essencial reconhecer que muito depende das escolhas e habilidades do desenvolvedor. No entanto, a linguagem, juntamente com seus frameworks, bibliotecas e a filosofia subjacente da POO, tendem a conduzir os desenvolvedores para uma maior complexidade. Java, como uma linguagem projetada com uma forte inclinação para a POO, encoraja a criação de hierarquias de classes e o uso de padrões de design que, embora úteis em muitos contextos, podem adicionar camadas de complexidade não pertinentes à lógica de negócios.

Frameworks Java, como Spring e Hibernate, oferecem ferramentas de abstração poderosas que simplificam o desenvolvimento, mas podem levar a um código altamente acoplado e difícil de gerenciar se não forem usados com discernimento. POJOs e código boilerplate são exemplos de como práticas comuns em Java podem contribuir para a complexidade.