| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 395 人关注过本帖
标题:请教,有什么好的结构定义
只看楼主 加入收藏
fedodidott
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-2-25
收藏
 问题点数:0 回复次数:0 
请教,有什么好的结构定义

我最近看到一个软件,它的运行机制很灵活,我很喜欢,但是不知道怎样实现。
它的运行机制是这样的:
它的很多功能模块,可以视为一个个的命令
比如 Command_A,Command_B,Command_C,Command_D ......Command_Z 。每个命令完成不同的功能,而且有不同的参数。
可以将这些命令任意组合成不同的流程,我们可以称之为子流程,
比如 SUB1 ,由 Command_A,Command_B,Command_C 组成;
比如 SUB2 ,由 Command_A,Command_D,Command_B 组成;
比如 SUB3 ,由 Command_B,Command_D 组成;
主流程,MainProcess,由任意的命令和子流程组成。比如
MainProcess
{
1、Command_A

2、SUB1

3、SUB1

4、SUB2

5、Command_C

6、Command_C
}
注意:
第2步的 SUB1,和第4步的 SUB1,它们所含相同命令的参数值是独立的;
第5步的 Command_C,和第6步的 Command_C,它们的参数值是独立的;
即每条命令的参数都是独立的。

软件运行时,按照以下规则运行主流程
1、分为“批处理”模式,和“单命令”模式;
2、“单命令”模式,就是按照顺序执行主流程里的命令和子流程。以上面的主流程为例,执行顺序为:
1、Command_A
2、SUB1里的Command_A
2、SUB1里的Command_B
2、SUB1里的Command_C
3、SUB1里的Command_A
3、SUB1里的Command_B
3、SUB1里的Command_C
4、SUB2里的Command_A
4、SUB2里的Command_D
4、SUB2里的Command_B
5、Command_C
6、Command_C
3、“批处理”模式,就是按照主流程里,如果有连续的相同的子流程,则会顺序执行这些相同的子流程中相同的命令。以上面的主流程为例,执行顺序为:
1、Command_A
2、SUB1里的Command_A
3、SUB1里的Command_A
2、SUB1里的Command_B
3、SUB1里的Command_B
2、SUB1里的Command_C
3、SUB1里的Command_C
4、SUB2里的Command_A
4、SUB2里的Command_D
4、SUB2里的Command_B
5、Command_C
6、Command_C

我试着写这种运行机制的程序,但是不知道如何定义子流程和主流程的结构,感觉很困难,不知道如何着手。
特别是
1、因为子流程或者主流程是由不同命令组成,难道把所有命令的参数都定义到子流程、主流程的结构中?那样,如果参数很多时,这个结构就很大,会不会造成需要很多内存分配;
2、如何实现主流程,按照“批处理”模式,和“单命令”模式来运行。

大家有没有好的建议,欢迎在这里讨论。谢谢!

搜索更多相关主题的帖子: 而且 软件 
2006-02-25 02:55
快速回复:请教,有什么好的结构定义
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040326 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved