`
duker
  • 浏览: 105638 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flex ria应用的系统结构

阅读更多
近日看到一则新闻说 Chet Haase 从sun 跳槽到了adobe.chet原来sun公司在客户端技术的架构师(http://weblogs.java.net/blog/chet/). 看来现在adobe的吸引力不小.chet写了一篇文章解释flash和flex 的关系:
(http://graphics-geek.blogspot.com/2008/02/moment-of-reflexion.html)

近期一直在搞这方面的东西,于是有感而发,整理了下面这个结构图,希望是正确的,呵呵.



最底层的基础是as3虚拟机和flash player api. 象基本的数据类型,xml处理,正则表达式这些都可以认为是as3虚拟机的一部分,其它的 以flash.*开头的包里基本上都是属于flash player api的范围,包括显示对象,网络等.这些类构成了flash 平台可编程的基础.这些类在flash和flex的应用程序中都可以使用.
在这之上,包括了两种组件框架,flash组件框架(一般以fl.*命名),flex组件框架(以mx.*)命名.flash的组件框架结构相比较flex组件框架要简单得多,flex的组件框架是相当的庞大而复杂.
在组件框架之上就是我们自己的应用程序了.一般在flash里面开发的应用程序,只能使用flash组件; flex的情况有点特殊,基于flex的应用程序一般是用mxml开发界面,直接继承Application作为顶级显示对象,但flex 的编译器mxmlc确实可以编译直接继承Sprite的类,并将它作为顶级显示对象,这种情况下,在程序中是可以使用flash 组件框架的,前提是将这些类打包成为swc文件后放到mxmlc可以识别的路径上.(无论是flash开发环境还是flex sdk都没有这个swc文件,需要自己动手).
无论是flash的应用程序和flex 的应用程序在和服务器交互时,主要可以两种方式:
*  通过http之上的amf协议(也就是flash remoting),连接到支持amf协议的应用服务器上,现在主流的服务器端技术,java,php,.net都有开源的flash remoting实现,而java平台上除了第三方的开源组件外,更有正宗的系出adobe的blazeds(这个也是开源的).
*  通过rtmp或者rtmpt协议连接到flash media server或者open red5. Flash media server是adobe的商业产品,主要是用来做视频点播,视频会议,视频广播等应用的,fms的开发主要是使用javascript(非客户端的as3,而是老式的javascript). Open red5是基于java平台,spring,apache mina,jetty的一个开源产品,实现了rtmp,rtmpt,amf协议,最新的版本是0.7. open red5提供以下功能: 服务器->客户端的流媒体发布,包括flv格式和mp3格式. 客户端->服务器的流媒体录制(仅限于录制flv格式);shared object, 这是fms和red5上重要的用于同步连接客户端的技术;实时的流广播;flash remoting,可以将red5上的对象方法通过remoting暴露给flash 客户端调用,也可以让red5作为客户端,调用其它支持flash remoting 的服务器.
除了以上两种方式外,当然还有webservice,loader等等.当个人认为这些选项都没有什么优势,如果没什么限制的话,就是flash remoting和rtmp这两种是最好的选择.
在上面的所有层次中: as3 vm已经作为一个开源项目捐赠给mozilla基金会,flex组件和flash组件都是开源,应用服务器开源的选项大把,流媒体服务器也有了open red5这么一个优秀的开源选择(否则就得接受fms 高昂的价格).
可以看出,除了flash 播放器外,都是开源的了,flex这套框架,经过了三个主要版本的发展,已经很成熟,有不少基于flex的应用(http://flex.org/showcase/)
相比较而言,javafx现在连个正式版的编译器都没有发布, Silverlight没有一个像样的应用.所以,flex是目前构造ria应用的不二选择.

 

  • 大小: 28 KB
5
0
分享到:
评论
2 楼 duker 2008-03-09  
gz818:
据我的了解,open red5 的amf功能包含两部分: 作为服务器,将对象方法暴露给客户端,或者作为amf客户端,调用其它支持amf 协议的服务器.
而flash media server 仅仅支持作为amf 客户端.
1 楼 gz818 2008-03-09  
Flash Media Server 和 Open Red5 本身包括 AMF Flash Remoting 功能吧?

相关推荐

    Flex 3 RIA开发详解与精深实践

    《Flex 3 RIA开发详解与精深实践》是一本深度探讨富互联网应用程序(RIA)开发的专著,特别关注Adobe Flex 3这一强大的开发框架。Flex 3是Adobe为构建交互性强、视觉效果丰富的Web应用程序提供的开源工具,它允许...

    基于FLEX构建RIA应用的研究与实现.pdf

    "基于FLEX构建RIA应用的研究与实现" 本文主要研究和实现了基于FLEX构建的RIA应用,旨在探讨FLEX技术在企业级应用程序中的应用优势。 首先,文章回顾了应用程序的发展历程,从主机模式到客户机/服务器模式,再到...

    Flex4:开发RIA应用程序

    以上知识点概述了Flex4开发RIA应用程序的核心概念,特点,开发环境,项目结构,与Flash的关系,部署方式,开发流程和学习途径,旨在帮助开发者熟悉和掌握使用Flex4技术开发高效、响应快速的互联网应用程序的各个方面...

    Flex4开发RIA应用程序.pdf

    ### Flex4:开发RIA应用程序 #### 一、课程概述与目标 《Flex4:开发RIA应用程序》是一门针对Adobe Flex4技术的专业培训课程。该课程旨在帮助开发者掌握使用Flex4来构建高质量、交互性强的RIA(Rich Internet ...

    RIA及其基于Flex的应用开发模型

    ### RIA及其基于Flex的应用开发模型 #### 一、RIA技术简介 ##### 1.1 RIA的产生背景 随着互联网技术的不断发展...而基于Flex的RIA应用开发则进一步提升了应用的功能性和交互性,为企业和个人用户带来了更多的价值。

    Flex的RIA应用程序托盘和QQ提醒功能

    标题提到的“Flex的RIA应用程序托盘和QQ提醒功能”是指使用Flex技术构建的应用程序可能具备的两种特性:系统托盘图标和类似QQ的即时消息提醒。 1. **系统托盘图标**:在桌面应用中,系统托盘图标允许用户将应用程序...

    Flex_3_RIA开发详解与精深实践.pdf

    Flex是Adobe公司推出的一种用于构建富互联网应用(RIA)的开源框架,它基于ActionScript编程语言和Flash Player或Adobe AIR运行环境,能够创建交互性强、图形丰富的Web应用程序。 在Flex 3中,开发者可以利用MXML和...

    Flex 3 RIA开发详解与精深实践一

    ### Flex 3 RIA开发详解与精深实践 #### RIA及Flex技术概览 ...通过深入了解Flex的技术特点和开发流程,开发者可以构建出既美观又功能强大的RIA应用,满足现代互联网用户对高质量数字体验的追求。

    flex应用flex应用flex应用

    Flex,全称Adobe Flex,是一种用于构建富互联网应用程序(Rich Internet Applications,RIA)的技术框架,主要基于开放源代码的Apache Flex SDK。Flex 提供了一种使用MXML和ActionScript编程语言来开发用户界面的...

    Flex RIA AS3网页游戏 BitmapData CopyPixel用法.rar

    Flex RIA(Rich Internet Application)是一种使用Adobe Flex技术构建的交互性强、用户体验优良的Web应用程序。在Flex中,ActionScript 3(AS3)是主要的编程语言,它提供了丰富的功能,包括对图像处理的支持。在...

    基于Flex和Spring构建RIA系统的研究与应用

    ### 基于Flex和Spring构建RIA系统的研究与应用 #### 摘要 随着互联网技术的迅猛发展,用户对于在线交互式应用的需求不断提高。传统的Web应用已经难以满足这种日益增长的需求,特别是在交互性和响应时间方面。为此,...

    FLEX企业应用开发实战PDF

    Flex是Adobe公司推出的一种开放源代码的富互联网应用程序(Rich Internet Application,RIA)框架,它基于ActionScript编程语言和MXML标记语言,用于构建具有交互性强、图形表现力丰富的Web应用程序。 本书的主要...

    Flex 桌面应用

    在Flex桌面应用开发中,掌握AMD加载机制至关重要,因为它有助于组织复杂的应用结构,特别是当项目包含大量模块和第三方库时。通过AMD,开发者可以将大项目拆分为小的、独立的模块,每个模块只加载自己需要的依赖,这...

    FLEX简单应用工程

    FLEX(Flexible Application by Adobe)是由Adobe公司开发的一种用于构建富互联网应用程序(Rich Internet Applications,RIA)的框架。FLEX基于ActionScript编程语言和MXML标记语言,能够创建高度交互、视觉效果...

    Flex_4:开发RIA_应用程序(中文版)

    ### Flex 4:开发RIA应用程序知识点详解 #### 一、Adobe RIA开发技术认证与教材概述 - **Adobe RIA开发技术认证**:是Adobe公司为开发者提供的专业认证,旨在帮助开发者掌握创建丰富的互联网应用程序(RIA)所需的...

    Flex_4:开发RIA_应用程序.pdf

    ### Flex 4:开发RIA应用程序知识点总结 #### 一、Adobe Flex 4 简介与平台背景 **Adobe Flash Platform 简介** - **技术简介:** Adobe Flash Platform 是一套用于创建交互式内容的技术栈,其中包括了Adobe Flex...

    Flex应用实例 Flex做的旅游系统

    Flex是由Adobe公司开发的一种富互联网应用程序(Rich Internet Application,RIA)框架,主要用于构建具有动态图形、交互性丰富的Web应用程序。这个“Flex应用实例 - Flex做的旅游系统”是一个很好的学习资源,它...

Global site tag (gtag.js) - Google Analytics