(转载)PureMVC 练习时的注意事项
1.主文件里实例化facade. 把主要的UI都放进去
2.第二步创建VO
3.UserForm 和UserList都有公共的持有别人需要的数据的变量
4.Mediator 把监听到的ui组件的event,能ApplicationFacade 事件的形式,sendNotification给大家。
5.sendNotification的时候,传的第二个参数,叫做内容体,对方需要什么就传什么。
6.Mediator都有一个NAME 静态属性,用于传给super()的第二个参数 不会
7.Mediator的构造函数只传一个参数,就是viewcomponent 这个viewcomponent 在这个Mediator类里是全局的。
8.ApplciationFacade里面要做四件事情
1).把事件名都准备好
2).写好getInstance()方法
3).要写好startUp方法
4).要定好initializeController这个方法,这里面至少把START_UP这个消息注册上。
9.StartupCommand 这个方法继承自MacroCommand这个command ,里面要addSubCommand两个Command,一个是ModelPrepCommand 一个是ViewPrepCommand 另外还要做一件事情是 ,注册上项目中具体的消息和Command 且上述这些都要放到initializeMacroCommand里面
10.ModelPrepCommand里面要注册上Proxy
11.ViewPrepCommand里要注册上所有具体的Mediator.因为在Meditor里要加上具体的view. 具体的view可以通过notifcation.getBody().{那个具体view在mainApp里面的id}
12.ModelPrepCommond 和 ViewPrepCommand 这两个Command 都继承自 SimpleCommand
13.UserListMediator的一个作用是把proxy中存的数据赋值给viewComponent.
14.Mediator 和 Proxy 中都有get
15.Proxy中有data这个公共属性
16.Proxy只发送,但不接收notification
17.在具体的command中,操作都是这样的:调用notification.getBody()拿到数据,然后retrieve proxy来执行操作
18.retrieveProxy方法出现在过Command里面,也出现在过Mediator里面。
19.具体的Command里面只有excute这一个方法。
20.Proxy里也有NAME这个必要属性,用于直接传入到super()这个方法里面,这个方法的第二个参数暂时定为new ArrayColletion(),即第一个参数是proxyName 第二个参数是data
21.retrieveProxy这个方法里唯一的参数是Proxy实例的NAME值.
22.instance在哪都有 在ApplicationFacade这个类里
23 Proxy 这个类要实现的东西。 1要有NAME 2要有super 3要把data用get 转换成可读的变量名,要有具体的方法(可能有若干个)
(转载)PureMVC 练习时的注意事项的更多相关文章
- Python:list 和 array的对比以及转换时的注意事项
Python:list 和 array的对比以及转换时的注意事项 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-6-4 ...
- MySQL DROP TABLE操作以及 DROP 大表时的注意事项【转】
删表 DROP TABLE Syntax DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCAD ...
- SSH框架整合jar包时的注意事项
SSH框架整合jar包时的注意事项: 在将三个框架所需的jar整合到一起后,要看一下有没有相同类型但是版本不同的jar包,如果有的话,需要把低版本的jar包删除掉,否则会报错.我这里整合的时候java ...
- No known class method for selector 'setImage:andName:'错误分析.//删除.h与.m文件时的注意事项
CHENYILONG Blog No known class method for selector 'setImage:andName:'错误分析.//删除.h与.m文件时的注意事项 ...
- 在win7系统上搭建django+oracle 11g时,注意事项
在win7系统上搭建django+oracle 11g时,注意事项[示例用的是python 2.7]: 重要:python.oracle.oracle client这三个的OS bit 一定一定要相同 ...
- MYSQL中GROUP BY不包含所有的非聚合字段时的注意事项
本文导读:在MYSQL中使用GROUP BY分组时,我们可以select 多个非聚合字段,但是这些字段不在GROUP BY中,这样的SQL查询在SQL SERVER.ORACLE中是不合理的,且会报错 ...
- Oracle数据库表设计时的注意事项
表是Oracle数据库中最基本的对象之一.万丈高楼从平地起,这个基础对象对于数据库来说,非常重要.因为其设计是否合理,直接跟数据库的性能相关.从Oracle数据库菜鸟到数据库专家这个过程中,在表设计与 ...
- Hibernate criteria 混合sql语句多表关联时查询注意事项
直接进入正题 假设有一个实体类 /** * 产品分类 */ public class ProductType{ @Id private String no;//编号 private String na ...
- 【转载】关于RenderTarget的注意事项
原文:关于RenderTarget的注意事项 1. 设置一个RenderTarget会导致viewport变成跟RenderTarget一样大 2. 反锯齿类型必须跟DepthStencilBuffe ...
随机推荐
- iOS--NSNetService和NSNetServiceBrowser(Bonjour网络编程)
Cocoa 网络框架: Cocoa 网络框架有三层,最底层的是基于 BSD socket库,然后是 Cocoa 中基于 C 的 CFNetwork,最上面一层是 Cocoa 中 Bonjour.通常我 ...
- UITableView优化的那些事儿
作为iOS开发,UITableView可能是平时我们打交道最多的UI控件之一,其重要性不言而喻. 关于TableView,我想最核心的就是UITableViewCell的重用机制了. 简单来说呢就是当 ...
- c#打开txt文件并导入到textbox中
OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Title = " 请选择您要导入的模板文件:&qu ...
- c语言指针字符串与字符数组字符串的区别
#include <stdio.h> int main() { //字符串常量,存放于内存常量区. //常量区区的内存具有缓存机制, //当不同指针指向的常量值相同时, //其实这些指针指 ...
- Android MVP模式
转自http://segmentfault.com/blogs,转载请注明出处Android MVP Pattern Android MVP模式\[1\]也不是什么新鲜的东西了,我在自己的项目里也普遍 ...
- 跨域技术-jsonp
JSONP是JSON with padding 的简写,其有两个部分组成,一个是回调函数,一个是数据,其基本格式如下 function handleResult(result){ alert(resu ...
- nginx Engine X静态网页服务器介绍
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. 反向代理(Reverse Proxy)方 ...
- 基于jquery实现的文字淡入淡出效果
这篇文章介绍了jquery实现的文字淡入淡出效果实例,有需要的朋友可以参考一下 复制代码代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- PHP接口(interface)和抽象类(abstract)
interface 定义了一个接口类,它里面的方法其子类必须实现.接口是类的一个模板,其子类必须实现接口中定义的所有方法. interface User{ function getHeight ...
- 读《CSCW的一种建模与实现方法》
这篇论文为我们描述了作者构建的一种基于交互.活动.协作三层结构的协同工作模型,并提出了一种采用“镜头焦点”和“自由交互”相结合的协作模型实现方法. 计算机支持的协同工作就是利用计算机技术将时间上分离. ...