改变世界的七个Java项目

jopen 9年前

  英文原文:Seven Java projects that changed the world

  我们开创 OSCON Java 的一个主要原因就是:Java 的开源生态体系是健壮、健康的。在过去的十年间,有几个项目已经被广泛接受,而且在 Java 的世界中产生了深远影响,深入到软件开发,其中有的甚至与用户的日常生活息息相关。

  Junit

  在过去十年间,肯特·贝克(Kent Beck)和埃里希·伽马(Erich Gamma)把贝克在 Smalltalk 中使用的单元测试移植到 Java 之后,Junit 已经成为主流测试驱动开发中最可靠的单元测试框架。后来单元测试在 .NET,C,Python,Perl 等众多流行的语言中实现了。

  Eclipse

  在 21 世纪早期,Java 及其 API 正在完善时,Eclipse 集成开发环境提高了程序员的开发效率,并且促进了 Java 生态体系的发展。Eclipse 也是第一个使用 SWT UI 工具包的第一个大型项目,给 SUN 公司的 Swing 带来强有力的竞争,同时,这也表明 Java 程序可以提供丰富的原生接口。Eclipse 现在提供了丰富的基础供平台供应商集成,已经朝“成为通用 IDE”的目标迈进。

  Spring

  Spring 框架提高了 Java 开发者的效率,在掌握产品特性和简单性方面扮演着重要角色。Spring 给 Java 开发者提供了具有数据读取、事务管理等常用应用程序功能的一组服务。作为 SUN 公司 Java Beans 系统的竞争对手,Spring 为 Java 应用程序提供了另一条可选的简单的路,同时也给 Java 应用程序开发塑造了一种健康的竞争氛围。

  Solr

  很多年来,Solr 服务器和它所封装的 Lucene 搜索引擎为 web 和企业的应用程序的搜索功能提供了简单而实用的解决方案。能通过 HTTP 快速访问 Lucene 搜索库是 Solr 的特长所在。这使得它还被应用到包括除 Java 之外别的语言来实现的各个系统中。比起其他的项目,Solr 提供了快速的搜索来供现代 web 应用程序选择。

  Hudson and Jenkins

  原本被称为 Hudson,现在也叫做 Jenkins,这个持续集成工具是 Java 开发工具设置中关键的一部分。Jenkins 为软件项目提供自动构建和测试,持续的 JUnit 步骤使得在 java 平台上的开发轻快便捷。尽管现在 Hudson 和 Jenkins 像刀叉一样彼此整合在一起,但是他们依然重视 Kohsuke Kawaguchi 的工作——致力于创造一个世界级的持续集成平台,并且优化 java 开发的质量。

  Hadoop

  这个著名的 MapReduce 模型是用 Java 实现的,它是驱动大多数“大数据”系统的源动力。由于可以降低从大数据中抽取有价值的数据的成本,Hadoop 已经被广泛使用。很多像 非死book、Yahoo 这样的大公司使用它来处理个人和广告业务。Linux 在价格低廉的硬件上驱动大型的网站,同样的,Hadoop 在软件层面上的错误处理使得大规模分布计算成为可能。Hadoop 和上文提及的 Lucene 都是 Doug Cutting 的劳动成果。

  Android

  关于 Java 属于 SUN 还是 Oracle 的争论从未休止。Google 选择 Java 作为旗下非常流行的 Android 移动操作系统的开发语言,无疑重新引起了整个开发者社区的关注。由于要将 JVM 字节码转换成 Dalvik(Dalvik 是专门为移动设备优化的虚拟机)字节码,Android 程序要多执行一步。为了开发出更多的 Android 应用程序,Google 利用 Eclipse 的优势来给软件开发者提供一个成熟的开发环境。

  Oracle 声称,Android 侵犯了 Oracle 持有的多项专利,并因此和 Google 卷入了当前的一场官司。无论结果如何,Android 无疑吸引了众多的开发者,在延续使用 Java 开发客户端软件方面做出了巨大贡献。

  翻译: ImportNew.com - 赖信涛

  译文链接: http://www.importnew.com/10141.html