Atitit.软件开发的最终的设计 dsl化,ast化(建立ast, 解析执行ast)

1. 使用js,html 撰写dsl1

1.1. 架构图1

1.2. html2

1.3. Js2

1.4. Cs桌面程序也可使用html js dsl2

1.5. 调用dwr  建立ast,并执行ast2

1.5.1. brow建立ast   (http param)3

1.5.2. 我们的程序, 解析执行ast3

1.6. 标准dsl $method3

2. ---------------------------our part4

3. 自动dsl从html param4

4. Request解析器解析http param ,建立ast (orm_obj) 执行ast4

4.1. 架构图4

4.1.1. 解析http param4

4.1.2. 执行ast5

5. 后台API 映射5

1. 使用js,html 撰写dsl

1.1. 架构图

1.2. html

<input name=”$method” value=”select”>

<input name=”$meta” value=”{}”>

<input name=”f1” value=”v1”>

使用jquery序列化

1.3. Js

Obj={“$method”:”select”,”$meta”:{}}

1.4. Cs桌面程序也可使用html js dsl

生成html param url

1.5. 调用dwr  建立ast,并执行ast

统一nsCommder与dwr的操作

如果是web环境,调用ajax引擎。

如果cs环境,调用nsnsCommder  browsExt

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

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

1.5.1. brow建立ast   (http param)

$Method=select&$meta={}& f1=v1&f2=v2

$Method=xxxx¶m=val¶m2=val2

1.5.2. 我们的程序, 解析执行ast

1.6. 标准dsl $method

Crud sql..(select,update,insert,del)

Sql

2. ---------------------------our part

3. 自动dsl从html param

4. Request解析器解析http param ,建立ast (orm_obj) 执行ast

4.1. 架构图

4.1.1. 解析http param

filed

Op

Insert,select,update,merge,del,delete,remove

Table

Tab1

Fields

MapFmt{ f1:v1 , f2:v2 , f3:v3 }

4.1.2. 执行ast

Atiorm(with dsl)

5. 后台API 映射

将后台api使用反射的形式,做js api映射。。可宫前边使用

Atitit.软件开发的最终的设计 dsl化,ast化(建立ast, 解析执行ast)的更多相关文章

  1. Atitit.软件开发的终于的设计&#160;dsl化,ast化(建立ast,&#160;解析运行ast)

    Atitit.软件开发的终于的设计 dsl化,ast化(建立ast, 解析运行ast) 1. 使用js,html 撰写dsl 1 1.1. 架构图 1 1.2. html 2 1.3. Js 2 1. ...

  2. Atitit.软件开发的三层结构isv金字塔模型

    Atitit.软件开发的三层结构isv金字塔模型 第一层,Implements 层,着重与功能的实现.. 第二次,spec层,理论层,设计规范,接口,等.流程.方法论 顶层,val层,价值观层,原则, ...

  3. Atitit.软件开发的几大规则,法则,与原则Principle v3

    Atitit.软件开发的几大规则,法则,与原则Principle  v31.1. 修改历史22. 设计模式六大原则22.1. 设计模式六大原则(1):单一职责原则22.2. 设计模式六大原则(2):里 ...

  4. Atitit.软件开发提升稳定性总结

    Atitit.软件开发提升稳定性总结 #----影响稳定性几个类别 3 1. 资源和内存泄漏溢出 3 2. 数据库/文件死锁 3 3. 类库冲突 3 4. 热更新热部署(业务可用性 3 5. 程序崩溃 ...

  5. atitit.软件开发--socket框架选型--netty vs mina j

    atitit.软件开发--socket框架选型--netty vs mina j . Netty是由JBOSS提供的一个java开源框架 Apache mina 三.文档比较 mina文档多,,, 好 ...

  6. Atitit. 软件开发中的管理哲学--一个伟大的事业必然是过程导向为主 过程导向 vs 结果导向

    Atitit. 软件开发中的管理哲学--一个伟大的事业必然是过程导向为主    过程导向 vs 结果导向 1. 一个伟大的事业必然是过程导向为主 1 1.1. 过程的执行情况(有明确的执行手册及标准) ...

  7. Atitit.软件开发的几大规则,法则,与原则。。。attilax总结

    Atitit.软件开发的几大规则,法则,与原则... 1. 设计模式六大原则 2 1.1. 设计模式六大原则(1):单一职责原则 2 1.2. 设计模式六大原则(2):里氏替换原则 2 1.3. 设计 ...

  8. Atitit.软件开发的几大规则,法则,与原则p821.doc

    Atitit.软件开发的几大规则,法则,与原则p821.doc 1. 设计模式六大原则2 1.1. 设计模式六大原则(1):单一职责原则2 1.2. 设计模式六大原则(2):里氏替换原则2 1.3.  ...

  9. Atitit 软件开发中 瓦哈比派的核心含义以及修行方法以及对我们生活与工作中的指导意义

    Atitit 软件开发中 瓦哈比派的核心含义以及修行方法以及对我们生活与工作中的指导意义 首先我们指明,任何一种行动以及教派修行方法都有他的多元化,只看到某一方面,就不能很好的评估利弊,适不适合自己使 ...

随机推荐

  1. [Android实例] 最全的Android开发资源整理--进阶必备

    本帖最后由 一切随枫 于 2014-6-9 12:08 编辑 原文链接: http://stormzhang.github.io/android/2014/06/05/android-awesome- ...

  2. node.js创建并引用模块

    app.js var express = require('express'); var app = express(); var con = require('./content'); con.he ...

  3. opencv Mat 像素操作

    1 cv::Mat cv::Mat是一个n维矩阵类,声明在<opencv2/core/core.hpp>中.   class CV_EXPORTS Mat { public: //a lo ...

  4. longest-repeating-character-replacement(难)

    用sliding window的方法,之前还有个k不同元素好像也是类似的思路.有时间可以去复习下. https://leetcode.com/problems/longest-repeating-ch ...

  5. vue项目构建实战基础知识:SPA理解/RESTful接口介绍/static目录配置/axios封装/打包时map文件去除

    一.SPA 不是指水疗.是 single page web application 的缩写.中文翻译为 单页应用程序 或 单页Web应用,更多解释请自行搜索. 所有的前端人员都应该明白我们的页面的 u ...

  6. SQL Server 根据表名取得 表主键

    exec sp_primary_keys_rowset N'表名',NULL

  7. POJ 1275-Cashier Employment(差分约束系统)

    题目地址:id=1275">POJ 1275 题意: 给出一个超市24小时各须要R[i]个雇员工作,有N个雇员能够雇佣.他们開始工作时间分别为A[i],求须要的最少的雇员人数. 思路: ...

  8. 如何访问python类中的私有方法

    在python中,不像c#/java类语言,支持类的私有方法,这点有点像objc,虽然objc可以通过扩展extension来实现,但源于objc的运行时特性,我们还是可以通过非常手段来进行访问的.不 ...

  9. 转: 加快Android编译速度

    转: http://timeszoro.xyz/2015/11/25/%E5%8A%A0%E5%BF%ABandroid%E7%BC%96%E8%AF%91%E9%80%9F%E5%BA%A6/ 加快 ...

  10. 区域设置 ID (LCID) 表, 及获取方法

    区域设置 ID (LCID) 表, 及获取方法 中国的区域设置 ID 是 2052, 如果经常打开微软软件的安装目录应该经常见到.获取很简单, 有现成的 API 函数: GetThreadLocale ...