- 授权协议: 未知
- 开发语言: Java
- 操作系统: 跨平台
- 软件首页: https://github.com/AlbieLiang/ArbitraryGen
- 软件文档: https://github.com/AlbieLiang/ArbitraryGen/blob/master/README.md
- 官方下载: https://github.com/AlbieLiang/ArbitraryGen/archive/master.zip
软件介绍
ArbitraryGen 是一个支持混合式代码生成器。包括三种模式:
普通代码生成模式,直接通过在生成代码的代码中指定生成代码的样式和和模板;(思路简单,效率高,但扩展性和灵活性没那么高)
脚本引擎模式,模板是通过脚本定义,使用脚本引擎来生成代码,相比(1)具有较高的灵活性和扩展性;
混合式代码生成模式,模板支持脚本和源码混合的方式定义,想比(2)更为灵活和可扩展性。
特性:
将脚本和源码混合到代码的源文件中;
代码生成操作是可持续的;
脚本在代码生成后不会被删除,而是将生成的代码附于脚本区域之后,以便于脚本的可持续使用;
每次生成代码前会将上次生成的代码删除。
代码解析流程
1、解析的大致流程
生成代码的流程,先用一个transfer脚本将模板文件(包含生成代码的脚本程序片段),转换成可执行的、完整的脚本程序,最后通过脚本引擎运行得到的脚本程序从而生成所需的代码程序。
实际上,模板文件是一个脚本程序和原代码混合的体,需要用transfer脚本去将模板文件里面的脚本和源码的混合体转换成脚本引擎能够执行的脚本程序,一句话就是脚本引擎运行用脚本去解析脚本得到的脚本!
2、模板文件的处理
解析思路:将模板文件切割成n段,将脚本代码和原代码分离,最终组合成一段脚本代码,再将数据源注入,通过脚本引擎运行脚本,生成想要的代码。
1)将源代码扫描一遍,遇到脚本起始标识/@@@#SCRIPT-BEGIN#,此处作为一个分割点,开始拼接脚本代码,直到遇到 #SCRIPT-END#@@@/ 脚本区结束标识,结束脚本代码的拼接;
2)遇到//@@@#AUTO-GEN-BEGIN# 已生成代码代码起始标识,程序将忽略后面的所有字符,直到遇到 //@@@#AUTO-GEN-END# 已生成代码结束标识才停止;
3)其它非1)和2)情况的串,将当做普通的字符串拼接起来;
4)经过上述的过程,可以得到一个完整可执行的脚步程序了。
JAVA 2核心技术 卷Ⅰ
[美] 霍斯特曼、[美] 科奈尔 / 叶乃文、邝劲筠 等 / 机械工业出版社 / 2006-5 / 88.00元
本书是Java技术经典参考书,多年畅销不衰,第7版在保留以前版本风格的基础上,涵盖Java2开发平台标准版J2SE5.0的基础知识,主要内容包括面各对象程序设计、反射与代理、接口与内部类、事件监听器模型、使用Swing UI工具箱进行图形用户界面设计,异常处理、流输入/输出和对象序列化、泛型程序设计等。 本书内容翔实、深入浅出,附有大量程序实例,极具实用价值,是Java初学者和Java程序员......一起来看看 《JAVA 2核心技术 卷Ⅰ》 这本书的介绍吧!
