Caringorm控制流程
当Caringorm应用程序增加新需求时,下面是一个简单的操作步聚:
(1)创建或修改Value Objects;
(2)在Front Controller中使用AddCommand()方法注册新的事件(Event)和命令(Command)的映射关系。
(3)创建新的命令(Command):
A)实现execute()方法;
B)实现处理从服务器端返回数据的onResult()方法
i)更新Model Locator的结果;
ii)Model Locator自动通知View显示。
(4)增加命令(Command)委托Business Delegate的服务调用;
(5)如果需要新的RPC Services,添加至Service Locator。
调试Caringorm应用程序步聚
当Caringorm程序功能,不能正常响应时,一般按以下五个步聚操作调试:
(1)检查Front Controller是否已经注册事件;
(2)检查Command中的execute()是否已经被Controller调用;
(3)检查是否正确调用委托方法;
(4)检查Command中的onResult()是否已经被调用;
(5)检查Model Locator是否已经更新。
Cairngorm的划分
Model Locator(模型定位器):存储你的应用中所有的Value Objects(数据)和共享变量在一个位置。和Http的Session对象类似,只是它存储在Flex接口的客户端而不是在中间件应用服务器的服务器端。
View(界面):通过一个或者多个Flex组件(按钮、面板、组合框、Tile等等)组合在一起的一个个命名单元,绑定数据在Model Locator(模型定位器)中,并且产生基于用户操作(点击、滚动、拖拽等)的自定义的Cairngorm事件。Front Controller(前端控制器):接收Cairngorm事件并映射他们到Cairngorm命令控制器上。
Command(命令控制器):处理商业逻辑,调用Caringorm代理和(或)其它命令。Delegate(代理):由命令创建,实例化远程过程调用(HTTP、Web Service等等)并且处理命令的返回结果数据。
Service(服务):定义连接远程数据存储的远程过程调用(HTTP、Web Service等等)。