免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 1745|回复: 1
收起左侧

[热点讨论] PureMVC

[复制链接]

1

主题

64

铜板

0

好友

实习生

Rank: 1

积分
9
发表于 2011-2-17 08:18 | 显示全部楼层 |阅读模式
简单的说,PureMVC源于MVC模式,主要就是Model、View、Controller这三层次。但在PureMVC中上述三个都被封装成了三个核心层,并通过单例模式提供给应用程序。开发人员5 D) F, Q! b0 a6 r5 |: ?% d9 v
不需要直接使用这三个核心层。PureMVC为了简化开发复杂度,提供了一个Facade类,该类提供了与核心层通信的唯一接口,可以初始化上述三个核心层,并可以访问它们的
/ f6 w, D: d7 {5 [3 E5 d- o( }; I# Ipublic方法,同时该类也是以单例模式提供给应用程序。开发人员只需要继承一个Facade类并创建具体的Facade类就可以实现整个MVC模式。除了知道Facade类之外,还需要了解9 Y" n! j' q* r- D6 Y1 t4 Z
与三个核心层相辅助的三个类:Proxy、Mediator、Command。/ j8 s# p3 ?. q2 ]  ~2 W0 W& j! ]
      Proxy,可以理解为代理,负责操作数据的存取。# m) a* R/ G! |
      Mediator,可以理解为媒介,负责UI层与控制层之间的沟通。9 }3 q; e/ `' ^
      Command,则是用来操作具体的业务逻辑。' i& {( L* F# i0 u5 w7 _
      为了对这三个核心层尽量的解耦,PureMVC中采用了消息机制,层与层之间的通信通过发送消息(notification)来实现。消息发送者只需要实现发送,不需要知道谁会接收/ p1 ?! w7 y; k, v5 ^1 _7 ]
这些消息。消息接收者如果需要接收消息,只需要注册一下对应的消息就可以了。如:registerCommand(START_UP, StartUpCommand);这句话产意思就是注册了一个对应关系,$ v. A; I7 C2 g
其中START_UP是消息的名称,StartUpCommand则是一个Command,这样当有人发送了START_UP名称的消息后,就会由StartUpCommand进行处理。0 C' D4 G1 s1 _, }+ P: G' x& Q
) K) ]  }) B, J) u) R

1145

主题

10万

铜板

2

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
21817

灌水勋章活跃勋章冰雪节勋章

QQ
发表于 2014-1-9 17:30 | 显示全部楼层
进来看看了  B9 K2 I5 a/ A' d6 _2 O

评分

参与人数 1铜板 +1 收起 理由
admin + 1 亲,你好快哦~~~

查看全部评分

加强科技支撑和引领  实现地质找矿新突破 。     
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表