深圳Java培训
达内深圳宝安中心

136-3244-2201

热门课程

JAVA的微框架

  • 时间:2015-10-09
  • 发布:深圳达内
  • 来源:深圳达内

任何语言都有优缺点。对 Java 而言,它安全、经过严格测试、向后兼容,但却牺牲了部分灵活性和简洁性。于是,有人就尝试寻找方法,以便能规避 Java 的臃肿,同时又利用 JVM 的强大功能。第一波努力围绕轻量级 Java 框架展开,而现在,第二波努力已经出现,即 Java 微框架。

近日,软件分析公司 Takipi 探讨了这一新趋势。

随着语言的成熟,每次发布都会增加一些库。时间一久,对于大部分项目而言,包含在这些库中的许多功能都不是它们真正需要的。微框架就是要解决这个问题,其思想是:创建一个专用而又灵活的解决方案,满足生产过程的基本需求。

Java 微框架是轻量级 Java 框架的延续。它们可能是当今最轻量级的 Java 开发方式。虽然目前应用范围有限,但已经有在生产环境中成功部署的案例。Josh Dreyfuss 来自 Takipi 的产品营销部门, 他介绍了三种当前较为流行的 Java 微框架。

Ninja 是一个用于创建 Web Service 和应用程序的全栈 Java 微框架。它综合 Play 和 Ruby on Rails 的优点,并以纯 Java 格式提供。作为一个综合性软件栈,Ninja 提供了大量开箱即用的功能,如 JSON 解析、HTML 渲染,使得它简单易用。在扩展性方面,Ninja 采用了无状态设计,只需要增加服务器就可以实现横向扩展。不过,内置大量功能和简单易用的代价是,用户选择减少,工具本身占用空间较大。总之,Ninja 重新设计了 Java 框架,提供了简单、可扩展、易于使用的功能。感兴趣的读者可以查看 Ninja 的入门教程。

Spark(注意不要同 Apache Spark 混淆)的设计初衷是,可以简单容易地创建 REST API 或 Web 应用程序。它是一个灵活、简洁的框架,大小只有 1MB。Spark 允许用户自己选择设计应用程序的模板引擎以及选择最适合他们项目的库,比如,HTML 解析功能就有 Freemarker、Mustaches、Velocity、Jade、Handlebars、Pebble 或 Water 等选项可供选择,而且很少需要配置或样板文件。不过,灵活简单的代价是,用户可选的功能减少。总之,Spark 剔除了许多 Java 的臃肿之物,提供了一个最小化的、灵活的 Web 框架。但由于精简程度较高,它缺少了一些功能,不适合用于大型 Web 应用程序的开发。感兴趣的读者可以查看 Spark 的入门教程。

Jodd 是一个 Java 微框架、工具和公用程序的集合。所以,它同上面两个框架可能不具有直接可比性,比如,Spark 可以作为 Jodd 的一个组件。Jodd 的目标是减少许多 Java 工具和框架的空间占用,提高它们的速度,提供一个超级轻量级的框架和工具精选集合。Jodd 中的每个库都是单独提供的,用户可以选择使用。这样一个提供若干功能的框架集合似乎与微框架背道而驰,但实际上,Jodd 大小总共不过 1.5MB。总之,Jodd 是一个框架和工具的集合,用户可以对它们自由组合,形成自己的解决方案。但同时,这种灵活性也增加了使用的复杂度。感兴趣的读者可以查看 Jodd 的入门教程。

下面是上述三种框架的流行度对比:

 JAVA的微框架

此外,Dreyfuss 还列出了其它一些框架,包括 JHipster、Javalite、Ratpack 和 Vert.x。感兴趣的读者可以进一步研究。

 

上一篇:为什么 Java 是适合 I0T 的语言
下一篇:JAVA的历史脉络

为什么 Java 是适合 I0T 的语言

编程语言排行榜

【达内职场秀】如何通过面试官去了解企业

【达内JAVA教程】Java与C/C++的区别

选择城市和中心
贵州省

广西省

海南省