5個讓人激動的Java項目
每個 Java/JVM 領域的技術專家都應從那些項目中獲益,他們中有 2011 在 SanJose 舉辦的 Jax 會議中提名為最好的技術產品獎的。我之所以選擇他們是因為他們可以廣泛用于一系列的項目中解決真實問題。作為開發者,我們也不得不在每天都討論這些,那么 我們趕緊來看看究竟有哪些值得令人激動的項目。
1、Neo4j 圖形數據庫
Neo4j 是一個高性能圖形引擎,該引擎擁有成熟穩健的數據庫的所有特性。程序員利用面向對象、靈活網絡結構而不是嚴格的靜態表操作,但是他們可以完全享受到具備完 全事務特性、企業級數據庫的所有好處。對于很多應用來說,Neo4j 相比關系型數據庫性能提升 1000 倍,同時 Spring 和其他框架有相應的插件支持。
2、JRebel 不需再重新部署
JRebel 是一個小型的 JVM 插件,它能使 Java 程序員在不需重新部署情況下即時地看到代碼改變后的結果。JRebel 能夠在一個時間點讓你單獨地更新管理類文件和資源的版本來替換塊應用部署,當開發者在 IDE 中對類和資源有任何的修改時,變化能立刻地反映到已經部署好的應用中。通過省略從構建到重新部署期所花時間每年能節省約5.25周。
3、Gradle 一個更好的構建工具
Gradle 充分吸取了 Maven 和 Ant 的優點。Gradle 站點說道:“工程自動化是軟件項目成功的必要條件,而且它應該是實現起來簡單、易用、好玩的。構建沒有千篇一律的方法,所以 Gradle 沒有死板的強加方法于我們,盡管你會認為查找和描述你的方法很重要,然而 Gradle 對于如何描述它有著非常好的支持。我不認為工具能夠拯救我們,但是 Gradle 能給你所需要的自由,你可以利用 Gradle 構建易描述的、可維護的、簡潔的、高性能項目”。
4、Akka 更加簡單的可伸縮性、容錯性、并發性、遠程調用的 Actor 模型應用
編寫出可靠的并發、容錯、可伸縮的應用簡直太難了,很多時候是因為我們使用不合理的工具和錯誤的抽象級別,Akka 正是用來解決這些難題的。使用 Actor 模型與 STM (軟件事務內存)提高抽象級別,Actor 提供了更好的平臺來建立可靠的并發和可伸縮的應用,對于容錯采取任其崩潰、接受失敗的模型(Let it crash/Embrace failure),它已經成功運用在電信行業。系統幾乎不會宕機(高可用性 99.9999999 % 一年只有 31 ms 宕機,這里有詳細介紹),Actors 同樣為透明的分布式提供了抽象化,為真正的可擴展和容錯的應用提供了基本要素。
5、Play Framework—關注開發者效率和 RESTful 風格的架構
Ruby 中有 Rails 框架,Groovy 有 Grails,現在 Java 有了 Play!Play 是一個純 Java 框架,因此可以繼續使用你鐘愛的開發工具和類庫。如果你已經在使用 Java 作為開發平臺,那樣也不需要切換到另一種語言、另一種 IDE 和庫文件,你要做的僅僅是切換到一個更高效的 Java 環境中。
原文:Eugene Dvorkin 編譯:伯樂在線 – 劉志軍