uremvc开发框架使用手册中

uremvc开发框架使用手册中

ID:23632642

大小:109.51 KB

页数:9页

时间:2018-11-09

uremvc开发框架使用手册中_第1页
uremvc开发框架使用手册中_第2页
uremvc开发框架使用手册中_第3页
uremvc开发框架使用手册中_第4页
uremvc开发框架使用手册中_第5页
资源描述:

《uremvc开发框架使用手册中》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、PureMVC开发框架使用手册目录(目录结构==类文件的文件夹结构)1patterns包1.1开发框架1.2框架结构1.3使用方法1.4“高内聚低耦合”的实现——程序架构要点2Facade类3mvc包3.1Model类3.2View类3.3Controller类4media包4.1Proxy类4.2Mediator类4.3Command类4.4Commands类5observer包5.1Observer类5.2Notifier类5.3Notice类正文1patterns包是开发框架的顶级包,应该放在程序的类目录的根目

2、录下。1.1开发框架开发框架就是一个空架子,我们可以自己加工、创造零部件,装配上去,使这个系统按照我们的设计意图运行起来。这个开发框架基于PureMVC框架构建,目标是开发出更健壮、易维护、易扩展、可重用的应用程序。当然,采用这个开发框架并不等于实现了这个目标,要实现这个目标,还需要我们在开发过程中不断调整、不断优化程序架构。实现这个目标的关键是,降低模块间的耦合度。1.2框架结构这个开发框架分为低耦合的三个层Model、View和Controller。这三部分由三个单例模式类管理,三者合称为核心层。还有一个单例模式

3、类——Façade,是整个系统的管理者。简单地说,就是三个核心层、一个管理者,其余的就是零部件,可以按需增减。其架构如下图所示:其中:▲Model负责保存Proxy名称与实例的映射,根据Proxy名称获取其实例。Proxy负责保存数据对象,存取数据。▲View负责保存Mediator名称与实例的映射、Notice名称与观察者的映射,根据Mediator名称获取其实例,根据Notice通知其观察者。Mediator负责保存视图组件,操作具体的视图组件,处理通知。观察者负责保存通知的处理者及其处理方法,收到通知则告知其处

4、理者处理这个通知。▲Controller负责保存Notice名称与Command类的映射,执行通知对应的Command。Command负责执行业务逻辑处理通知。▲Façade是框架的管理者和通信中心,是框架与外界通信的唯一接口,负责初始化Model、View、Controller单例,发送通知。1.3使用方法开发框架只是搭建了一个空架子,我们所要做的就是编写具体的Command、Mediator、Proxy等这些零部件,给它们添加自定义属性和方法,保存到Model、View、Controller中。在没有保存Prox

5、y、Mediator和Observer、Command时,Model、View、Controller就是一个空架子。通常,我们需要自定义视图组件:影片剪辑或声音放在Flash库中,它们对应的类文件放在包中,Flash的舞台就是一个自定义视图组件,文档类就是舞台对应的类文件。有时,还需要自定义事件、声音对象、数据对象等等。1.4“高内聚低耦合”的实现——程序架构要点1.4.1什么是高内聚低耦合?简单地说,就是模块之间不直接互相操作,而是通过中介:通知、事件来实现互操作。举例一:程序中有两个对象A、B,当A发生变化时,需

6、要B随之变化。如果A发生变化时,只发出通知或触发事件,B负责响应,那么A、B之间就是低耦合关系。A、B不必知道对方的实现细节。如果A发生变化时,直接调用B的接口,使B发生相应变化,并获取操作结果,那么A、B之间就是强耦合关系。A、B需要知道对方的一些实现细节(属性或方法)。举例二:球场上打比赛,As是裁判、Bs是球员,As与Bs需要合作。如果比赛需要暂停,As只是吹哨,Bs听到号令就停下来,那么As、Bs之间就是低耦合关系。As、Bs不必抓住对方手脚。如果比赛需要暂停,As直接走过去把Bs控制住,使Bs无法继续行动,

7、那么As、Bs之间就是强耦合关系。1.4.2实现手段——程序架构要点1、采用事件模型2、采用通知机制3、事件模型和通知机制的结合2Facade类包:patterns类:publicclassFaçade实现:FaçadeèIFacadeFaçade是框架的管理者和通信中心,是框架与外界通信的唯一接口,放在顶级包中,负责初始化Model、View、Controller单例,发送通知。2.1属性//===========只允许自己和子类访问================protectedvarmodel:Model;/

8、/Model单例protectedvarview:View;//View单例protectedvarcontroller:Controller;//Controller单例protectedstaticvarinstance:Facade;//Facade单例protectedconstSINGLETON_MSG:String="Facadea

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。