PyramidTextMenu教程(四) 架构及基本组件
PyramidTextMenu(以下称PTM)如架构图所示,可以分为四个主要层和五个部分。
消息从I/O层向上传递至Option层进行处理,处理结果再返回至I/O层输出。
PyramidTextMenu基本组件
组件是PTM的基本构建块。以下是PTM中的三个主要组件。
组件 | 描述 |
---|---|
Scene | 会话场景,向一个用户单位提供服务,维护用户菜单层级关系。 |
TextMenu | 菜单(或称“目录”),包含菜单信息和选项组。向用户提供菜单列表信息。 |
Option | 选择项,负责响应用户操作进行菜单跳转的最小单位。 |
Scene 场景
Scene为与一个用户对象的会话场景提供服务,管理用户操作产生的TextMenu栈及其切换。也是交互时数据的入口和产生信息的出口。
一个场景是Scene类的子类,如下所示:
public class MyScene extends Scene {
}
TextMenu 菜单
一个Scene拥有一个初始的TextMenu,当有多个TextMenu处于Scene的TextMenu栈中,栈顶的TextMenu将处于活动状态,一个处于活动状态的TextMenu会完整的接受用户的操作。
一个菜单是TextMenu类的子类,如下所示:
public class MainMenu extends TextMenu{
}
Option 选项
Option负责执行一个具体的动作,如:返回一段特定文字、进入下一级菜单、返回上一级菜单、重新加载等。在绝大多数情况下,开发者是不需要继承于Option后自行开发功能的,PTM已经为支持的六类选项动作提供了快捷生成Option的方法封装,并且提供了执行相应动作前对接收信息预处理的回调接口。
但如果有特殊的功能需要,依然可以通过继承创建选项类。
一个选项是Option类的子类,如下所示:
public class CustomOption extends Option{
}