【51CTO观察】2011年7月28日,甲骨文没有食言,如期发布了Java 7。尽管这一次不是完全发布,但跳票王Oracle还是没有让大家失望。全球的Java爱好者自然是下载并试用,忙的不亦乐乎。各大IT专业网站也都在自己最显耀的头条位置发布了这一新闻,辅以各种Java 7专题和文章,从新特性到研发历史讲了一个通透。
Java 7是毒药?
但是大家的兴奋劲还没过三天,就有人爆料Java 7中BUG不少。有甚者宣称,大家还是珍惜生命,远离Java 7为妙。这Java 7究竟是蜜糖还是毒药?
我们先离开Java 7,去看一位同样从Sun归到Oracle的朋友——MySQL。在Oracle鲸吞Sun不久,MySQL 5.5如期来到人们面前。大家的态度是怎样的呢?
质疑,都在质疑。数据库管理员们最看重的是安全性和稳定性,但这次MySQL 5.5的发布让他们的疑惑更重了。还没有做好完全的安全测试,很多新功能就推出了,这让很多人不敢尝试,生怕因此丢了饭碗。
我们回到Java 7,在Uwe Schindler的文章中称,Java 7的HotSpot Loop optimizations存在一些非常可怕的默认启用的bug。***的情况下,这些bug会导致JVM崩溃,最坏的情况下,会导致loops的不正确的执行。而Schindler给出的唯一的解决方案就是,不用loops。
随后有文章就对此进行了辟谣,声明这种BUG出现的原因是某些特定的loops造成。优化的选项BUG在Java 6中就有出现,只不过Java 7中把这个选项作为默认启动才会如此引人注目。事件似乎就到此为止了。但Java程序员从中隐约看到Java 7似乎存在成为毒药的潜质,有朝一日会不会摧毁整个软件开发项目?
Java 7是蜜糖
新事物的出现,用户确实需要以宽容的心情来对待。Java 7的进步还是显而易见的。
在51CTO对此的调查中,有46%的Java 程序员表示会试用Java 7,有35%的程序员看好Java 7的前景。只有5%的Java程序员觉得Java 7与之前的版本差别不大。
从Java 7的新特性中,比如自动化资源管理(即ARM)能力,这个能力是Java 7特有的,目前使用Java 6的朋友在编译时很多库都需要重新编译以适应Java 6的需要。其目的在于当遇到错误或是成功执行完代码块后能够轻松处理好外部资源。这样的进步还是能在一定程度上解放Java程序员的生产力。
Java 7相关新特性请点击这里阅读。
更多的新特性还需要各位Java程序员去一点点尝试。究竟何时能把Java 7部署到生产环境,乐观估计会是几个月的时间。
Java 7到底是蜜糖还是毒药?
无比美妙的Java 7已经呈现在我们面前,更多人性化的功能似乎预示着Java程序员可以少加班多陪陪女朋友了。也还是有不少评论员担心,这Java 7只是裹着蜜糖的毒药。
期待不要更多的BUG,虽然现在发现的BUG还只是极端现象。但人们还是担心Java 7是为了赶工期仓促推出,预期在Java 7***个update会更加稳定一些。
新的编程习惯让Java 程序员要费力适应。上面提到的ARM特性,就需要Java 6时代的程序员慢慢适应,并最终期待Java 8时会有完善的功能出现。
生产环境的大变化,尽管Java 7还沿袭了之前的道路。就像Java的对手.NET一样,从Visual Studio 2008升级到Visual Studio 2010还是要经历一个短暂的阵痛的。有用户会因为各种类无法加载而头疼。
新的语言支持将起到反作用,有Java程序员就表示Oracle需要在开发效率上下功夫,而不是无端给平台增加负担。让对手更少的唱衰Java。
Java 7到底是毒药还是蜜糖,您怎么看?
【编辑推荐】