您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Java開發中是否可用Lombok,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
Java 開發中,到底該不該用 Lombok?
Lombok 并不是一個新的項目,相反,它已經有了一段并不算短的歷史了,但是關于 Lombok 的爭議一直就沒有停止過,我們先來看看它是什么東西?
根據 Lombok 官網的介紹:
Lombok 是一個 java 庫,可以自動插入編輯器并構建工具,為我們的 java 增添色彩,讓開發者告別繁雜的 getter/setter 以及 equals 等方法,一個注解就可以使我們的類具有一個功能齊全的構建器。
咋一看,還是挺誘人的,我相信大家做 Java 開發對于樣板化的代碼 getter/setter 早已經不厭其煩,雖然可以使用開發工具自動生成,可是看那一大堆代碼還是覺得有點煩,看到有人推薦 Kotlin,Kotlin 做 Android 還行,代替 Java 做企業級應用?呵呵。 Lombok 則可以幫助開發者簡化樣板代碼,舉一個簡單的例子,原來你的一個 Java Bean 可能是這樣:
public class User{ private String name; private Long id; private String address; //getter/setter/toString/hashCode。。。}
使用了 Lombok 之后,你的 Java Bean 就可以簡化成這樣了:
@Datapublic class User{ private String name; private Long id; private String address;}
添加一個 @Data 注解,項目在編譯器編譯時通過操作 AST (抽象語法樹) 來自動生成 getter/setter 、toString 、hashCode 等方法,利用這一特性,甚至可以像 JavaScript 一樣不用顯式聲明變量類型:
val list = new ArrayList<User>();list.add(new User());
這樣的代碼最終會被編譯成:
final ArrayList<User></User> list = new ArrayList<User>();list.add(new User());
等等還有很多其他的語法糖,像 @Cleanup、@Builder 等都是簡化代碼的能手,我這里只是隨便的舉兩個例子。
因為這些代碼都是編譯之后才有的,所以開發者如果需要在 Java 代碼中調用某一個對象的 get 方法(或者其他自動生成的方法),還需要引入一些開發工具的插件,才可以解決這個問題,這個我就不細說了,大伙有興趣可以自行搜索了解下。
事情就是這么個事情,工具就是這么個工具,那么開發中到底用不用呢?
以上就是Java開發中是否可用Lombok,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。