|
Template
JSISIDE的模板框架模板引擎这种用来处理大量文本数据的工具,一直在服务端得到比较广泛的使用,但是,在前端,确一直少有听闻,我想,性能算是一大问题吧,JSISIDE将采用一种类似jvm,将源文件编译成中间格式的方式(JSON),大大提高模板引擎的效率,同时允许调试期间即时编译。不造成调试期间的麻烦。 JSISIDE模板框架是一个微指令集及其编译处理支持,还有基于该统一指令集的模板系列,他可以支持不同类型的模板语言,这些不同的语法,都可以解析转换成一种统一的中间数据,模板指令集,然后,通过统一的编译过程,将这些模板数据转换成可渲染的模板函数。 数据存在形式模板原文件--->模板指令集-->模板对象 模板源文件,可以是一个CT,Velocity类似语法的文本模板,也可以是一个jelly类似的XML模板,也可以是一个smarty类似的模板。这些模板源文件通过解析后(调试时,这一步可以运行期完成;系统正式发布后,这一步可以在编译期完成),被转换成模板指令集;这个指令集再通过简单的遍历,转换成可以执行的渲染函数。 模板解析过程基本的思路是,先把模板的静态数据和动态指令编译成一个一维数组。其中指令以简单对象的方式存在,我们可以使用json标准去系列化这种中间代码。 模板编译过程模板运行前,通过一个类似敲木桩的过程,吧这种一维数组转换成有效的模板函数。 微指令集合
一些无需指令的常用语法元素(在编译期间被处理掉,直接将目标代码编译成更加低级的微指令集)
成功案例JSI 文档解析工具: http://www.xidea.org/project/jsidoc |
Sign in to add a comment
该模版引擎已前一至Lite:
http://lite.googlecode.com