简单的理解Flex
Flex是什么?我们可以简单的理解为是许多技术和服务产品的总称。也可以看成是Adobe公司为我们J2ee应用程序提供的一个展现服务器。主要用来和我们j2ee环境下进行整合的一个开发包(war)。也可以理解为主要有actionscript和mxml两种语言组成的一个应用。从框架上考虑,flex就是一个开源的框架。就像Spring,Hibernate一样。
一句话总结:Flex是用来开发新一代的“复杂Internet应用”(RIAs - Rich Internet Applications)。结合桌面应用的可用性和web应用的易于管理的优点来开发一种复杂Internet应用。既继承了传统桌面应用的及时性,又发挥了流行的web应用的易于部署和管理的优点。
Flex是一个在J2EE应用服务器或servlet容器安装的展现服务器。它拥有丰富的用户界面组件、用于排布这些组件的基于XML的标记语言,以及可以处理用户交互的面向对象编程语言。这些技术的给我们带来的是:使用Flash播放器渲染复杂Internet应用,使用工业标准和开发者熟悉的方式进行开发。
简单的理解Flex的组成
Flex主要包含两种文件,一种是mxml文件和actionscript文件。其中mxml文件是基于xml的,这就表明了它是可扩展的,可定制的标签。在mxml中引入了大量的丰富的标签集 。加快了开发速度,它主要用来展现表示层的页面。其中一个as文件主要用来控制一些简单的编程逻辑和用户交互的需求 ,as是一种大家熟悉的面向对象的语言,支持面向对象的三大特性,对我们后台程序员来说,更简单了,它的语法与java,c#,js很相似,其实所有的面向对象的语言的语法都是大同小异的。
简单的理解Flex的工作原理
我通过简单的对比,让大家很快的了解它的工作原理。先回想一下jsp的工作原理,它首先被预编译成 servlet,也就是我们熟悉的java类,然后再编译成jvm所能执行的class字节码。而mxml文件的这个工作原理与jsp很相似的,mxml首先也被预编译成as中间文件,在编译成Adobe Flash Player 能执行的swf字节码。Adobe Flash Player 就像java虚拟机一样。但它们有一点不同的是,jsp的字节码执行是在服务器端执行的,而Flex的swf字节码是有服务器发送到客户端(浏览器)的Adobe Flash Player 上执行的。这一点的差别,大家可能就可以看出flex的优点了,起码可以减轻服务器的压力了。
更形象的我们可以把mxml比作jsp,而as看成servlet(java)来理解可能更简单了。上面是从工作原理上比喻是非常接近的。如果我们但从表现的比喻的话,可以把mxml看成是html,而把as看成javascript。这样大家可能会更好的理解,mxml(html)主要用来显示的,而as(javascript)主要用来控制一些编程逻辑和用户交互的需求。我们通过这两个形象的比喻,你应该理解Flex了吧。
简单的实现HelloWorld
我将会通过一个简单的HelloWorld的例子,让你彻底的了解Flex的工作原理。先写一个mxml文件,也可以写成as文件。打开记事本写入下面对代码。
然后保存为HelloWord.mxml。我保存在D:\flex\HelloWord.mxml.
HelloWorld写好了,我们现在怎样通过命令行运行呢?首先保证你的电脑上已经按装了SDK,就像运行java必须安装JDK一样。一般我们在配置环境变量path,就是可以在命令行下不用切换到SDK的bin目录下就可以直接使用的命令,这个大家应该都很熟悉吧。自己根据安装的SDK配置吧。
打开一个命令窗口:
切换到你的文件所在的文件夹下。如下图:
当你看到在和HelloWorld.mxml同一目录下会生成一个HelloWorld.swf文件,这就是我们说的swf文件。它可以在Adobe Flash Player中运行。双击这个文件就可以看到一个如下图的效果。
也可以在命令窗口直接用命令:D:\flex\HelloWorld.swf.也会运行的。同时注意要保证你的电脑上已经安装了Adobe Flash Player播放器。
上面我说过,mxml会产生一个中间文件as,我们怎么没看到呢?我们知道我们写的jsp的页面,而我们用到是class文件,把中间那一步的文件并没有放到我们的工程中,这个其实也一样,它只生成了swf文件,而没有看见as文件,如果我们想看到怎么办呢?
这时我们就得用这个命令执行:mxmlc -keep-generated-actionscript HelloWorld.mxml
会在Hello.mxml文件的同目录下产生一个generated的文件夹,里面就是mxml文件编译时产生的中间文件as.
generated文件下就是as中间码:
希望大家看后对你以后学习和理解Flex有所帮助。
分享到:
相关推荐
Flex入门教程汇编.pdf
flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门flex精通 flex入门
FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训FLEX 入门培训
Flex 入门 Flex 入门 Flex 入门 Flex 入门 Flex 入门
Flex 入门.pdf Flex 入门.pdf
flex入门整合教程,包含flex的登录验证demo,以及开发环境的搭建和flex的综合教程
flex大纲 对于初接触flex的学生来说 可帮助他尽快的了解flex
flex 入门介绍 flex 如何结合 j2ee 开发应用程序以及 flex 的国际化等
flex入门 到精通flex 包含丰富实例教程,非常适合flex入门和精通flex
Adobe+Flex编码指南.pdf chart.rar--java+flex图表 ...Flex入门培训资料及PPT.rar flex中文帮助.pdf InfoQ Flex与JSON及XML的互操作.mht 结合java做的flex图表例子 - 点点滴滴 - JavaEye技术网站.mht
包含一些关于flex入门级的知识,包含怎么配置,新建项目等,对初学者很有用!
Flex入门实例教程,flex简介,控件,布局等介绍。有2个实例Flex入门实例教程,flex简介,控件,布局等介绍。有2个实例
flex 入门教材,简单易学flex 入门教材
本教程通过图文介绍和对一些关键性的地方进行解释,让大家了解如何新建Flex的LCDS工程,并利用工具快速整合和部署J2EE项目和LCDS项目,掌握了简单的请求RemoteObject和配置的方法,初步掌握LCDS的应用之一。...
Flex入门培训资料及PPT.构建并运行Flex 应用程序等九章内容.
flex入门指南 英文版 比较简单 flex入门指南 英文版 比较简单
Flex 事件机制,flex入门学习的好帮手
flex入门 java sping 介绍
FLEX入门知识介绍及语法知识的详细教程
java flex入门实例 MyEclipse7+flex bulider 3+ blazeds 整合的一个简单的实例。