Flex应用程序经常与不同类型的服务交互。这些服务可以由构建Flex前端的同一个团队开发,也可以由不同的开发团队在不同的时区独立开发。为提高效率,重要的是当服务暂时不可用时Flex开发并不会停止。
这可通过模拟或存储服务层,并提供在实际服务和存根之间切换的一个机制来实现。全部就绪后,如果服务器端团队需重新启动它的应用程序来部署一个新服务时,Flex开发人员就可仅启用它们的存根,并保持持续运行状态。同样的,如果一个网络问题阻止其访问实际服务,Flex开发人员就可仅启用它们的存根,并保持持续运行状态。同样的,如果一个网络问题阻止其访问实际服务,Flex开发人员就可以切换它们的存根。一些开发人员运行他们自己的包含存根服务实现的本地服务器,以便Flex客户端仍然可以发出服务请求,但存根服务返回模拟的数据,而不是与后端系统集成。然而,完全在客户端存根通常最容易,这使用Cairngorm可以很轻松地实现。
创建存根命令、业余舞员委托或访问监控工具的定位器
以下是存根Cairngorm应用程序的几种方法:
命令——可以创建命令的存根实现直接更新模型,而不是调用业务委托和服务。在命令中可以使用一个Timer来模拟现实命令中的异步本质。当在存根模式下开发时,可以在一个声明的存根前端控制器而不是实际的前端控制器中注册存根命令。
业务委托——可以创建业务委托的存根实现来模拟实际业务委托的效果,方法是手动创建Result Event或Fault Event对象并使用一个Timer异步调用IResponder接口。接口可从业务委托中获取,然后可以提取一个由命令用来实例化业务委托的工厂。取决于服务是否可用,这使数据在存根业务委托和实际业务委托之间实现交换。
服务定位器——在一个存根服务监控工具的定位器中可以定义一组存根服务。当在存根模式下开发时,声明的时存根服务监控工具的定位器。存根服务监控工具的定位器中的服务定义可以引用部署到本地Web服务器中的存根服务,或者可从本地文件中驱动。比如,HTTPService可被配置为加载包含模拟数据的本地XML,或者HTTP Service类可以扩展为模拟更详细的服务行为。
在这3中方法中,第一个是最简单的,但比较有限。启用存根命令只允许在视图和模型代码中继续更新,这是由于执行范围从不超出命令。存根业务委托允许使用和开发实际的命令,以及视图和模型。必须确保存根能创建精确的结果和错误事件;否则,针对存根开发的代码针对实际服务时就不能正确运作。第三种方法意味着当实际服务不可用时,在着呢个代码库可以继续开发。然后,这种方法是否适用要取决于服务的复杂度。
进一步的思考
可以调整和修改前面的方法。例如,可以将存根业务委托或命令编译到一个模块中,并只在启用存根时加载它们,从而阻止它们被编译到应用程序SWF中,为了简化启用和禁用存根的过程,使用一个URL参数或Flashvar在存根和实际实现中切换,这可以基于全局或者逐个服务实现。还可以使用IoC框架,如Parsley或Spring Action Script,在命令、委托和服务的实际实现和存根实现之间切换,而不需要手动编写工厂或其他辅助类。
除了防止开发工作停滞,存根服务还有其他益处:在无Internet连接的情况下,应用程序可正常演示,这对向客户展示非常方便。然而,实际服务层在开发的过程中应尽可能多地使用,来使集成问题减到最少,并可保证存根和实际服务之间的联系不出问题。
★关于WorkWin公司电脑监控软件★
WorkWin的使命是打造Work用途的Windows 电脑系统,有效规范员工上网行为,让老板知道员工每天在做什么(监控包括屏幕、上网在内的一举一动),限制员工不能做什么(禁止网购、游戏、优盘等)。
WorkWin基于纯软件设计,非常容易使用,无需添加或改动任何硬件,使用一台管理机监控全部员工机电脑。历经南京网亚十余年精心打造,此时此刻每天都有成千上万企业电脑正在运行WorkWin,选择WorkWin选择“赢”。
版权所有,南京网亚计算机有限公司 。本文链接地址: 存根服务层监控工具的定位器