Category Archives: Java评论

33 java 8

和Lambdas的第一次亲密接触

Lambda工程是即将到来的Java8的一大主题,可能也是程序员们最期待已久的东西。随着Java lambdas的到来,还有一个有趣的东西被附带的加进了Java语言——defender(守卫者)方法。在这篇文章里,我的目的是要看看面纱后的东西——看看在运行时环境里lambdas是表

Posted in Java评论 | 10 Comments
221 twitter fail_whale

从Ruby迁移到Java上后,Twitter没有在美国总统竞选期间宕机

周二晚上,在美国2012年总统大选揭晓的时刻,微博网站Twitter遭遇了有史以来最大的访问冲击,服务的负载量陡增,但却没让用户感到丝毫的反应迟钝——一些Twitter的开发人员把这归功于公司把后端软件从Ruby迁移到Java的正确决策。

Posted in Java评论 | 12 Comments
85 java

Lambda将从根本上改变我们开发Java程序的方式

当今世界主流编程语言无不吸纳强大的闭包概念,但有个例外,它就是Java。数年来,Java语言中增加闭包特征的工作看起来毫无进展。

Posted in Java评论 | 9 Comments
134 java

Java的封面

不靠谱的人才喜欢Java。基本上我欣赏的大多数程序员都不迷Java。那谁喜欢Java?那些穿着西装的上班族,所了解的编程语言很少,但是

Posted in Java评论 | 42 Comments

“Java已死”简史

“Java已死”已经成为一个著名的口水战,挑起这场议论的人希望能有一种更酷的语言出现、流行。它有可能是D语言,4GL,Ruby,Groovy。

Posted in Java评论 | 3 Comments

Eclipse Xtend对Java说:我帮你瘦身

Java程序员在使用Ruby编程时会有一种解放的感觉,一种从Java那繁琐的语法环境进入一个无拘无束、自由国度的感觉。随着Clojure和Scala等新语言的出现,这种对比的感觉会越来越强烈。Ruby在很短的时间里异军突起,很大的原因在于它的简洁和自由,比如下面一句代码:

Posted in Java评论 | 6 Comments

Twitter从Rails迁移到了Java

Rail那插满五颜六色鲜艳羽毛的帽子现在跌落到了地上。Twitter决定放弃Ruby on Rails,改用Java,这次是包括他们的整个搜索库。早在2008年9月,他们就决定了把消息队列的后端程序从ruby迁移到Scala(一种Java虚拟机上的语言),而现在连同它们的前端也要迁移到Java。

Posted in Java评论 | 12 Comments

Integer.getInteger 你在逗我玩吗?

我刚刚发现在 Java 5 里声明的一个方法:Integer.getInteger(String): http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html#getInteger(java.lang.String) 根据指定的名称得到系统属性的整数值。 第一个参数将被认为是系统属性的名称。系统属性可以通过 System.getProperty(java.lang.String)方法访问得到。属性值字符串将被解释成一个整数,并且以表示这个值的Integer对象形式返回。可能出现的数字格式的详细说明可以在 getProperty 的定义说明里找到。 那么就让我来看看是否理解了:

Posted in Java评论 | 8 Comments

交易

这是Java的主人和Java社区之间的一笔交易。

Posted in Java评论 | 2 Comments

编程语言不需要开源

过去的几个月里出现了很多关于Java的讨论,讨论它究竟是一种开源的语言还是一种有专利的语言。人们开始怀疑对Java进行投资是否还有意义,担心这种语言将会受到它的新管家Oracle的独裁控制。 在这种情形下,人们表达出了对这种语言长期发展方向的担忧,尤其担忧的是潜在的开发和运行Java软件所需的许可费用以及成本的增加。 这更加导致了人们去寻找一种开源的,独立于厂商的语言,以此避免把自己的基础架构和开发工作都捆绑在像Oracle这样的单个公司的商业标准之上。像Python,C/C++,JavaScript,Ruby 和Perl等语言都是优秀的能摆脱这种缚束的候选语言。这些语言的维护、开发和发展都是通过开源社区和开源标准组织(例如ISO和Ecma)进行的。

