Lite 2.0
Lite 2.0 将是一个全新的开始, 在Lite1.0 近两年的尝试中, 不断积累的改进需求将在Lite2中重新规划并彻底实现。主要包括(不限于)如下重点
功能方面
- 文档加强
提供完备的使用文档, 在线测试环境,你可以随时查阅相关语法,实时测试运行结果. 也可以参与文档的批注补充和质疑.
- HTML容错与自动编码加强
Lite2 的HTML容错功能以非常强大,常见的html写法都能兼容(如省略引号,属性值,无歧义的未转义的特殊字符,甚至不闭合的空标签,详细容错规则见:XML容错标准).
增加URL和脚本(事件脚本和script脚本) 的自动编码(xml自动编码1.0已实现), 前端XSS问题从此失传!
- 模板继承特性
弱化之前依靠全局配置实现的自动layout布局管理方式,改用模板中自由指定父模板的 extends语法.
- 前端模板加强
lite2的前端模板, 实现了与后端模板函数的按需互通(后端定义的模板会按需自动生成前端函数,有完整的语法关联分析).
- PHP 运行环境
PHP也得到完美支持,性能优异,可借助浏览器实现自动编译,也可以通过调试服务器实现自动编译,但是上线前还是建议通过编译工具批量编译.
- 集成调试环境
提供专用调试服务器,轻松搭建开发调试环境,并提供发布上线前的统一编译优化.
提供模板专用测试工具,可以轻松测试线上线下模板,定位问题.
- 其他细节修改
名称空间重新规划,将client标签迁移到 h 命名空间下.
实现方面
- 模板解析
所有语法解析逻辑改用javascript实现. 增强用户定制的便利.
- 中间代码
模板中间代码, 特别是表达式中间代码规范,彻底重构.让中间代码控制和优化更容易操作.
- 统一中间代码分析接口
通过工具和固定接口,让中间代码更加结构化,信息获取和优化更加便利.
重点特性计划
- lambda 表达式(匿名函数)支持 [计划2.1 中正式发布]
- 支持函数式风格
改进目前的内置函数和模板函数特性, 支持函数式风格(函数可像变量一样传递,可做为参数传递,支持匿名函数).
- 支持表达式函数
表达式函数支持, 用户可以在表达式中书写匿名函数, 如对数组排序的时候,可以在sort函数中传入一个排序表达式,实现自定义数据排序.
- 支持函数式风格
- nodejs 运行环境的稳定支持
- 函数式编程常见工具函数支持[如,sort,map,reduce...]