使用functional-java为Java生产项目添加闭包有多安全?

我很想在Java中使用闭包。 我已经读过它们可能会也可能不会成为Java 7.但是一个名为functional-java的开源项目已经实现了包括闭包在内的function特性。

在企业生产应用程序中使用这样的库有多安全?

是否有更好的方法来向Java添加闭包?

由于对单个实现缺乏共识,闭包肯定不会进入Java 7。 看这里。

functionJava库经过全面测试和积极开发。 如果您浏览源代码,您会发现它只是简单的沼泽标准Java,并且没有太多可能出错的地方。 我知道至少有一个关键任务企业应用程序在生产中使用它。 该应用程序拥有超过一百万用户。

去吧。

Functional Java不要求您使用闭包 – 源代码使用任何Java 1.5编译器进行编译。 function性Java比Google集合更加完整,恰好允许您在BGGA中使用它。

希望这可以帮助。

我认为你是从错误的角度看待这个问题。

我很想在Java中使用闭包。 …在企业生产应用程序中使用这样的库有多安全?

您在企业生产应用程序中使用何种技术的决策应该基于长期对企业最有利的因素。 你应该问这样的问题:

  • 从function的角度来看,添加技术是否会显着改善应用程序?
  • 当前项目有哪些风险?
  • 该技术是否声称“生产就绪”?
  • 是否支持该技术。 是否可能在5到10年内得到支持?
  • 如果你离开公司,是否有其他人会接管维护你的代码?
  • 使用该技术的培训/招聘意义是什么?

一般来说,像“我愿意使用Xxx”这样的陈述应该在企业决策中没有地位。 (有反例;例如创业公司在一些新技术上打赌公司,但真正的成功率是……嗯……开放的猜测。)

总结一下,如果你正在构建企业生产应用程序,你需要保守,并抵制使用shiny的新技术“为了好玩”的诱惑。 尝试像IT经理一样思考。

如果您正在寻找一个更简单的Java解决方案,请查看lambdaj项目:

http://code.google.com/p/lambdaj/

BGGA仍然是一个原型实现,不确定将原型代码投入生产是多么的舒服。 看看谷歌collections品它会让你更接近目标,虽然更加冗长

太老的问题要回答。 这里我们在java8中使用lambda来让你的生活更轻松。