组合界面的应用程序块课件



《组合界面的应用程序块课件》由会员分享,可在线阅读,更多相关《组合界面的应用程序块课件(35页珍藏版)》请在装配图网上搜索。
1、Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,编辑母版标题样式,编辑母版文本样式,第二级,第三级,第四级,第五级,组合型智能客户端应用,With Composite Application Block,曹严明,.NET,架构顾问微软(中国),日程,组合型应用的应用场景,Composite App Block,体系架构概述,Composite App Block,主要概念,Demo,JPMC,网上银行,集成,
2、投资信息,集成,分析工具,集成,新闻及提醒,集成,股票数据,Citibank,信息发布门户,Thomson,金融数据门户,Dell,客服集成桌面,Commonwealth Bank of Australia,柜员系统,Commonwealth Bank of Australia,柜员系统,Client tier,Commonwealth,柜员系统体系结构,Data storage,Private Services,SmartPart,Active,Directory,Local,Cache,Agent,Security,Instrumentation,Oracle,Configuration,
3、Authn,Orchestration,Private service n,Private service,Authz,Config,Legacy systems,Mainframe n,WS Proxy,IFW Service n,SOFA,Service Helpers,Data Integration,SOFA,Mainframe,IFW Service,Data centre,Branch site,Smart Client,Smart,Card,Local AD,SOFA Farm,HIS Farm,AD Farm,BizTalk Farm,Mainframe,Other Appli
4、cation,Servers,Oracle,Every Service authorized against AD,Commonwealth,柜员系统部署方案,日程,组合型应用的应用场景,Composite App Block,体系架构概述,Composite App Block,主要概念,Demo,Billing,Inventory,CRM,Smart Client,Module,组合型解决方案,将不同的功能模块组合成解决方案,运行环境提供基础服务,降低开发成本,灵活方便,什么是组合型智能客户端应用,?,Smart Client,Module,Smart Client,Module,Comp
5、osite UI App Block,的来由,UIP1,PAG,UIP2,PAG,CAB,PAG,CCF,Thomson,Dell,CAB,微软其他部门,客户解决方案,PAG,Other field frameworks,Composite UI Application Block,创建企业级智能客户端,对系统设计团队的价值:质量与一致性,提供一个针对企业级智能客户端应用的公共开发体系结构,提供一个一致的和可预测的方法来开发、包装、发布基础组件,以便强制企业应用的体系结构标准,对开发团队的价值:生产力,提供一个开发环境能很好的隐藏复杂度和提高生产力,通过高度抽象和关注点的分离,开发人员能够关注
6、于业务逻辑,提高基础框架代码的复用,商务目标:提高最终用户的生产力和业务工作的敏捷性,公司可以以更敏捷的方式推出新的和升级的功能,界面使最终用户更快的、更准确的完成工作任务,避免通过,Alt-Tab,Copy-Paste,的方式作应用间的数据交换,一致的界面降低了培训费用,主要困难,将完全不同的组件组合成一个完整的应用,将,Shell,部分与应用逻辑部分分离开来,可扩展性使您能使用自己的设计模式和开发方法,Shell,Composite App Block,概述,Module,UI Element Mgr,View,UI Element Mgr,View,Element,Element,App
7、lication Host,Work Item,Shared State,Shared Events,CAB,体系结构,Shell,Host,User Interface Elements,SmartPart Managers&Base Classes,Hosted Control,Layout,MDI,StatusStrip UI Element,MenuStrip UI Element,ToolStrip UI Element,Services,CatalogReader,Loader,Authentication,Logging?,Module 1,SmartPart 1,Control
8、ler 1,Shared State,Module 2,Shared State,SmartPart X,Controller X,SmartPart Y,Controller Y,Main Form,Initializer,Authorization?,Biz Logic,开发,Infrastructure,开发,Shell,开发,A Work Item,设计组合型应用,应用逻辑,将,views,(,SmartPart,)设计为独立于,controllers,的单元,共享模块状态,共享基础服务,封装用例 重用,降低模块间的依赖性,尽量使用,events,services,and interf
9、aces,SmartPart A,Controller A,SmartPart B,Controller B,Business Entities,Business Entities,Service1,A Work Item,设计组合型应用,界面逻辑,SmartParts,是控件,Workspaces,在一个可视框架中显示它们,Shell,开发人员开发,Workspaces.,控件跟,Workspaces,无关,界面元素可以用共同的方法添加,以免业务逻辑开发人员把业务逻辑跟特定的界面风格紧耦合,可以集中控制用例改变界面的方式和时间,Commands,连接了可操作界面元素集和一个业务逻辑,call
10、back,View A,Controller A,View B,Controller B,Business Entities,Business Entities,Shell,UI Elem Mgr 1,UI Elem Mgr 2,Element1,Element2,UI Init,Command,Command,Windows Workspace,Tab Workspace,应用启动次序,:1 of 2,初始化,Shell,Host,和初始服务,Shell,启动,Shell,给,HostFactory,提供基本的启动设置,HostFactory,根据这些设置创建,Authentication,
11、CatalogReader,Initializer,和,Loader,服务的实例,HostFactory,创建,Host,并把这些服务添加给,Host,Host,Shell,Host Factory,Bootstrap Config Data,Loader,1,2,3,Authentication,Initializer,4,5,CatalogReader,应用启动次序,:2 of 2,初始化,Host,并加载,Modules,Shell,调用,Host.Initialize,(),这个由,Initializer,服务实现,Host,调用,Authentication,服务,该服务负责在当前应
12、用程序域中建立,principal,CatalogReader,服务以,Solution Profile,返回基本模块设置。,CatalogReader,服务封装了如何选择正确的,Solution Profile,以加载正确的,SmartParts,Loader,被调用并赋予,Solution Profile,,开始以正确的次序加载,modules(,带有依赖性的属性,),Loader,调用,module,的入口类的,AddServices,(),方法,让,module,注册自己的服务然后调用,Start(),方法,Host,Shell,Loader,1,Authentication,Cata
13、logReader,MyModule,IPrincipal,2,Host Initialization,SolutionProfile,3,4,IModule,Load Assembly,Load IModule,ServiceXYZ,5,-AddServices-Start,Initializer,Components,Services&Containers,CAB,所有的部分都是围绕着,containers,components,and,services,这三个概念构建的,采用这个体系结构,你可以对,CAB,的功能进行任意的扩展,Components,是包含一些逻辑的对象。比如,,Wind
14、ows Controls,controllers,带有业务逻辑和服务代理,Services,是被应用中许多,components,调用的对象。比如,security services,tracing services,eventing services,Containers,是,components,和,services,的集合。,Container,管理其中的,components,的生命周期。,.Component,可以向,container,请求一个,service,。,Containers,可以包含其他的,containers,。,ApplicationHost,Default Wor
15、k Item,Child Work Item 1,Child WorkItem 2,Service1,Service2,Component1,Component2,Component3,Component4,Component5,Service3,添加和定位服务,使用,Service Locator,和,Injection,模式,Adding Services,CAB Foundation Services,Module-added services,Programmatically,Declaratively,Acquiring Services,Find in upstream conta
16、iners,Programmatically,Declaratively,ApplicationHost,A Work Item,Module Loader,Module,Service(typeof(IMyService),public class MyService:IMyService,IMyService,MyService,View,Controller,public class MyComponent,ServiceDependency,IMyService myService;,日程,组合型应用的应用场景,Composite App Block,体系架构概述,Composite App Block,主要概念,Demo,Shell,UI Elements:,你可以改变的,shell,中的共享元素,菜单条,状态条,,splash screens,etc,Workspaces:,能够显示和隐藏控件的对象,Tabbed,Zoned/“Portal”,MDI,Windows,Decked,Commands:,可以映射到多个界面元素的“行动,”,比如“显示客户明细,”,命令有工具条项
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。