什么是JsJava (支持jsjava)

来源:互联网 发布:twitter json格式 编辑:程序博客网 时间:2024/03/29 07:37
 

【来源:IT技术经验交流中心 http://www.it107.com 具体链接:http://www.it107.com/wiki/index.php?n=ITTI.CommonAbbr6】

JsJava是Java-formed Javascript的简写,意即按照Java形式编写的Javascript,其核心宗旨就是按照Java的类库体系,使用Javascript的语法和规则,建立一套类似的Javascript类库体系,在该类库体系之上,将可以支撑更为复杂的客户端业务逻辑。

我们都知道,Javascript是目前最为流行最为强大的浏览器端脚本编程语言,无论是DHTML还是RIA,还是页面端的一些基本逻辑,可以说都离不开Javascript。我们也知道,Javascript提供了一套自定义类的扩充机制,在这套机制之上,我们不仅可以对已有的一些标准对象进行属性和方法的扩充,而且还可以自定义对象,正是这样一个特殊机制,使得Javascript支持复杂的客户端业务逻辑成为了可能。

现在已经存在一些Javascript类库,例如我们都知道的prototype.js,里面提供一套较为不错的类库,也被其它的许多Javascript项目所引用,但是对于Java和C++程序员而言,还是感觉不是特别上手,我们希望的还是像Java和C#那样,从基础数据结构到高等数据结构,提供一整套类库,从这方面来看,prototype.js应该还是有些不足的,以Java和C#类库的视角,我们可以发现,在Javascript方面,我们需要增加的类库应该还有很多,而且即使像J2SE这样强大类库的存在,在许多地方还是发挥的不到位,因此才会出现了各种各样的开源类库,来解决标准类库中没有解决到的或者没有很好解决的问题,例如apache commons下的类库等等。因此Javascript所要实现的类库应该还有很长的路要走。

到目前位置,JsJava已经发布到0.97版本了,已经实现了如下的类库:按照java.util实现了javascript的工具类库,处理了包括Hashtable、List、Stack、Iterator等基础数据结构。按照java.lang实现了javascript的基本对象类型的类库,实现了包括Boolean、Integer、Long、Float在内的基本数据对象类型。按照java.text实现了javascript的文本处理类库,实现了处理日期格式的DateFormat以及字符串循环处理的StringCharacterIterator。按照java.net实现了javascript的网络类库,实现了URL链接的URL类和Inet4Address类。按照javax.servlet.http实现了javascript的HTTP类库,实现了处理cookie的Cookie类已经HttpRequest、HttpResponse类等。按照org.apache.commons实现了基本处理类库、数学函数库、bean处理库,实现了几乎这些库的绝大部分功能。按照Flash的思想,实现了页面动画类库,位于jsorg.eob.animation之中。根据目前在浏览器端的常用逻辑和其它一些东西,实现了其它一些常用的工具类库,例如表单验证器、浏览器识别、客户端事件处理等类库,为方便日常编程提供了有利的帮助。

还有一些类库我们没有提到,而且后续JsJava还将实现一系列其它的基础类库和工具类库,还要实现诸如客户端Javascript EL(表达式语言)得在内的一些重要功能。

JsJava目前才是刚刚起步,离满足复杂浏览器端逻辑的支持,还有很长一段路要走,希望有识之士能够加盟!

JsJava官方网站:http://www.jsjava.com
JsJava官方中国网站:http://cn.jsjava.com
JsJava中国官方博客:http://cnblog.jsjava.com