Pra quem ficou em duvida de qual usar, usem os dois kkkkkk os records são muito praticos para serem usados como DTOs ou DAOs ja que irão servir meramente para transportar informações representadas da nossa Entidade, enquanto as anotações do lombok são otimas na hora de construir nossa Entidade relacional que precisa ser mais detalhada.
Abandonei o lombok e model mapper nos projetos a partir do java 17. Uso os records como DTOs de requests e response e nos DTOs para consumir outras apis pelo feign, como o codigo fica simples pode ate usar nested
Muito bom, eu ainda uso lombok nos dtos entre camadas, quando tenho que mapear uma entidade para dto com mapstruct por exemplo, mas o response final estou usando sempre o record.
A principal desvantagem do lombok não foi falada no vídeo, entao complementando: O design da JVM foi feito para aceitar manipulação adicional de bytecode tanto em fase de runtime (usado por libs como Hibernate, Spring, etc) quanto em fase de compilação (caso do Lombok). Porém em fase de compilação, qualquer manipulação de bytecode dinamicamente deve ser feita gerando código extra, e não modificando código já existente, ou seja, o correto seria o lombok gerar uma nova classe User com os metodos implementados, o que não acontece, o lombok mexe diretamente na classe que está anotada, mas como? O lombok utiliza a fase de compilação do java para injetar código na AST da linguagem, e esse "hack" é feito no momento do processamento das annotations (annotation processing) da jvm. Isso tudo pode vir a causar uma série de problemas e incompatibilidades, seja em troca de versões do java, algo que muda no compilador, etc. Records é uma solução built-in, implementada pela propria JVM, que promove imutabilidade e reduz consideravelmente o código boilerplate, prefiram sempre Records ao Lombok,
Concordo com vc! Mas já vi muita gente justificar que esse impacto não seria significativo, que uma troca de versão não seria algo traumático de fazer. De fato optar por coisas nativas diminuiu qualquer impacto e é a alternativa que deve ser priorizada, a não ser que realmente não atenda as necessidades da aplicação. O Lombok é bem robusto e está no mercado há bastante tempo, com muitos adeptos em projetos grandes, quem sabe essa implementação dele não seja melhorada no futuro.
@@mrl2_bolonhini Então, existe uma diferença enorme, o Spring faz as "mágicas" com suas anotações em tempo de execução, o famoso "runtime". O Lombok faz tudo em tempo de compilação, quando seu programa está sendo compilado, o código que o Spring gera dinamicamente já está lá, o do lombok ainda não, e tem outro agravante, com eu falei ali, o design da JVM foi pensado pra receber código novo de forma dinâmica e não modificar código existente, o que o lombok faz é modificar as classes que já existem através de uma injeção de código durante a compilação, resumindo: O Spring processa todas as anotações em "runtime", em tempo de execução, seguindo as "regras" do compilador, o lombok não.
Excelente vídeo...🙂 - Builder não me agrada....prefiro um construtor...🤔 - O uso de biblioteca, nesse caso o lombok, agrega a carga intrínseca para aprendizado, saber o que ele faz.🤓 - Records já me agrada 😁
Muito bom o video mesmo essa comparação e explicação! vai ter time (lombok) e time (record) kkk. Eu por exemplo fico dos 2 lados, por que, atualmente na empresa que trabalho utilizo Java 8 sistema legado, então para esse caso vai ser preciso o lombok, porém o record sim é ótimo para sistema que estão com versões compatível removendo a dependência de terceiro que concordo plenamente com você que se por acaso não houver mais manutenção, pode não ser uma boa idea utilizar para um projeto de grande escala e robusto.
Sou sempre a favor de utilizar recursos da linguagem ao invés de bibliotecas de terceiros. O Boiler Plate quem gera para nós é a IDE. Parabéns pelo vídeo!
10:39 Aqui o record me deu uma bugada a primeira vez. Porque está passando os atributos como argumentos e não está declarando private. Antes de voltar o vídeo, fiquei imaginando o que o pessoal ta fazendo com o Java. Até porque tirou o get and set na hora de usar a classe. kkkk
Excelente vídeo! Eu particularmente evito o lombok quando é possível, gosto de evitar ter dependências na minhas aplicações sem a real necessidade delas.
Boa noite Giuliana... Acompanho seus vídeos e sou inscrito em seu canal, com tópicos sensacionais meus parabéns. Não só eu como muitos aqui que acompanha seu maravilhoso trabalho, queria dicas de como ingressar na primeira vaga. Sou formado em Análise e Desenvolvimento de Sistemas, mas como nas faculdades não formam programadores né rsrs.... Atualmente trabalho como analista de infraestrutura Jr. Olha pra ser sincero aprendi muito mais programação com alguns tutoriais e cursos de curta duração do que o tempo perdido na faculdade. Mas quero saber porque é muito difícil conseguir a primeira vaga para trabalhar com programação? Na empresa onde eu trabalho utilizam Java na parte de Backend, mas só contratam programadores Pleno e Sênior e Júnior não tem vez... Em cima disso que mencionei, gostaria de apenas uma dica, as vezes fico pensando, "Se estou na empresa certa para conseguir minha primeira vaga na área, como já sou do TI, imaginava que teria mais chance de ingressar na programação" mesmo sendo Jr.. Forte Abraço e sucesso...
Com certeza trarei vídeo sobre esse assunto! De fato é difícil mesmo para iniciantes, e pra entrar numa vaga muitas vezes a pessoa precisa tentar pra pleno mesmo e continuar estudando para dar conta. Fico devendo esse vídeo, pode deixar! 😊
Agora utilizo records deste modo evito ter dependencias externas, e acredito records chega a ser mais prático como já sobrecarrega por padrão os método toString, hashCode, e para quem já trabalho com kotlin e tentou usar o lombok as vezes o não funcionar dependendo da versão do kotlin que utilizas, mas afirma que Kotlin já interpreta Java 17 (onde foi finalizado os records mas surgio em Java 16 como previous) ainda não testei, mas acho que seria até meio inrrelevante usar records ou lombok em Kotlin. Ainda eu utilizo o lombok por causa do padrão builder que é oferecido pela anotação @Builder, @SuperBuilder.
boa tarde, antes de mais obrigado pelos seus conteúdos, são muitos bons mesmo. boa didática muita calma em explicar. eu queria saber os plugins estalado no VsCode para otimizar a programação em java eu estou a ver muitos autocompletes e códigos gerado parece esta a utilizar inteligência artificial para geração de codigo.
Os autocompletes são do Github Copilot, vc precisa assinar a ferramenta para poder usar a extensão. Ele ajuda para criar projetinhos mais simples, mas pra quem se distrai é bom desabilitar em projetos mais complexos.
Estou construindo um projeto de arquitetura hexagonal em spring e fazendo o isolamento do core/domain, um dia pretendo aproveitar este core numa aplicação utilizando a mesma arquitetura, porém com o quarkus. Posso utilizar lombok para reduzir o tamanho das classes nesse core/domain? Acho que muita gente tem essa dúvida.
Lombok é dependência externa, então eu não usaria, até pq pode gerar alguns problemas de compatibilidade com versões do Java. Maaaass, eu já vi alguns usando justificando que o impacto em caso de mudança não seria tão grande. Então no fim depende, é uma escolha de arquitetura mesmo
Muito bom o conteúdo. Já deixei meu like. Agora fica minha opnião: - Senti falta do builder para os records. - Sobre o eclipse, a configuração do lombok é tão simples quanto ao exemplo mostrado. Não percebo dificuldade como a comentada no vídeo. - E para trabalhar com injeção de dependencia via construtor, senti falta também do @RequiredArgsConstructor
Obrigada pelas dicas! Talvez no eclipse seja mais fácil agora, mas em 2016 tinha que baixar um jar e configurar, e dava uns erros bem estranhos pra mim. De fato os records não tem builder, talvez seja uma melhoria futura, vamos aguardar
Quando estamos usando lombok para criarmos nossos getters and setter para todos os atributos de uma classe não estaríamos ferindo o conceito do encapsulamento ? Para este caso faria sentido termos atributos públicos já que todos poderão ser alterados? Lombok insere código em nosso código!!!
Eu gosto de utilizar record, mas quando sao dtos com um grande número de atributos as vezes fico com duvida se seria melhor utilizar ele ou lombok, o que vc acha?
Eu sempre uso records pra DTOs, até em entidades quando elas não precisam ser mutáveis. O Lombok eu costumo deixar pra entidades do banco que precisam ser atualizadas.
Nesse caso não, quando se usa JPA não dá pra usar records como entidades. Vc pode usar o record pra mapear o resultado das queries, mas para salvar a entidade precisaria de uma classe mutável mesmo.
Para uma pessoa iniciante, a Sra indica que faça da forma que era usado antes (criando manualmente getters e setters) ou usar uma das alternativas? (Lombok e Records)
Eu não cheguei a falar sobre records exclusivamente, apenas venho usando nos vídeos, esse é o vídeo que trago mais informações sobre eles, mas pretendo fazer um pra focar nesse tema
@@giulianabezerra Então confundi com outro vídeo, mas lembro que fez exemplos e usou o pattern with para adicionar valores record após criado, ou estou totalmente enganado e vi em outro vídeo isso
@@EdersonLCaldatto ah, foi na playlist da arquitetura ao deploy, no vídeo sobre spring batch ou no do rest api, na playlist vc vai encontrar isso mesmo!
Lombok tem mais funcionalidades que isso por exemplo nível de abstração de log pelas suas anotações e mais algumas anotações úteis. Concordo que o Record é interessante tem utilidade e facilidade, mas não é exatamente um substituto. Outra coisa, eu era complementarmente contrário ao lombok em sistemas JEE antigos, pois aumentava a complexidade e possibilidade de dar erro no build, pois além da questão de IDE interpretar em runtime através de liba terceiras, tinha a complexidade de maven também ter que ter isso e fazer gerar os códigos que não dão vistos em tempo de build e quebravam, mas isso mudou completamente em sistemas de microservice, onde casa muito a tecnologia e praticamente não tive problemas usando em springboot e quarkus.
no sentido de menos código somente o lombok é bacana, porem o record é um pouco mais que isso(pra não dizer das varias vantagens em uso como DTO), particularmente não uso classe mais como DTO me habituei a usar record e tem funcionado muito bem.
Muito top. Parabéns. Como DTO ficou top. E no caso da Entidade? @Entity... Modelo de domínio? Uso Record ou classe com código boilerplate? Se tiver um video implementando records em camadas, com service, controle... agradeço.
Pode usar em entity tbm, só vai ter uma implementação um pouco diferente por se tratar de objetos imutáveis. Na playlist de desafio de vagas do canal eu implemento alguns projetos usando records em todas as camadas, depois dá uma olhada 😉😔
Depois que eu descobri o lombok uns 4-5 anos atrás nunca mais parei de usar, a função @Data e construtores são realmente muito úteis e quebram um bom galho , já o builder eu acho bem... viajado, nunca curti e definitivamente nunca usei.
Verdade, tem um impacto em tempo de compilação que o lombok traz, que pode deixar builds mais lentos que o uso de records. E sobre o construtor para records acho que precisaria criar as variações desejadas pra ter algo parecido com essa anotação do lombok. Por ser nativo os records vão ser bem mais restritos em funcionalidade, mas aí entra o velho tradeoff 😊
Pra quem ficou em duvida de qual usar, usem os dois kkkkkk os records são muito praticos para serem usados como DTOs ou DAOs ja que irão servir meramente para transportar informações representadas da nossa Entidade, enquanto as anotações do lombok são otimas na hora de construir nossa Entidade relacional que precisa ser mais detalhada.
Concordo!
Boa, não sei se no vídeo ficou parecendo que é apenas um ou outro, de fato dependendo do caso os dois podem ser úteis, como sempre, depende
@@giulianabezerra ficou otima a explicação no video, eu disse mais pra quem ta começando e não tem essa noção ainda.
Uso lombok na entidade e record no dto.
Abandonei o lombok e model mapper nos projetos a partir do java 17. Uso os records como DTOs de requests e response e nos DTOs para consumir outras apis pelo feign, como o codigo fica simples pode ate usar nested
É para mapear oq usa?
Muito bom, eu ainda uso lombok nos dtos entre camadas, quando tenho que mapear uma entidade para dto com mapstruct por exemplo, mas o response final estou usando sempre o record.
Eu gosto do Lombok, continuo utilizando
Que aula!
Gulia, passando só para avisar que estou usando os seus vídeos, basicamente como referência na minha empresa e geral curtiu.
Que ótimo! Vlw demais pelo apoio 🤩🙏
Como bem explicado no final, há suas particularidades na aplicabilidade de ambos.
Excelente abordagem mostrando prós e contras. Por hora fico com o lombok :D
A principal desvantagem do lombok não foi falada no vídeo, entao complementando:
O design da JVM foi feito para aceitar manipulação adicional de bytecode tanto em fase de runtime (usado por libs como Hibernate, Spring, etc) quanto em fase de compilação (caso do Lombok). Porém em fase de compilação, qualquer manipulação de bytecode dinamicamente deve ser feita gerando código extra, e não modificando código já existente, ou seja, o correto seria o lombok gerar uma nova classe User com os metodos implementados, o que não acontece, o lombok mexe diretamente na classe que está anotada, mas como?
O lombok utiliza a fase de compilação do java para injetar código na AST da linguagem, e esse "hack" é feito no momento do processamento das annotations (annotation processing) da jvm. Isso tudo pode vir a causar uma série de problemas e incompatibilidades, seja em troca de versões do java, algo que muda no compilador, etc. Records é uma solução built-in, implementada pela propria JVM, que promove imutabilidade e reduz consideravelmente o código boilerplate, prefiram sempre Records ao Lombok,
Concordo com vc! Mas já vi muita gente justificar que esse impacto não seria significativo, que uma troca de versão não seria algo traumático de fazer. De fato optar por coisas nativas diminuiu qualquer impacto e é a alternativa que deve ser priorizada, a não ser que realmente não atenda as necessidades da aplicação. O Lombok é bem robusto e está no mercado há bastante tempo, com muitos adeptos em projetos grandes, quem sabe essa implementação dele não seja melhorada no futuro.
Estou chegando agora no Java, mas então qual a diferença para as annotations do Spring e porquê ninguém fala em abandoná-lo e fazer tudo na mão?
@@mrl2_bolonhini Então, existe uma diferença enorme, o Spring faz as "mágicas" com suas anotações em tempo de execução, o famoso "runtime". O Lombok faz tudo em tempo de compilação, quando seu programa está sendo compilado, o código que o Spring gera dinamicamente já está lá, o do lombok ainda não, e tem outro agravante, com eu falei ali, o design da JVM foi pensado pra receber código novo de forma dinâmica e não modificar código existente, o que o lombok faz é modificar as classes que já existem através de uma injeção de código durante a compilação, resumindo: O Spring processa todas as anotações em "runtime", em tempo de execução, seguindo as "regras" do compilador, o lombok não.
O que eu gostaria de Java dar suporta construtor nomeado nos records
Excelente comparativo!
otima aula sobre o assunto.
Sensacional :D
Excelente vídeo...🙂
- Builder não me agrada....prefiro um construtor...🤔
- O uso de biblioteca, nesse caso o lombok, agrega a carga intrínseca para aprendizado, saber o que ele faz.🤓
- Records já me agrada 😁
Tbm tendo mais pro lado dos records
O problema do construtor ao invés do builder. Se você pegar uma classe com muito atributos?
Que teclado barulhento viu hahahah Boa explicação @Giuliana.
ótima aula giu, você explica muito bem!!
Muito obrigada 😃
excelente video !
Muito bom o video mesmo essa comparação e explicação! vai ter time (lombok) e time (record) kkk. Eu por exemplo fico dos 2 lados, por que, atualmente na empresa que trabalho utilizo Java 8 sistema legado, então para esse caso vai ser preciso o lombok, porém o record sim é ótimo para sistema que estão com versões compatível removendo a dependência de terceiro que concordo plenamente com você que se por acaso não houver mais manutenção, pode não ser uma boa idea utilizar para um projeto de grande escala e robusto.
Sou sempre a favor de utilizar recursos da linguagem ao invés de bibliotecas de terceiros.
O Boiler Plate quem gera para nós é a IDE.
Parabéns pelo vídeo!
muito bom ❤
como sempre, depende 😁
10:39 Aqui o record me deu uma bugada a primeira vez. Porque está passando os atributos como argumentos e não está declarando private.
Antes de voltar o vídeo, fiquei imaginando o que o pessoal ta fazendo com o Java. Até porque tirou o get and set na hora de usar a classe. kkkk
Excelente vídeo! Eu particularmente evito o lombok quando é possível, gosto de evitar ter dependências na minhas aplicações sem a real necessidade delas.
Boa noite Giuliana...
Acompanho seus vídeos e sou inscrito em seu canal, com tópicos sensacionais meus parabéns.
Não só eu como muitos aqui que acompanha seu maravilhoso trabalho, queria dicas de como ingressar na primeira vaga.
Sou formado em Análise e Desenvolvimento de Sistemas, mas como nas faculdades não formam programadores né rsrs....
Atualmente trabalho como analista de infraestrutura Jr.
Olha pra ser sincero aprendi muito mais programação com alguns tutoriais e cursos de curta duração do que o tempo perdido na faculdade.
Mas quero saber porque é muito difícil conseguir a primeira vaga para trabalhar com programação?
Na empresa onde eu trabalho utilizam Java na parte de Backend, mas só contratam programadores Pleno e Sênior e Júnior não tem vez...
Em cima disso que mencionei, gostaria de apenas uma dica, as vezes fico pensando, "Se estou na empresa certa para conseguir minha primeira vaga na área, como já sou do TI, imaginava que teria mais chance de ingressar na programação" mesmo sendo Jr..
Forte Abraço e sucesso...
Com certeza trarei vídeo sobre esse assunto! De fato é difícil mesmo para iniciantes, e pra entrar numa vaga muitas vezes a pessoa precisa tentar pra pleno mesmo e continuar estudando para dar conta. Fico devendo esse vídeo, pode deixar! 😊
Mais um video top! Pergunta, pq largou o IntelliJ?
Acho o vscode mais enxuto e tem tudo que eu preciso. Fora que já me acostumei com os atalhos de produtividade 😁
Acredito que o Lombok também é útil para usar Logs. Não sei dizer se existe alguma maneira de evitar repetição de códigos sem usar o Lombok para Logs.
Agora utilizo records deste modo evito ter dependencias externas, e acredito records chega a ser mais prático como já sobrecarrega por padrão os método toString, hashCode, e para quem já trabalho com kotlin e tentou usar o lombok as vezes o não funcionar dependendo da versão do kotlin que utilizas, mas afirma que Kotlin já interpreta Java 17 (onde foi finalizado os records mas surgio em Java 16 como previous) ainda não testei, mas acho que seria até meio inrrelevante usar records ou lombok em Kotlin. Ainda eu utilizo o lombok por causa do padrão builder que é oferecido pela anotação @Builder, @SuperBuilder.
Sim, o builder é um recurso bem prático do lombok, eu confesso que não costumo usar lombok, eu evito ao máximo dependências externas no projeto
Legal.🤟
boa tarde, antes de mais obrigado pelos seus conteúdos, são muitos bons mesmo. boa didática muita calma em explicar. eu queria saber os plugins estalado no VsCode para otimizar a programação em java eu estou a ver muitos autocompletes e códigos gerado parece esta a utilizar inteligência artificial para geração de codigo.
Os autocompletes são do Github Copilot, vc precisa assinar a ferramenta para poder usar a extensão. Ele ajuda para criar projetinhos mais simples, mas pra quem se distrai é bom desabilitar em projetos mais complexos.
Construtor compacto - uauuu!!! xD essa me pegou :c)
Oi Giuliana! Qual tema é essa do VSCode e qual essa extensão de auto-complete, por favor? Obrigado!
O tema é o insomnia e a extensão é o copilot, mas essa extensão é paga
Estou construindo um projeto de arquitetura hexagonal em spring e fazendo o isolamento do core/domain, um dia pretendo aproveitar este core numa aplicação utilizando a mesma arquitetura, porém com o quarkus. Posso utilizar lombok para reduzir o tamanho das classes nesse core/domain? Acho que muita gente tem essa dúvida.
Lombok é dependência externa, então eu não usaria, até pq pode gerar alguns problemas de compatibilidade com versões do Java. Maaaass, eu já vi alguns usando justificando que o impacto em caso de mudança não seria tão grande. Então no fim depende, é uma escolha de arquitetura mesmo
@@giulianabezerra Muito obrigado!
Desculpa a ignorância por não entender muito bem sobre as classes imutáveis. Mas há como usar o Records como classe de entidade para o banco de dados?
Muito bom o conteúdo. Já deixei meu like. Agora fica minha opnião:
- Senti falta do builder para os records.
- Sobre o eclipse, a configuração do lombok é tão simples quanto ao exemplo mostrado. Não percebo dificuldade como a comentada no vídeo.
- E para trabalhar com injeção de dependencia via construtor, senti falta também do @RequiredArgsConstructor
Obrigada pelas dicas! Talvez no eclipse seja mais fácil agora, mas em 2016 tinha que baixar um jar e configurar, e dava uns erros bem estranhos pra mim. De fato os records não tem builder, talvez seja uma melhoria futura, vamos aguardar
Quando estamos usando lombok para criarmos nossos getters and setter para todos os atributos de uma classe não estaríamos ferindo o conceito do encapsulamento ?
Para este caso faria sentido termos atributos públicos já que todos poderão ser alterados?
Lombok insere código em nosso código!!!
Eu gosto de utilizar record, mas quando sao dtos com um grande número de atributos as vezes fico com duvida se seria melhor utilizar ele ou lombok, o que vc acha?
Eu sempre uso records pra DTOs, até em entidades quando elas não precisam ser mutáveis. O Lombok eu costumo deixar pra entidades do banco que precisam ser atualizadas.
Giuliana, e qdo tratamos de entidades que tem um ID que é gerado pelo Hibernate por exemplo, tem como usar o Record?
Nesse caso não, quando se usa JPA não dá pra usar records como entidades. Vc pode usar o record pra mapear o resultado das queries, mas para salvar a entidade precisaria de uma classe mutável mesmo.
Para uma pessoa iniciante, a Sra indica que faça da forma que era usado antes (criando manualmente getters e setters) ou usar uma das alternativas? (Lombok e Records)
Pra iniciantes eu indico usar o Java e não focar em frameworks externos, fazer get e set mesmo ou já usar records
Parabéns pelo vídeo Giuliana! Esse autocomplete sinistro que você está usando é extensão de algum copilot? É gratuito?
Kkk, é o copilot e ele é pago, não tem gratuito infelizmente 😔
Não encontrei mais o outro video que você fez falando especificamente sobre record, exclui ele ?
Eu não cheguei a falar sobre records exclusivamente, apenas venho usando nos vídeos, esse é o vídeo que trago mais informações sobre eles, mas pretendo fazer um pra focar nesse tema
@@giulianabezerra Então confundi com outro vídeo, mas lembro que fez exemplos e usou o pattern with para adicionar valores record após criado, ou estou totalmente enganado e vi em outro vídeo isso
@@EdersonLCaldatto ah, foi na playlist da arquitetura ao deploy, no vídeo sobre spring batch ou no do rest api, na playlist vc vai encontrar isso mesmo!
Lombok tem mais funcionalidades que isso por exemplo nível de abstração de log pelas suas anotações e mais algumas anotações úteis. Concordo que o Record é interessante tem utilidade e facilidade, mas não é exatamente um substituto. Outra coisa, eu era complementarmente contrário ao lombok em sistemas JEE antigos, pois aumentava a complexidade e possibilidade de dar erro no build, pois além da questão de IDE interpretar em runtime através de liba terceiras, tinha a complexidade de maven também ter que ter isso e fazer gerar os códigos que não dão vistos em tempo de build e quebravam, mas isso mudou completamente em sistemas de microservice, onde casa muito a tecnologia e praticamente não tive problemas usando em springboot e quarkus.
no sentido de menos código somente o lombok é bacana, porem o record é um pouco mais que isso(pra não dizer das varias vantagens em uso como DTO), particularmente não uso classe mais como DTO me habituei a usar record e tem funcionado muito bem.
o record do Java é equivalente ao data class do Kotlin, mas o data class dá pra ser mutável se quiser
Kotlin 1 x Java 0 :P
Muito top. Parabéns. Como DTO ficou top. E no caso da Entidade? @Entity... Modelo de domínio? Uso Record ou classe com código boilerplate? Se tiver um video implementando records em camadas, com service, controle... agradeço.
Pode usar em entity tbm, só vai ter uma implementação um pouco diferente por se tratar de objetos imutáveis. Na playlist de desafio de vagas do canal eu implemento alguns projetos usando records em todas as camadas, depois dá uma olhada 😉😔
@@giulianabezerra Vou sim. Muito grato.
Depois que eu descobri o lombok uns 4-5 anos atrás nunca mais parei de usar, a função @Data e construtores são realmente muito úteis e quebram um bom galho , já o builder eu acho bem... viajado, nunca curti e definitivamente nunca usei.
Builder é costume, é mais legível depois que vc acostuma, em relação a um construtor com vários parâmetros
Caramba assunto bem complicado de se ter uma resposta, porém no meu caso continuarei usando lombok. o Record ainda nao cobre tudo que preciso.
Verdade, eu uso os 2, só que uso mais os records mesmo, é que tem situações que preciso do objeto mutável, aí volto pro Lombok.
Excelente aula. Mas na questão de desempenho é o mesmo?
Tem algo no Record igual ao @RequiredArgsConstructor do lombok?
Verdade, tem um impacto em tempo de compilação que o lombok traz, que pode deixar builds mais lentos que o uso de records. E sobre o construtor para records acho que precisaria criar as variações desejadas pra ter algo parecido com essa anotação do lombok. Por ser nativo os records vão ser bem mais restritos em funcionalidade, mas aí entra o velho tradeoff 😊