Posted in Java评论 | 5 Comments

Java陷阱(2010版)

作为Apache软件基金会的成员之一,我对开源软件的立场倾向于支持更加自由的许可协议,例如Apache许可证 (v2.0), BSD, 或 MIT许可协议。我坚信应该鼓励企业都能够采用开源软件,让他们能够使用开源软件做他们想做的任何事情,在当前法律框架下尽可能的放宽限制。 宽松自由的软件许可协议能够使软件开发社区做的更好。自由的开源软件开发能鼓励真正的、专心的、有实力的参与者的奉献活动,就像“公开核心” 运动那样,企业可以出售对软件的服务和“企业级软件功能”,而不要变成一个单一个体掌握了所有软件的重要权利。

Posted in Java评论 | 2 Comments

警惕Java,迎来JavaScript

最近Oracle控告搜索巨人Google,宣称其Android智能手机操作系统上的Dalvik虚拟机侵犯了Java专利,这很自然让很多的开发人员感到担心。但大多数分析指出,这场诉讼对绝大多数Java开发人员将不会有多少的影响,但有些程序员却惊恐不安,他们已经开始寻找一种可替代的语言了。如果你也是这样,你是否考虑过转向JavaScript?

Posted in Java评论, 心得体会 | 6 Comments

Android = Java

最近整个Java阵营都陷于一场讨论Oracle和Google之间关于Android平台的专利诉讼官司的混战中。我已经在很多地方都发表过我的观点,但这确实是个 重大的话题,需要在所有地方反复重申这个观点 … 所以,这篇文章就是要再次的完全的揭露事实真相。 第八大千禧年问题: Android = Java? 前几天,有研究者宣称找到了P != NP的证据,这在编程界引起了不小的兴趣——至少为此狂热了好几天,直到开始有评论家指出证据中有很多的缺陷。我在做计算机科学系学生时研究过这个题目,但说实话,我的高等数学的水平还达不到看懂这些证据的水平(P = NP? 是克雷数学研究所提出的七个千禧年数学问题中的一个。)所以,还是让我们来讨论一个稍微简单点的问题:Android是否相当于Java?请注意,我并没有说相等,我说的是相当,就像P = NP里的那样。

Posted in Java评论, 心得体会 | 6 Comments

Scala是个有趣的语言

经常读我的博客的人应该知道,我最喜欢的编程语言是Haskell。我喜欢函数式编程,Haskell是一个能把函数式编程推向极致的语言。虽然如此,我仍然时刻关注着其它新兴的和即将产生的编程语言,特别是函数式的编程语言,所以,当Scala诞生之初我就知道了这种语言。当时,我粗略的对它了解了一下,并不是很喜欢;我感觉它的那些语法对于我的口味来说过于甜腻,而且这种语言看起来异常的复杂。然而,一些我很尊敬的人都喜欢这种语言,所以我就再次的看了看。我的评论并不是基于对这种语言的一个全面的了解之上,只是我通过几周的阅读和实验得到的收获。不管怎样,我已经有足够的认识来声明,Scala是个有趣的语言,值得去研究,特别是当你有Haskell编程背景的情况下。我使用的是一本“阶梯教程”(Programming In Scala by Odersky et al),这本书写的非常好,我全力的推荐大家读一下。

Posted in Java评论, 心得体会 | 4 Comments

Scala不是改良的Java

Scala编程语言拥有所有Java的语言特征,而且还支持所有的新兴的有趣的概念,例如闭包,higher-kinded类型,内联XML。如果你要创建一个JVM上的新项目,你是否会考虑使用Scala? Scala编程环境非常的有意思,在2.8版本中,编译器会为带有unboxed的基本数据类型的函数编译出多个版本——这样泛型函数就免去了性能昂贵的unboxing和boxing操作了。 Scala允许操作符重载,通过它隐含的机制,你甚至能在实例化后的对象里动态的添加新的方法。

Posted in Java评论, 心得体会 | 4 Comments