1   简介

Pure MVC是在基于模型、视图和控制器MVC模式建立的一个轻量级的应用框架,这种开源框架是免费的,它最初是执行的ActionScript 3语言使用的Adobe Flex、Flash和AIR,现在已经移植到几乎所有主要的发展平台,目前支持两个版本框架:标准和多核,总之,标准版提供了一种简单的编码分离的方法,按照MVC设计概念。除此之外,多版本允许多个PureMVC应用运行在同一个虚拟机;模块化编程
在PureMVC实现的经典MVC元设计模式中,这三部分由三个单例模式类管理,分别是Model、View和Controller。三者合称为核心层或核心角色。
PureMVC,就如同它的名字是,它是一个纯粹的小巧的MVC框架,支持多语言。
PureMVC有一个名为Mediator的构造,顾名思义,它就是Mediator模式的实现,充当视图API和程序其余部分的API之间的中介。这是PureMVC实现MVC架构视图部分的关键构造。引入它是为了减少应用和视图之间的依赖,从而降低整个系统的耦合程度。[1]

2初始化

}
{
}

3运行时

4优缺点

优点

1,支持多语言
Language
Targets
ActionScript 2
Flex 1.5, Flash 8, FlashLite
ActionScript 3
Flex 2, 3, Flash 9/CS3, AIR.
C#
.NET 1.0/2.0 Silverlight, Windows Mobile and Pocket PC.
ColdFusion
ColdFusion 8
haXe
JavaScript, Flash 8, Flash 9 and the Neko VM.
Java
Java Mobile, Standard and Enterprise Editions (ME, SE, EE), JavaFX, Servlets, Applets, and GWT
JavaScript
Browser neutral
Objective C
Apple iPhone and Mac
PHP
PHP 5
Python
Python 2.5 for wxPython, Google App Engine, Pyjamas [13]
Ruby
 
C++
MSVC 8.0/9.0/10.0, MinGW 3.4.5, GNU G++, Embarcadero C++ 6.21
2,支持标准和多核,标准版提供代码分离的方法,多核版支持模块化

缺点

1,灵活度过高,要清晰控制一个事务过程不容易。 这个是由通知无向性决定的,很难确定谁来监听某一个通知,通知不利于调试。
2,代码冗余比较大,Mediator、Proxy等继承类的冗余代码,但是ActionScript不支持Generics以及Reflection能力弱,使得难以消减代码。

5特点

转载于:https://www.cnblogs.com/fuland/p/3632852.html

pureMVC介绍及学习相关推荐

  1. 一文详细介绍深度学习的各种卷积操作

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 转自: 机器之心 我们都知道卷积的重要性,但你知道深度学习领域的卷积究竟是什么,又 ...

  2. 【转载】Wireshark基本介绍和学习TCP三次握手

    Wireshark基本介绍和学习TCP三次握手 转载自:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html 之前写过一篇博客 ...

  3. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)简要介绍和学习计划

    在Android系统中,提供了独特的匿名共享内存子系统Ashmem(Anonymous Shared Memory),它以驱动程序的形式实现在内核空间中.它有两个特点,一是能够辅助内存管理系统来有效地 ...

  4. Android进程间通信(IPC)机制Binder简要介绍和学习计划

    在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中.那么,不在同一个进程的 ...

  5. SQLite介绍、学习笔记、性能测试

    哪些人,哪些公司或软件在用SQLite: Nokia's Symbian,Mozilla,Abobe,Google,阿里旺旺,飞信,Chrome,FireFox 可见SQLite的稳定性及性能是不会有 ...

  6. Android应用程序组件Content Provider简要介绍和学习计划

    在Android系统中,Content Provider作为应用程序四大组件之一,它起到在应用程序之间共享数据的作用,同时,它还是标准的数据访问接口.前面的一系列文章已经分析过Android应用程序的 ...

  7. 老郭的《Dalvik虚拟机垃圾收集机制简要介绍和学习计划》

    伴随着"Dalvik is dead,long live Dalvik"这行AOSP代码提交日志,在Android5.0中,ART运行时取代了Dalvik虚拟机.虽然Dalvik虚 ...

  8. Android窗口管理服务WindowManagerService的简要介绍和学习计划

    在前一个系列文章中,我们从个体的角度来分析了Android应用程序窗口的实现框架.事实上,如果我们从整体的角度来看,Android应用程序窗口的实现要更复杂,因为它们的类型和作用不同,且会相互影响.在 ...

  9. elixir开发的项目_我对Elixir的介绍:学习另一种编程语言如何使您成为更好的开发人员...

    elixir开发的项目 by Nikolas O'Donnell 由Nikolas O'Donnell 我对Elixir的介绍:学习另一种编程语言如何使您成为更好的开发人员 (My intro to ...

最新文章

  1. Runtime编译环境搭建
  2. ie浏览器里面无法输入文字:
  3. python获取方法的装饰方法_python – 在一个方法上得到装饰器名称的内省?
  4. c++ byte*长度_9.19秋冬原C日标95白鹅绒超保暖柔软大被子羽绒服 从头到脚的温暖...
  5. 【QT】QT从零入门教程(十六):QSS样式表
  6. android tabhost的使用方法,android TabHost(选项卡)的使用方法
  7. eclipse不报错 intelliji 报错_小白提问:导入内置包winsound不报错但没声音是什么情况?...
  8. 路径的形式不合法解决方案
  9. dog log 算子_log算子和dog算子
  10. kmeans算法及python实现
  11. 【喜讯 · 喜讯】讲师自营销计划奖励又双叒叕来了!
  12. 未来家用计算机发展趋势,容易写的计算机未来发展趋势论文选题 计算机未来发展趋势论文题目如何取...
  13. 无线路由器的dhcp服务器如何设置,无线路由器怎么设置dhcp服务器
  14. 前端开发工程师必备网站
  15. python 字符串的输入和输出
  16. 硬件加速不支持的问题
  17. 网络营销、网络推广必备工具网站大全
  18. 原生微信小程序购物车
  19. VS2013卸载QT插件
  20. linux无线命令管理工具,Linux无线网络实用工具Top 10

热门文章

  1. MATLAB 中怎么求图像在水平方向和垂直方向的像素和,用图表示
  2. mysql connector安装教程_通过安装MySQL Connector/Net实现VS2017 C#编程连接MySQL数据库-网络教程与技术 -亦是美网络...
  3. 查看回滚事物sql_卧槽:这款 SQL自动检查神器,吊炸天的功能,真TMD多!!
  4. 【解决办法】torch交叉熵使用时遇到 Dimension out of range
  5. 【解决方案】from pip import main
  6. 练习:Padding 填充
  7. 矩阵二范数(norm)
  8. ajax jq 图片上传请求头_如何使用js或jQuery向Ajax请求添加自定义HTTP头?
  9. 四边形可以分为几类_学习知识:四边形有几种类型
  10. 14-jQuery补充