博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
毕业设计的设计部分笔记4,高阶设计1
阅读量:4120 次
发布时间:2019-05-25

本文共 2253 字,大约阅读时间需要 7 分钟。

 

Lv2的设计在下面开始。

以下:

1、  具体的流程设计

2、  Lv2的设计,有tabtabletogglebuttontree等等

 

首先呢,就是关于具体的流程设计。

lv1中讨论了engine如何对其进行解析,不过,总体的流程应该如何去做,这个也是现在要讨论的问题。

首先是测试方案。

也就是如何来测试这些脚本,而不是一上来就开始写engine

测试的方案也是比较easy的。

首先,我们要了解这个测试里有什么。

我们知道,如果说要解析一个guixml文件,一个xml文件是必不可少的,如果没有这个文件的话我们解析什么呢。。所以,在这里会有一个模块叫做:XML Files

其次,就是最重要的部分了,就是engine模块。

然后呢,就是view的模块了,这里我们同一叫做为:Web Browser

这三个模块组成了最基本的可能的测试模块流程之一:

XML FILES à JS ENGINE à WEB BROWSER

为什么说是之一呢,因为,在测试的过程中,有可能不是这样的顺序。

下面我把可能的测试方案都列举出来。。

方案1

Xml files ------ selected by ---à web browser ----use---à js engine -----show in the-----à web browser

因为想到我那个打印机怎么打都打不出visio的线,同时啊,visio的图也可能不能发到网上去,大家就先这样凑活的看。。

上面的流程其实就是在浏览器中直接选择一个文件来进行解析。这个方法是最直观的方法了。

方案2

web browser ---load--àxml file ----use---à js engine ---show in the ----à web browser

你可能会认为,这两个不是一样么。。其实还是有一点点的不同了。因为这样子的话,可以通过body的一个叫做onloadattribute来读取这个xml文件,而不是需要进行选择才能够执行。这个就是方案1和方案2的区别。

方案3

Js engine ----include------à xml files ------to show in the-----àweb browser

这里,js engine 会写入xml文档而不是html文档中的调用,也就是说,需要考虑到,xml文档和js engine之间存在的一个关系,是否需要有方案3这样的混合xml文档呢?这个有待考虑。不过,按照软件工程来看,这个方法虽然在效果上很不错,但是啊,并不是一个很好的工程。因为之间出现了强耦合。

 

Ok。现在我们再来看看解析器要做的事情。

 

这个parser有很多的表,对吧。恩。那么,这个解析器要如何去解析这样的表呢,或者说,如何去解析xml文件后把这些attribute怎样的放入这个表。。

 

xml file通过上面三种方案的任意一种read进入内存的时候,解析器开始工作。这里使用的解析工具是Microsoft.xmldom。这个activeObject。有一点需要注意,就是,JavaScript也是区分大小写的。不要再这个上面出现错误。

通过dom,我们可以很容易的得到attributevalue。包括componentattribute以及component需要的value。为什么这样子说呢,打一个比方:

现在有一个这样的xml片段:

<attribute name= “value”>click_me</attribute>

Ok,相对于attribute来说,他有一个attribute叫做name,那么这个name有一个value叫做value,也就是说,这个attribute拥有一个attribute叫做“name=value”。那么现在再来看那个click_me。从逻辑上来看,click_mevaluevalue。也就是componentvalue,而namevalue中的value相当于是componentattribute。所以说,我们同样需要得到“value= click_me”这一项attribute

有点绕哈。。哇,我能写出这样纠结的东西~

 

那么解析的第一步,我们可以创建一个复合表。将这些attributevalue一点一点的对应出来,为我们像component表和attribute表输入数据做好前提准备。

这个复合表的设计如下:

Component 名称

Attribute1

Value1

Attribute2

Value2

。。。

。。。

举个例子:

click_me

Type

Button

Text-align

middle

。。。

。。。

哦。这里就需要注意啦,这里仅仅考虑只有一个frame的情况。如果有多个frame的话,需要建立一个framecontainer来包含这些。

Framecontainer

Frame 名称

包含的复合表的子表们

1

2

。。。。。。。。

采用这样的方法来进行约束。

那么,在后期读取的时候,可以采用vb中的对象方式。也就是frame1.click_me这样的形式进行,这样会让整个的开发清晰,那么同时也提出了需要一个解析这样的对象方式的方法的需求。在test中已经能够实现这样的读取了,通过jssplit来进行分割。

 

哦。休息一下,把这些传上去,然后慢慢来。。

转载地址:http://menpi.baihongyu.com/

你可能感兴趣的文章
Linux分区方案
查看>>
nc 命令详解
查看>>
如何使用 systemd 中的定时器
查看>>
git命令速查表
查看>>
linux进程监控和自动重启的简单实现
查看>>
OpenFeign学习(三):OpenFeign配置生成代理对象
查看>>
OpenFeign学习(四):OpenFeign的方法同步请求执行
查看>>
OpenFeign学习(五):OpenFeign请求结果处理及重试控制
查看>>
OpenFeign学习(六):OpenFign进行表单提交参数或传输文件
查看>>
Ribbon 学习(二):Spring Cloud Ribbon 加载配置原理
查看>>
Ribbon 学习(三):RestTemplate 请求负载流程解析
查看>>
深入理解HashMap
查看>>
XML生成(一):DOM生成XML
查看>>
XML生成(三):JDOM生成
查看>>
Ubuntu Could not open lock file /var/lib/dpkg/lock - open (13:Permission denied)
查看>>
collect2: ld returned 1 exit status
查看>>
C#入门
查看>>
C#中ColorDialog需点两次确定才会退出的问题
查看>>
数据库
查看>>
nginx反代 499 502 bad gateway 和timeout
查看>>