Flex 开发框架汇总
1.现有成熟Flex框架
Cairngorm (Adobe Open Source) - MVC framework
PureMVC (Open Source) - MVC framework
Mate (Open Source) - tag-based, event-driven
Swiz (Open Source) - Metadata-based Dependency Injection
Spring ActionScript (Open Source) – IOC Framework
parsley(ipen Source) - IOC 框架,元标签
2.Cairngorm
http://opensource.adobe.com/wiki/display/cairngorm/
优点:
* 开发简单,易于测试
* 保持表现层和数据模型尽可能的简单
* 分离状态处理, 表现, 动作, 服务端通信, 使得代码简单清晰
* 有利于平行开发
缺点:
* 需要写大量的类应该是Cairngorm最多的负面评论了。在Cairngorm中,每一个event对应一个command;因此,需要对程序触发的每 一个事件来写一个command类。而且,还要为command写一些其他的类,例如delegates。即使是一个中型的应用也会导致大量的类产生
* Cairngorm实现了自己的一套事件处理的方法。这增加了Flex内置事件模型的复杂度,而且它还有限制。由于每个事件都有自己的的command, 事件的响应者被限制成1个。加之Cairngorm的事件不具冒泡特性,如果要发送数据到容器的其它层次则需要自己来实现
* Cairngorm依赖全局的单例,这让模块和单元测试变得困难。尽管可以打破单例中的模型简化测试,但是会增加额外的过程
* Service Locator和Delegates比较臃肿
* 没有针对Views的解决方案
-----------------------------------------------------------------------
3.PureMVC
http://puremvc.org/
优点:
* PureMVC一个稳定的框架并且拥有一个庞大的活跃社区来支持它。因为它为应用需要如何被创建以及开发人员之间的标准化编码提供了一个意义明确的结构,所以它也非常适合团队开发。
* 解耦后,可分为Façade、Command、Mediator(components)、Proxy(Value objec)四大部分,各部分耦合度低
缺点:
* PuremvC 是一个相当复杂的框架,相对更难快速学会。除非你的团队非常熟悉它,培训新的雇员会提高生产时间。
* PureMVC对于事件处理拥有它自己的方法,并且它会使标准的Flex事件模型更难运作
* PureMVC框架需要创建很多类,这些创建工作会增加生产时间和项目的大小
------------------------------------------------------------
4.Mate
http://mate.asfusion.com/
基于Mate创建的Flex项目结构:
* 必须拥有一个或多个事件
* 必须有一个MXML文件称为event map
* event map mxml文件定义想侦听的事件和如何响应该事件
* 可以拥有多个event map文件
* 当把需要的数据提供给类或者注入类时,对象被构造。对象不需要获取数据,而是把需要的数据传给对象
优点:
* 采用依赖注入方式实现了视图类和业务处理分离
* 使用Flex事件机制派发和接收事件
* 文档和示例众多
缺点:
* EventMap都是通过XML实现的。XML编程很快就会令你身处困境
* 不能使用AS3编译时的类型检查功能
* 不规范团队开发应用的方式,需要团队自行定义
好的的博客与网站:
1.wolen博客,分析了mate的框架运行原理
-------------------------------------------------------------
5.Swiz
http://code.google.com/p/swizframework
优点:
* 易于使用
* 不强迫改变项目文件结构
* 基于 metadata 的 IoC 和 DI 方式
* 最大程度使用 Flex 内置事件处理机制
缺点:
* 同 Mate 类似,也不定义项目结构,需要开发团队自行定义
* Swiz1.0开始支持module开发,但目前没有任何文档,swiz1.0目前是beta版
文章:
1.体验Flex:Swiz框架深度解析,http://www.riameeting.com/node/188
---------------------------------------------
6.Spring ActionScript
http://www.pranaframework.org/
优点:
* 基于Java Spring框架设计,兼容 Cairngorm和PureMVC
* 特别有远程服务和消息方法定制,无需改动 services-config.xml 或者 messaging-config.xml
* 特别专注于BlazeDS和remoting messaging交互逻辑
* 易于测试
* 支持文档齐全
缺点:
* 应用程序加载时间变长
* 无法无法更轻量的处理Logging,开发团队应该在Spring AS之外实现logging
参考文献
1.FLEX开发框架汇总.http://hi.baidu.com/%BC%FC%C5%CC%CA%D6%BB%D2%CC%AB%C0%C7/blog/item/dd2a5580bad025a80cf4d2f6.html
2.Application Frameworks - The Good, The Bad & The Ugly. http://www.slideshare.net/RichardLord/application-frameworks-the-good-the-bad-the-ugly
Flex 开发框架汇总的更多相关文章
- Android 开发框架汇总
Android 开发框架汇总 时间过的真快,转眼间就要进入到16年的8月了,现在应该是三伏期间,一个字“热”.前端时间整理了一篇“JS前端框架汇总”,然后紧接着又抽时间学习了一下Android开发,在 ...
- 国内HTML5前端开发框架汇总
国内HTML5前端开发框架汇总 Dawei Cheng 程大伟... 于 星期日, 02/12/2012 - 20:53 提交 国外很有多优秀的HTML5前端开发框架相信大家都耳熟能详:JQuery ...
- Android快速开发框架汇总
知乎贴:Android 开发有什么好的架构么? 里面这篇不错:Architecting Android…The clean way? 知乎贴: 一.如果对App的性能.包size有要求,对代码有洁癖不 ...
- .NET常用开发框架汇总
分布式缓存框架:Microsoft Velocity:微软自家分布式缓存服务框架.Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度.Redis:是一个高性能的KV数据 ...
- Flex开发框架cairngorm入门实例
Cairngorm是flex开发的mvc框架,现在在 adobe旗下.它架构和eclipse插件开发gef架构很相似,具体工作原理如下: 该框架就是一个Cairngorm.swc文件,大家可以到Cai ...
- ASP.NET 开发框架汇总
先简单记录一下,以后慢慢添加 1.ASP.NET Aries 2.ASP.NET DevExpress
- H5+App开发框架汇总
MUI:http://dcloudio.github.io/mui/(使用H5+app模式,号称是最接近原生,但是目前在手机和电脑浏览器无法使用) app-framework:http://app-f ...
- vue插件大全汇总
Vue是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件特别整理了常用的vue插件,来了个大汇总,方便查找使用,便于工作 ...
- vue常用插件汇总
UI-框架element - 饿了么出品的Vue2的web UI工具套件 mint-ui - Vue 2的移动UI元素 iview - 基于 Vuejs 的开源 UI 组件库 Keen-UI - 轻量 ...
随机推荐
- dos 命令集
dos下下载远程服务器的文件 setp C:\WINDOWS\system32\cmd.exesetp C:\RECYCLER\cmd.exever --------查看window版本net use ...
- JSON对象和字符串转换
- js正则之零宽断言
我们学到的正则表达式匹配,都是有“宽度”的,使用 \w+. 匹配下面文本,会将 . 一同匹配: regular. expression. 如果不想匹配符号,只匹配一个位置,就要用到“零宽断言”(匹配宽 ...
- ssh密钥登录及远程执行命令
以192.168.1.104作为客户机 以192.168.1.103作为服务器 使用密钥登录 创建密钥对 在SSH客户机创建用户秘钥对 ssh-keygen -t rsa 之后全回车即可 将会在~/. ...
- ios开发环境配置及cordova安装与常用命令
一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...
- KEIL MDK 查看代码量、RAM使用情况--RO-data、RW-data、ZI-data的解释(转)
源:KEIL MDK 查看代码量.RAM使用情况--RO-data.RW-data.ZI-data的解释 KEIL RVMDK编译后的信息 Program Size: Code=86496 RO-da ...
- LWIP_STM32_ENC28J60_NETCONN_TCP_CLIENT(4)
既然udp说完了,那接下来自然就是TCP通讯了,今天说说TCP客户端通讯,也就是单片机作为客户端,主机PC作为服务器 相比于udp而言,tcp增加了一个连接服务器的流程,首先还是创建tcp_clien ...
- 第三弹:ZFNet
在所有深度网络中,卷积神经网和图像处理最为密切相关,卷积网在很多图片分类竞赛中都取得了很好的效果,但卷积网调参过程很不直观,很多时候都是碰运气.为此,卷积网发明者Yann LeCun的得意门生Matt ...
- SQL语句详细汇总
SQL语句详细汇总 | 浏览:3061 | 更新:2013-06-10 19:50 一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 d ...
- windows server 2012 AD 活动目录部署系列(五)备份和还原域控制器
在前篇博文中,我们介绍了用户资源的权限分配,用户只要在登录时输入一次口令,就能访问基于该域所分配给他的所有资源. 但是我们需要考虑一个问题:万一域控制器坏了怎么办?!如果这个域控制器损坏了,那用户登录 ...