当前位置: 技术问答>java相关
高分求设计模型(类模型)
来源: 互联网 发布时间:2015-07-28
本文导语: 高分求设计模型 需要设计一个自动控制的模型.要求如下: 有几个设备,每个设备都有自身的消息以及可方法. 需要有一个控制中心能接收这些设备的消息并对其它相关的设备进行操作. 在这里,...
高分求设计模型
需要设计一个自动控制的模型.要求如下:
有几个设备,每个设备都有自身的消息以及可方法.
需要有一个控制中心能接收这些设备的消息并对其它相关的设备进行操作.
在这里,这些设备既是消息的发出者,也是动作的执行者.控制中心要求与设备
能有机的分开(在程序中以一个独立的类实例存在),执行需要异步.就象设备向控制中
心发出消息后就不管了.接下来由控制中心来进行指挥其它的设备工作.
请问有什么好点的模型?希望可以提供一个模拟的例子.用JAVA实现.
需要设计一个自动控制的模型.要求如下:
有几个设备,每个设备都有自身的消息以及可方法.
需要有一个控制中心能接收这些设备的消息并对其它相关的设备进行操作.
在这里,这些设备既是消息的发出者,也是动作的执行者.控制中心要求与设备
能有机的分开(在程序中以一个独立的类实例存在),执行需要异步.就象设备向控制中
心发出消息后就不管了.接下来由控制中心来进行指挥其它的设备工作.
请问有什么好点的模型?希望可以提供一个模拟的例子.用JAVA实现.
|
这是不是一个交替调度的问题?,能否在OrderCenter离开一个服务线程实现对机器人的交替调度?
public class OrderCenter implements Runnable{
....
public void run(){
boolean mySwitch=false;
while(true){
if(mySwitch){
LRobot1.process();
}else{
LRobot2.process();
}
mySwitch=!mySwitch;
}
}
...
public class OrderCenter implements Runnable{
....
public void run(){
boolean mySwitch=false;
while(true){
if(mySwitch){
LRobot1.process();
}else{
LRobot2.process();
}
mySwitch=!mySwitch;
}
}
...
|
代理模式:控制中心到设备完全独立
适配器模式:软件与硬件独立
命令模式:封装消息
修饰模式:封装设备功能
组合模式:减少类粒度
参见机工《设计模式-可复用对象软件的基础》
适配器模式:软件与硬件独立
命令模式:封装消息
修饰模式:封装设备功能
组合模式:减少类粒度
参见机工《设计模式-可复用对象软件的基础》
|
可参考SNMP的模式