而让我恨得牙根发痒的,是我在某网站的BicaVM文章评论中,又看到了这样的说法:

图2:

  国内没人才?我呸!倒退十年国内有这样的人才,我敢拿人头保证,是先有JSVM后有BicaVM(虽然两者实现上有差别,但原理并无二致,都是结 构上的JS仿Java,而且JSVM直接使用原生JS(当然,也有自己的JSC语法甚至允许自由扩展),不模拟“完整版Java”效率更高),可结果 呢?只因JSVM作者是某国人,空有人才,却很难遇人识才,后更被归结到“不是人才”的那群里去了。小弟不知道JSVM的作者还在不在人世(应该还在吧 -_-),如果您恰巧看到本文,小弟这里顺便跟您说一声“我佩服您,您在十年前搞出来的东西,洋人十年后才做出来!才被某些国人夸!”

  公道自在人心,大家有空时可以结合2004年的JSVM旧文,再结合当前的BicaVM,也比较一下国内对中西同性质,不同效率项目(明显JSVM更快)的不同评价与讨论的主要方向吧。

  PS:个人始终喜欢JSVM第一版,也是高仿Java结构的那版,后来的JSVM2或许因前版性能被某些闲人诟病,于是作者牺牲了太多Java特性而搞了JSVM2,改的已经不像Java类库,更贴近JQuery之类,也因此失去了原有的优良特性,遗憾。


  Avian项目

  说完了国内的,小弟再来介绍介绍国外的“不知名”JVM项目——Avian,这是一个非常精巧的JVM虚拟机项目。Avian大的特征在于,可以构建不足1MB的完整Java应用,且无需额外的JRE。

  小弟粗略归纳了一下Avian的要素,总结为如下四点。

  1、avian基于OpenJDK构建,代码结构上与标准Java如出一辙,没有丝毫例外存在。

  2、avian默认不支持AWT/Swing,SWT等图形库(但可以引入,比如作者的示例中引入了SWT库),仅有io、lang、net、nio、 security、text、util这七个标准Java工具包被预装(近似于JavaME中CVM的实现)。因此代码量相当之小。七个包的Java源码 累积仅400多KB,压缩后简直是“微缩景观”。某种意义上说,用avian写Java病毒也没问题(不用图形库,连微型虚拟机带class压缩后超过 不过300KB)。

  3、avian微型JVM默认支持Linux、Mac OS、Windows三种环境的运行及编译。不过因为开源,从技术角度看移植到Android、iPhone等平台未尝不可(如果微软WP向普通用户开放C/C++的支持,那么也一样)。

  4、当然,avian目前的缺点也有不少,比如本身没有提供自执行的启动方式,仅能通过C/C++代码调用main函数启动,需要用户对C/C++有初步 了解,纯Java技术员难以上手。执行速度虽然并不比OpenJDK逊色(因为主体是从中提取的,虽然作者替换了部分实现),但始终不同于标准JRE, 有存在隐患之风险,在更多示例出现前,商业恐怕还难以让人放心。

  怎么样,这还算是好东西吧?但不是小弟说话张狂,我要不提Avian的名字,全中国Java程序员有一个算一个,知道这项目者,能“他XYZ的”超过1000人吗?

  如此实用的东西,在某国却和JSVM一样,极少有人理会,可洋人丢出来个垃圾,倒真有不少起哄帮腔的。难怪海外会有一小撮人说:“某国人干事,非得把世界上所有错误的方式都尝试遍了,才可能找到正确的那项选择”。
——————————

  目睹此情此景,我,真替某国的某些程序员感到悲哀。