首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

Flex 框架PureMVC 源码解析之-IController篇

2012-08-27 
Flex 框架PureMVC源码解析之--IController篇1、最近工作的事情不太多,自己flex水平也很一般,只是经常用这个

Flex 框架PureMVC 源码解析之--IController篇

1、最近工作的事情不太多,自己flex水平也很一般,只是经常用这个框架而从来没有系统的分析过感觉还是很笼统;

???? 自己也希望看一些框架的源代码来提高自己,苦于大部分框架源代码太多而自己太懒而搁浅,碰巧pureMVC for Flex的代????? 码不是很多,所以想以此为以后研究其他源代码的开篇。


2、先上一个官方的类的结构图:

? ??
Flex 框架PureMVC  源码解析之-IController篇
?
? ? ?


3、首先了解一下第一个接口:IController

?

?

package org.puremvc.as3.interfaces{public interface IController{/**作用:负责绑定消息和消息的处理方法,*              其实在Controller类中存在一个数组(其实更确切点是Map)commandMap, * 形如commandMap[ notificationName ] = commandClassRef;  *              在commandMap中存在以notificationName 作为key,commandClassRef 作为value的key-value形式的对象,  *              当某个消息发出时,通过消息的名称(notificationName)作为key,找到消息处理函数commandClassRef。   * * @param notificationName 消息的名称  * @param commandClassRef  处理消息的类  */  function registerCommand( notificationName : String, commandClassRef : Class ) : void;/**作用:通过给定的INotication接口的实例Notification对象得到消息的名称 * (Notification是一个消息对象,保存消息类型、名称、消息体);  *               获取消息名称后,再通过之前绑定消息名称和处理消息的类的数组commandMap来 * 通过key(消息名称)得到value(消息处理类),并执行这个消息处理类。   * * @param notification 一个消息对象  */function executeCommand( notification : INotification ) : void;/**   * 作用:通过消息名称从commandMap中移除这个绑定的消息处理类   *    * @param notificationName 和要移除的消息处理类绑定的消息名称   */  function removeCommand( notificationName : String ):void;/**   * 作用:通过给定的消息名称来检查commandMap中是否存在与之对应的消息处理类   *    * @param notificationName 消息名称   * @return 返回在commandMap中是否存在这样一个与之绑定的消息处理类(布尔值)   */ function hasCommand( notificationName:String ) : Boolean;}}
?

热点排行