Atitit dsl exer v3 qb3 新特性

/atiplat_cms/src/com/attilax/dsl/DslParser.java

V3 支持typeed参数,与简化的notyp参数

V2 支持静态参数

V1 初步实现,动态参数简化参数only

1. 利用块来区分作用范围的语言,其本质上就是可扩展的,因为不同类型的新块可以加入并嵌入到相应的现有块之中。

XML很容易解析,但是作为一种自定义数据格式其可读性却太差了

关于DSL文法最后再强调一点,一个复杂的文本DSL应该是可以使用BNF(或者EBNF)以形式文法的形式进行定义的。如果你的语言无法用形式文法表达出来,那么它的分析将会非常困难甚至是不可能的。下面几节会介绍更多关于分析与BNF的内容

3 非文本DSL

除了内部和外部DSL,业界还有一种正在增长的趋势,即倾向于发展更丰富的领域建模手段。DSL是领域的一种表示形式,但其定义中并没有硬性规定这种表现形式或语言必须是文本形式的。

很多领域问题可以通过电子表格、图形化模型等丰富的制品形式更好地展现给领域用户;

在基于文本的脚本中,领域逻辑常散落在曲折交错的语法结构里,不经意地增加了复杂性;

领域专家操作起形象化的模型总是比操作源代码更自如。

public  Object parseV3(String args) {

// TODO Auto-generated method stub   com.attilax.encry.RSACoder.main(['fixseed','c:/0k/pri.txt','c:/0k/pub.txt'])

System.out.println("..start");

//@SuppressWarnings("unchecked")

//  com.attilax.ioc.IocFacV3_iocx_iocutil.getBean(com.attilax.order.RechargeOrderService.class).insert('20161024_16926254',5,1528)

//com.attilax.ioc.IocFacV3_iocx_iocutil.getBean(com.attilax.order.RechargeOrderService.class).insert('20161024_172851950':s,5:i,888:i)

List<Token> tokens = new JavaTokener(args).getTokensV4();

Expression buildAst = new AstBuilderSmpVer().buildAstV2(tokens);

Object rzt = new AstParser().parse(buildAst);

System.out.println(rzt);

System.out.println("...finish");

return rzt;

}作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )

汉字名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

Atiend

Atitit dsl exer v3 qb3 新特性相关推荐

  1. Atitit.js模块化 atiImport 的新特性javascript import

    Atitit.js模块化 atiImport 的新特性javascript import 1. 常见的js import规范amd ,cmd ,umd1 1.1. Require更多流行3 2. at ...

  2. OpenStack Keystone v3 API新特性

    OpenStack Keystone v3 API新特性 原连接 http://blog.chinaunix.net/uid-21335514-id-3497996.html keystone的v3 ...

  3. Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结...

    Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结 1.1. Java的编年史2 ...

  4. Android之仿网易V3.5新特性

    为什么80%的码农都做不了架构师?>>>    最近,网易新闻更新到V3.5了,给我印象最深的是第一次进应用时显示新特性的ViewPager变成垂直滑动了.于是,小小的模仿了一下,我 ...

  5. Android P v3签名新特性

    新版v3签名在v2的基础上,仍然采用检查整个压缩包的校验方式.不同的是在签名部分增可以添加新的证书,即可以不用修改ApplicationID来完成证书的更新迭代. 本文引用自 https://xuan ...

  6. 【vue3 computed 的讲解 案例使用 v3.2+新特性】

    有时我们需要依赖于其他状态(普通proxy响应式数据)的状态(computed响应式数据): 在 Vue 中,这是用组件计算属性处理的,以直接创建计算值,我们可以使用 computed 函数:它接受 ...

  7. Atitit. Atiposter 发帖机 新特性 poster new feature   v7 q39

    Atitit. Atiposter 发帖机 新特性 poster new feature   v7 q39 V8   重构iocutilV4,use def iocFact...jettyUtil V ...

  8. Atitit.swift 的新特性 以及与java的对比 改进方向attilax 总结

    Atitit.swift 的新特性 以及与java的对比 改进方向attilax 总结 1. defer关键字1 2. try!形式存在的"不失败"机制3 3. Guard 4 4 ...

  9. Atitit.android  jsbridge v1新特性

    Atitit.android  jsbridge v1新特性 1. Java代码调用js并传参其实是通过WebView的loadUrl方法去调用的.只是参数url的写法不一样而已1 2. 三.JAVA ...

  10. Atitit.atiJsBridge 新特性v7q329

    Atitit.atiJsBridge 新特性v7q329 atiJsBridge 未来计划 Postdata  图像上传的支持 Simp param计划 p1 p2 p3 p4 $method 的si ...

最新文章

  1. 强势推荐8个顶级好用的软件,堪称神器
  2. c#中不同类中变量的引用方法
  3. Hibernate学习5—Hibernate操作对象
  4. nginx限制某个IP同一时间段的访问次数
  5. 牛津剑桥古怪面试题:美女与经济学
  6. [计算机]“华为的冬天”——任正非(华为总裁)
  7. python组成不重复的三位数是多少_超星Python 练习实例1-组成多少个互不相同且无重复的三位数字...
  8. 在 Raspberry Pi 3B 上安装最新版 Node-RED
  9. Byteman –用于字节码操纵的瑞士军刀
  10. 使用cron表达式 设置定时任务
  11. 学会这5种JS函数继承方式,前端面试你至少成功50%
  12. winform窗体中嵌入显示Excel文件
  13. php表单密码由加密变明文,PHP 安全性漫谈 Linux+Apache+Mysql+PHP
  14. 论文密级_2019年毕业研究生论文提交的通知
  15. 关于AIR 应用程序沙箱
  16. React --获取服务器数据的两种方式(Axios和FetchJsonp)
  17. CSDN APP又出错了,看不到博文
  18. sdelete使用指南(Windows Sysinternals Suite工具介绍转)
  19. 全球及中国阻力带行业市场前瞻及投资竞争力分析报告2022-2027年
  20. PAT 1072 开学寄语

热门文章

  1. 早上内部资源共享讨论发言稿
  2. Spring Security 入门(1-4-1)Spring Security - 认证过程
  3. php utf8 正则中文表达式
  4. 【1.0】忘记mysql 密码 如何修改之后
  5. 转:MSSQL SERVER行转列 列转行
  6. 差分约束系统 与 最短路
  7. IOS 的loadView 及使用loadView中初始化View注意的问题。(死循环并不可怕)
  8. JavaScript 邮件正则练习
  9. 爱的十个秘密--8.沟通的力量
  10. 【北京集训D2T3】tvt