Project Lombok es una biblioteca Java popular que tiene como objetivo reducir el código repetitivo y mejorar la productividad de los programadores ahorrando mucho tiempo y energía al proporcionar anotaciones para generar automáticamente código Java común durante el tiempo de compilación.
Project Lombok aborda la verbosidad de Java al ofrecer anotaciones que eliminan la necesidad de escribir manualmente construcciones de código repetitivas, como métodos getters, setters, constructores, iguales, hashCode y toString. Al anotar campos o clases con anotaciones Lombok, los programadores pueden indicarle al compilador que genere estos métodos automáticamente, reduciendo la cantidad de código repetitivo y haciendo que las clases Java sean más compactas y legibles.
El uso de Project Lombok en Java ofrece varios beneficios atractivos que contribuyen a mejorar la productividad, la calidad del código y la capacidad de mantenimiento.
Aquí hay algunas razones para elegir Project Lombok.
Reduce el “Código repetitivo”.
También mejora la reutilización y legibilidad de los códigos.
Es muy sencillo de implementar y no tiene ninguna complejidad.
Se integra fácilmente con “IDE”.
La mayoría de nuestros proyectos se basan en Maven. Entonces, solo tenemos que agregar las dependencias del “Proyecto Lombok” a nuestro archivo “Pom.xml” presente en nuestro proyecto.
Vaya al repositorio de Maven y copie el repositorio de Lombok Maven desde allí, agregue la última dependencia de Lombok en su “Pom.xml” y guárdela, luego actualice el proyecto.
En Java, con diferencia la práctica más común es agregar captadores y definidores utilizando el patrón “Java Beans”. La mayoría de los IDE generan código automáticamente para estos patrones.
Veamos cómo el código comprende este enfoque creando captadores y definidores con la ayuda de "Objetos de datos" y "Fábrica de datos":
Objeto de datos sin Lombok
Si bien el enfoque tradicional de JavaBeans para crear métodos getter y setter manualmente hace el trabajo, tiene varios inconvenientes y limitaciones que lo hacen menos deseable, especialmente en los entornos de desarrollo Java modernos, sus inconvenientes se cubren principalmente en Lombok.
Entonces, en lugar de esto, preferimos usar el patrón Lombok. Así es como se puede implementar en Java:
Constructores sin Lombok tenemos que definir manualmente cada constructor, lo que puede ser tedioso y propenso a errores, especialmente para clases con muchos campos. Además, necesitamos manejar varias configuraciones del constructor, lo que puede aumentar la complejidad del código.
Lombok simplifica este proceso con las anotaciones @NoArgsConstructor, @AllArgsConstructor y @RequiredArgsConstructor.
Constructores sin Lombok
El uso de anotaciones de Lombok reduce la cantidad de código repetitivo que debe escribirse manualmente. Con Lombok, simplemente anota la clase y los campos, y los constructores se generan automáticamente según los criterios especificados. Esto conduce a un código más limpio y conciso.
Sin utilizar la función de anotaciones ToString
2. Generación EqualAndHashCode
Sin usar la función de anotaciones EqualAndHashCode
3. Anotaciones de datos
Sin utilizar anotaciones @data, tenemos que implementar manualmente las funciones getters, setters y Constructors en nuestro código.
Sin utilizar la función Anotaciones de datos
La anotación @data es un atajo conveniente que incluye @Getter, @setter, @NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor, @ToString, @EqualsAndHashCode y muchas más anotaciones.
Usando @data, Lombok genera automáticamente estos métodos en función de los campos declarados en la clase. Esto reduce significativamente la cantidad de código repetitivo que necesitamos escribir y mantener, lo que hace que nuestro código sea más conciso y legible.
paquete org.ejemplo.objetos de datos;
importar lombok.*;
@Adquiridor
@setter
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@ToString(excluir = {"designación"})
@EqualsAndHashCode
@constructor
@datos
Perfil de clase pública {
cadena privada nombre;
cadena privada apellido;
designación de cadena privada;
edad int privada;
public static void main(String[] args) {
// Creando una instancia de perfil usando el constructor
Perfil perfil = Profile.builder()
.primerNombre("Parte")
.apellido("Kathrotiya")
.designation("Ingeniero de automatización de control de calidad")
.edad(23)
.construir();
}
}
Delombok
Si bien esta publicación destaca las funciones que considero más beneficiosas, Lombok ofrece una gran cantidad de funcionalidades y personalizaciones adicionales.
La documentación de Lombok es un recurso invaluable que proporciona explicaciones detalladas y ejemplos para cada anotación. Si esta publicación te intriga, te insto a que profundices en la documentación de Lombok para descubrir aún más posibilidades.
Además, el sitio del proyecto ofrece guías completas sobre la integración de Lombok en varios entornos de programación. Ya sea que esté utilizando Eclipse, NetBeans, IntelliJ u otros, tenga la seguridad de que Lombok se integra perfectamente con su flujo de trabajo. Como alguien que cambia frecuentemente entre IDE, puedo dar fe de la versatilidad y confiabilidad de Lombok en todas las plataformas.
En general, Project Lombok ofrece un conjunto integral de funciones que agilizan el desarrollo de Java, reducen la verbosidad del código y promueven las mejores prácticas.
Project Lombok ofrece un conjunto completo de características que agilizan las pruebas de Java, reducen la verbosidad del código y promueven las mejores prácticas. Al incorporar constructores de Lombok y constructores de Lombok, los evaluadores pueden simplificar aún más su código y mejorar la capacidad de mantenimiento.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3