5个让人激动的Java项目
摘要:每个Java/JVM领域的技术专家都应从那些项目中获益,他们中有2011在SanJose举办的Jax 会议中提名为最好的技术产品奖的。我之所以选择他们是因为他们可以广泛用于一系列的项目中解决真实问题。作为开发者,我们也不得不在每天都讨论这些,那么我们赶紧来看看究竟有哪些值得令人激动的项目。
每个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环境中。
文章出自:eugenedvorkin
分享到:
相关推荐
本项目名为"Java_project.rar",它是一个Java项目的压缩包,包含了完整的源代码,可供学习和参考。这个项目可能是一个综合性的系统,涵盖了Java编程的多个方面,如前端界面、后端服务、数据库交互等。 首先,Java...
本项目以"IPMS.rar"为载体,深入探讨了一个基于Java技术的项目管理系统,涵盖了项目审批、项目管理、人员管理等多个核心功能,旨在为企业提供一套全面且实用的解决方案。 一、项目管理系统概述 项目管理系统是通过...
在本压缩包“java_game_source.rar”中,包含了一个基于JAVA语言开发的小型游戏项目,以及相关的项目文档。这个项目不仅提供了源代码,还有详细的文档资料,为学习者或者开发者提供了一个很好的实践平台,深入了解...
在这个名为"JAVA人物动画.rar"的压缩包中,我们重点探讨的是如何利用Java来实现生动的人物动画,特别是针对"java画人像"、"java人物动画"、"动漫人物java"和"双缓冲"这些标签所涉及的技术。 首先,让我们深入理解...
这个游戏虽然功能简单,但却是一个非常适合初学者进行实践和学习的Java项目。 游戏的核心机制是通过F2键实现重新开始,当屏幕上的敌人全部被消灭后,游戏会自动添加新的敌人,保持游戏的持续性。同时,游戏中还加入...
5. **多线程**:在高级版本中,可能还需要实现AI(人工智能)对战模式,这就需要用到Java的多线程技术,让计算机玩家能在用户落子后立即响应。 6. **异常处理**:为了保证程序的健壮性,需要添加适当的异常处理机制...
【标题】"BBS.rar_bbs_bbs.java_j2me_java项目_论坛项目" 指的是一个基于Java技术开发的BBS(Bulletin Board System,电子公告板)论坛项目,其中包含了核心文件"BBS.java"。这个项目是针对J2ME(Java 2 Micro ...
【标题】"java_wzq.rar" 是一个与Java编程相关的压缩包,它涉及的是一个基于B/S(浏览器/服务器)架构的五子棋游戏项目。这个项目利用Java技术实现了一个具备聊天功能的在线五子棋游戏平台,允许玩家进行单机游戏或...
Java编程语言是软件...通过研究这些源代码,可以提升编程技巧,了解Java的内在逻辑,甚至参与到开源项目的贡献中去。配合合适的文本编辑器或IDE,这些代码将变成一个强大的学习工具,帮助你在Java的世界里不断进步。
【描述】提到这个Java实现的PSO算法是由外国人开发的,并且质量很高。这表明代码可能是经过良好设计和测试的,具有较高的可读性和可靠性,适合学习和应用。 在【标签】中,"java_pso"、"pso"、"pso__java"、"pso_...
【标题】"GA.rar_GA_GA java_java ga_遗传算法 java_閬椾紶绠楁硶 java" 提供的信息表明,这是一个关于遗传算法(Genetic Algorithm,简称GA)的Java实现项目。遗传算法是一种借鉴生物进化原理的优化算法,广泛应用...
【JAVA_leidian.rar_JAVA_leidian_java 游戏 源码_雷电】这个压缩包文件包含了JAVA版的雷电游戏源码,是学习Java游戏编程的一个宝贵资源。雷电是一款经典的飞行射击游戏,其源码对于初学者和经验丰富的开发者来说都...
"这意味着这个压缩包中的内容特别适合那些刚刚接触Java的人,他们可以通过这些例子了解如何编写、组织和运行Java代码,从而逐步建立编程思维和技巧。 标签"java的demo"强调了其作为Java教学材料的角色,"java ...
Visual Java Src是一个特定的项目,它旨在提供一个类似于Visual Java的图形化用户界面(GUI),使得Java编程更加直观和便捷。在本压缩包“visual_java_src.rar”中,我们可以找到这个项目的源代码,这对于学习和理解...
【标签】"java_五子棋 五子棋_java" 指出这个项目主要涉及的技术领域是Java编程语言以及五子棋游戏的开发。这意味着开发者使用Java的网络编程库和图形用户界面(GUI)库来构建这个游戏,可能使用了如Socket编程实现...
1. modbus4J.jar:这是modbus4J的核心库文件,包含预编译的Java类,可以直接引入到Java项目中作为依赖,以便快速集成Modbus TCP功能。 2. modbus4J-doc.zip:这个文件是modbus4J的文档资料,解压后通常包含API参考...
【标题】"pgloader-master_java_java_TheMaster_" 指示了这是一个关于 PostgreSQL 数据库加载工具 pgloader 的项目,并且可能与 Java 开发有关,其中 "TheMaster" 可能是项目负责人或者团队的代号。这个项目可能是对...
本资料包"JAVA___HELP"针对的是Java初学者,包含了一些关键的学习资源,特别是关于Eclipse的使用,这对于刚接触Java编程的人来说是非常有用的。Eclipse IDE提供了友好的用户界面,使得代码编写和项目管理变得更加...
在这个项目中,开发者利用Java的Swing或JavaFX图形用户界面库来构建游戏画面,通过事件监听机制处理用户输入,使用多线程来实现游戏逻辑与渲染的分离,保证游戏的流畅性。 在源码中,我们可以看到一系列的类定义,...
标题中的"bat.rar_bat java_java bat_switch network java"表明这是一个与Windows操作系统中批处理(BAT)脚本和Java编程语言相关的项目,主要用于网络环境下的IP地址切换。这个工具利用了批处理脚本的便捷性和Java...