Java 脚本语言/模板引擎:Webit Script
jopen
11年前
0. 这是一个脚本语言(起码这个项目是这么定位的)
1. 采用一般模板引擎的语法,所以你也可以称它为模板引擎(好吧又是一个)
2. 它基于java 5 开发( jre5+就可以,而且不依赖其他第三方库哇:) )
3. 语法类似于Javascript,弱类型,甚至是闭包特性(麻麻再也不用担心语法问题~~)
4. 只有解释执行,支持热加载,但是性能依然给力(这里有BSL大神的测试结果 ;))
5. 灵活自由的API(这里要感谢各位模板引擎前辈的指导,HTTL,Beetl , etc..)
Q&A
1. 现在已经有很多开源的模板引擎了为什么要重复制造轮子?
这个重复造轮子是必须的,因为坦克的轮子不适合装在飞机上。
2. 为啥解释执行的性能依然这么给力?
首先归功于现代JVM的优化能力。
然后是采用ASM的方式对Bean进行get/set操作避免反射,当然 如果你不喜欢ASM可以关闭它,使用反射,或者你自己定义的Resolver。
对于IO方面也做了大量的优化,避免了很多重复的分配大数组以及之间的COPY。
当然原因不只这些,还有很多细节。
3. 为啥不做编译执行?
编译执行无非是为了性能,解释执行已经很给力了,做编译执行意义不大。
其次,双执行引擎之间往往存在差异,很难保证输出结果完全一致,也会限制以后的发展。
还剩很多版面,来个例子把,希望能说服你试一试