學習Flex

对于Flex最需要了解的10件事情

 
1。Flex是web标准

MXML是Flex应用程序的标准语言,它允许开发者定制的结构应用,不仅包括布局还包括class结构,非常简单用于标记,这个特性非常方便有 web设计和开发背景的开发者,用类似HTML的MXML开发。同样,Flex的ActionScript和JavaScript类似,Flex使用 web标准的CSS控制布局。Flex应用一条方便的途径来定制应用结构,类似树结构原型语言和容器组件模型应用完美结合。源代码很容易发布,不是二进制需要IDE的文件,而是简单可读性很强的text文件。

值得一提的是MXML是ActionScript的一种速记,ECMA兼容脚本语言,MXML在编译时转换成ActionScript 3。

2。Flex是Flash

如果你熟悉Flash过去所提供的轻量级矢量动画和先进的用户界面,那么你对Flex不会陌生。Flex建立在顶级Flash Player之上,引擎藏在所有Flash内容后,从这方面来说,没有什么是Flash能作而Flex不能作的。

3。Flex Just Works

很多公司使用Flex替换Java,因为提供和Java类似的跨平台能力和现代面向对象的架构,但是只需要一个小得多的封装和额外的负荷。Flex应用完全能够完成基于web的软件,以及桌面软件(结合Adobe AIR)。

4。Flex不受服务器限制

Flex由数据构成,能够接受不同格式的数据和最与最常见的服务器互动。加载XML通过本地或者远程方式,JSP, PHP, ASP, ColdFusion等。你能通过HTTP或者SOAP web services下载信息,甚至能够直接接受Java 服务对象来读写SQLLite数据库。

5。Flex外观能够被你任意定制

Flex应用外观的可定制化非常大,可以任意切换"皮肤"和定制UI。这一点不像Java或者JavaScript,并不是继承所运行的操作系统的UI,这意味着Flex运行在Mac OSX上,按钮不会变成Mac风格的按钮,Flex由自己内建的外观所设置。


6。Flex是轻量和快速的

建立在ActionScript 3上,Flex框架速度是非常快的。初始化时间对于ActionScript 2已经大大改善。Flex采用新的JIT(Just-in-Time)编译器,加快了运行速度。当然,有些人会辩称,使用了一整套用户界面组件一定会影响速度,事实上,一个典型的使用AJAX框架的应用程序比类似的Flex应用程序要大,Flash Player只有几M字节,而且往往预先安装在电脑上。这也是值得一提的新功能,即框架缓存,能够节省很多大一部分下载框架内组成部分的时间。这个功能可以存储标准的Flex UI组件在用户的机器上,以便其他Flex应用程序运行时无需下载整个框架。

7。Flex是无障碍的

很多人认为Flash内容是很难进入的,这是一个错觉。事实上,Flex框架组件拥有很好的互动,比如屏幕阅读和键盘导航,开发者只需要打开这个开关(缺省是关闭的)。

8。Flex兼容搜索引擎优化

Flash内容很难被搜索引擎收录,这一直是作内容的网站开发的问题。Adobe最近发布了针对搜索引擎优化的Flash Player特殊版本。当然这个问题彻底解决需要时间。

9。Flex是免费和开源的

Flex完全是开源的,整个框架源代码都可以在Adobe网站下载。

10。Flex是易学的

MXML非常简单,容易理解。如果你曾经使用过HTML和CSS,你很快就能上手MXML。

Flex的组件

1:计划任务图:FlexLib的ScheduleViewer。
2:可伸缩的窗口:FlexLib的WindowShade。
3:拓扑图:Birdeye的Ravis。
4:窗口管理器:FlexLib的MDI。
5:可以拖动的TabNavigator:FLEX-BOX的AdvanceTabNavigator
6:3D效果
http://weblogs.macromedia.com/auhlmann/archives/2006/11/download_distor.html
7:富文本编辑器:FlexLib的MultipleDockingToolBars_Sample。
8:官方FLEX扩展组件 http://www.adobe.com/cfusion/exchange/index.cfm?event=productHome&exc=15
9:表格中显示比例数据http://www.degrafa.org/source/DataRenderer/DegrafaDataRenderer.html
http://www.degrafa.org/source/ShapeRenderer/DegrafaDataRenderer.html

43个热门Flex和ActionScript 3.0 APIs,技巧和工具

原创作者: QQbyte   阅读:82次   评论:0条   更新时间:2009-03-10     收藏


Sean Moore Bio 说道:秋天又一次来临了,是时候回顾一下2008年最热门的Flex和ActionScript 3.0 APIs,技巧和工具了,下面是我的总结,收集的比较全,Flex开发必备,欢迎补充。



介绍 Flex SDK 3.1 和 Flex Builder 3.0.1

Flex SDK 3.1 是一个Flex SDK里程碑式的版本,推荐开发者使用。
http://www.adobe.com/devnet/flex/articles/sdk3_fb301.html

Cairngorm 迁移进入Adobe开源网站(Cairngorm是Adobe 实验室中的Flex MVC框架)
http://weblogs.macromedia.com/amcleod/archives/2008/08/cairngorm_moved.html


Flex 架构基础 - 模块和数据转换对象
展示一个简单的方式使用模块和数据转换对象来设置简单Flex应用
http://nwebb.co.uk/blog/?p=228


教程: ActionScript 3 拖动函数
这个教程介绍ActionScript 3在布景中的拖动函数。
http://flashmymind.com/Tutorials/Actionscript/Advanced/actionscript-dragging.php


Flex 分页组件
一个小的Flex分页组件
http://www.darklump.co.uk/blog/?p=112


ModuleManager 和 IModuleInfo - 自动加载Flex模块
http://lowpitch.com/blog/2008/08/17/modulemanager-and-imoduleinfo-loading-flex-modules-dynamically/


Degrafa初学教程
Degrafa是一个Flex扩展,在FLEX中增加了对矢量数据的动态处理,包括动态添加,删除和修改,并支持SVG的路径格式数据。Mike Huntington一篇优秀文章。
http://www.mikehuntington.com/?p=22


同时使用Degrafa高级CSS技巧
依然是Mike Huntington的文章。质量很高,推荐。
http://www.mikehuntington.com/?p=31


Alcon 3
为Adobe AIR重写过,一个简单好用的调试/日志工具。很酷。
http://blog.hexagonstar.com/alcon/


在Flex Builder中删除 css type selector 警告
在Flex Builder中删除 css type selector 警告的快速技巧
http://www.nutrixinteractive.com/blog/?p=135


在倾斜背景中的VBox, HBox Flex箱式模型
http://www.igorcosta.org/?p=160


Flex 设计/开发工作流程视频教程
http://www.ashorten.com/2008/08/11/flex-designerdeveloper-workflow-video-tutorials/


6个使用 ActionScript 3.0 的理由 - 作者Lee Brimelow
http://www.adobe.com/devnet/actionscript/articles/six_reasons_as3.html


定制 flex 皮肤
http://the.fontvir.us/b10g/?id=111


编写Flex组件, part 1
http://labs.flexperiments.nl/writing-components-in-flex-part-1/


编写Flex组件, part 2
http://labs.flexperiments.nl/writing-components-in-flex-part-2/


Actionscript 3 API 收集
http://flashenabledblog.com/2008/08/26/as3-actionscript-3-classes/


为展示对象创建 bitmap 数据对象
http://www.flexer.info/2008/08/20/how-to-make-a-bitmapdata-from-a-displayobjectuicomponent/


FCG 1.0 (Flex 代码生成器)
开源工具
http://www.dehats.com/drupal/?q=node/45


新的ActionScript 3 Singleton 函数
http://www.daniellove.net/blog/?p=81


CSKDebugger
Mac AIR 调试器
http://ultra-web.co.uk/?p=178


Fill Colors
Fill Colors 是一个分离Flex风格和布局工具,预览Flex应用外观皮肤。
http://www.fillcolors.com/


gTween
动画库 by Grant Skinner
http://www.gskinner.com/blog/archives/2008/08/gtween_a_new_tw.html


使用Selenium来对AIR AJAX 应用做功能测试的框架
http://corlan.org/2008/08/15/functional-testing-framework-for-air-ajax-apps-based-on-selenium


Yahoo! Music API
The Yahoo! 音乐API给开发者权限来使用Yahoo! Music 目录。提供了多种方式浏览。
http://developer.yahoo.com/music/


ActionScript 3 灵活的布局类

The NpFlexLayout 类是设计用来简化DisplayObjects的布局。
http://www.blog.noponies.com/archives/109


mediacorelib - ActionScript 3.0 核心媒体库
http://code.google.com/p/mediacorelib/


Servebox ActionScript Foundry
ActionScript 3 / Java 框架为 Flex 2 应用设计,基于多个设计模式。
http://www.servebox.com/foundry/doku.php?id=


Flest Framework
Flest 是一个 ActionScript3 / Flex 应用框架,用来创建企业级别RIA应用。
http://code.google.com/p/flest/


Guasax Flex/AIR MVC - The MVC Flex/AIR Framework
Guasax是一个简单的框架提供可扩展的Flex应用。
http://www.guasax.com/guasax/web/en/index.php


Flex Mojos - HelloWorldTutorial
最简单的教程,创建一个HellowWorldFlex程序
http://code.google.com/p/flex-mojos/wiki/HelloWorldTutorial


Scott Evans - 对于新的 FlexBuilder 4 IDE 功能的公开讨论
Scott Evans, FlexBulder 团队的主导开发工程师,开始了一系列的新博客,讨论FlexBuilder 4 IDE 新功能,值得一看.
http://gettingandsetting.com/


dpHibernate - Hibernate lazy loading with Adobe BlazeDS
dpHibernate是一个定制的Flex库,和 custom BlazeDS Hibernate 一起使用提供对Flex应用内部的Hibernate对象 lazy loading(延迟加载)的支持。
http://blog.mikenimer.com/index.cfm/2008/5/21/dpHibernate–Hibernate-lazy-loading-with-Adobe-BlazeDS
http://code.google.com/p/dphibernate


Alternativa3D — browser 3D-engine based on Adobe Flash
Create 3D- 基于Flash场景 3D引擎。
http://alternativaplatform.com/en/alternativa3d/


KwikUML - build UML models of ActionScript and PHP classes
快速创建 ActionScript和PHP类,接口的 UML模型 的工具,以及提供SQL Entity关系设计 (ERDs).
http://labs.otuome.com/kwikuml


KitchenSync
KitchenSync 是一个 ActionScript 3.0 库,用来对动画排序以及其他基于时间的动作。
http://code.google.com/p/kitchensynclib/


as3xls - read and write Excel files in Flex
Flex读写excel文件工具

http://code.google.com/p/as3xls/


ASDebugger - A run-time debugger for AS3 Projects

AS 3项目的运行调试工具

http://labs.flexperiments.nl/asdebugger/


as3corelib update
这是一个ActionScript 3 库,包含很多有用的能使用在AS3中的 APIs 。
http://code.google.com/p/as3corelib/


swix framework - Flex development framework
Swiz 是一个简化RIA开发的Flex框架。
http://code.google.com/p/swizframework/


Gaia - open-source front-end Flash Framework for AS3 and AS2
Gaia 是一个开源的前台Flash框架,支持AS3和AS2,能够大量节省开发时间。
http://www.gaiaflashframework.com/


Penne Framework - lightweight framework for developing in Flex and Air
version 1.0 of The Penne Framework, 一个简单的 Flex and Air 框架, 是 Cairngorm 框架的备选方案.
http://www.flexpasta.com/index.php/2008/04/19/introducing-the-penne-framework-for-flex-3/


An ActionScript Compiler Written In ActionScript
一个用ActionScript写的ActionScript编译器
http://www.brooksandrus.com/blog/2008/08/27/an-actionscript-compiler-written-in-actionscript/

选择Flex的理由

1 Flex与Flash
    也许很多人会认为Flex跟Flash一样主要是用来制作动画的,其实Flex跟asp.net或者PHP等语言一样,是用来编写应用程序的工具,

   例如:人事、进销存、财务、OA等等系统,只不过Flex编译后的格式是Flash平台上的SWF格式,可以在任何安装有Flash player的电脑中运行。

2 Flex的强项之一:界面表现能力一流
    因为Flex编译后的格式是Flash的SWF格式,Flex继承了Flash强大的的界面表现能力,如果对比其他WEB开发工具,Flex的强项之一就在一界面的表现能力,

    用Flex我们可以实现非常华丽和具有动态效果的应用程序表现界面,Flex默认的界面样式就已经够美观了,如果对界面要求很高的话,

    可以结合Flash实现你所能想象到的界面外观,真正做到能限制你的就只有你的想象力了,而且,Flex的界面效果不是跟一般HTML页面一样,使用图片组合拼凑成的,

    而是由flash player渲染出来的,所以不怕放大了有毛边等等问题,我们可以在不需要使用任何图片制作工具的情况下就可以制作出一个非常具有美感的应用系统。

 



3 AIR富客户端应用
    Flex天生就跟ajax一样能够实现异步的网络应用,在一般的基于浏览器的应用程序要实现异步的不刷新技术非常麻烦,

   当然现在使用ajax框架也一样可以很方便的实现,但是,ajax还是基于浏览器上的javascript、CSS和xmlhttp来实现异步的,

    所以受制于浏览器对于CSS和javascript的支持度,另外javascript和CSS的编码标准和画面渲染标准在各个浏览器之间也有所不同,

     如果想写一个在各种浏览器上都一样显示的程序,我们不得不进行各种浏览器的测试工作,

     因为各个浏览器对javascript 和 CSS 语法标准之间实现的差异,我在编写代码的时候不得不在网上进行长时间的搜索,

    以搞清楚到底差别在哪里,语法有什么不同,最惨的是各个浏览器之间的差异根本不可能有一个官方的列表可以查询,

    所以在这里要为那些实现能够兼容于各个浏览器的ajax框架的英雄们致敬。

4 对流媒体的支持
    Flex应用程序是在Flash Player平台上运行的,所以它本身可以说就是流媒体来的,SWF格式的流媒体很自然的就可以无缝的在你的Flex程序中运行,

   反关一半的web应用不过有没有实现ajax框架,都必须借助与第三方的播放器来播放流媒体,同时SWF也是非常多视频网站使用的标准格式。

5 平台的可用性
    根据ADOBE公司的说法,Flash player在全世界一半的PC机器上安装度为99.8%,可以说如果你写出来的程序基本在任何电脑上都能跑,

    而且有一个非常重要的理由:Flash Player的安装包非常小,同时也非常容易安装,在网络速度非常差的情况下也能够正常完成安装,

    这也是为什么世界上有这么多的电脑都安装有Flash Player的原因之一。

6 跨平台
    同时还有另外一个选择Flex的原因,Flash player能够在linux下运行,也可以在手机上运行,所以不用担心绑死在WINDOWS上,

   现在SAAS的概念正热,幻想一下,只要安装免费的linux,就可以跑你想要的运用,而且该些软件不用安装到你的机器上,

    只要通过一个URL就可以直接使用,MS不是说要打击盗版吗?那我们就选择正版的LINUX吧 :) 。

7 对底层的可操作性
    Flex能够调用底层的东西,比如可以调用摄像头实现视频,而且视频本身就嵌入在Flex应用中,由Flex player直接播放。

8 平台的后续运营和发展前景
    说到这个发展前景,前提就是必须有一家有实力的公司来维持发展运营这个平台,Flex是由ADOBE公司推出的,如果大家不熟悉这家公司,

   那么说起另外一个软件大家应该很熟悉啦,photoshop就是ADOBE公司产推出的。

9 有充足的学习环境:

    Flex开发学习中心: http://www.adobe.com/devnet/flex/   
    Flex官方样式配置工具,可以在线配置Flex应用程序各种控件的外观样式,改程序也是用Flex编写的,

     大家可以想象Flex可以做到什么程度的应用了,而且这么漂亮的界面,根本不用做任何图片和美工,都是直接用样式实现即可:

 

http://examples.adobe.com/flex3/consulting/styleexplorer/Flex3StyleExplorer.html#

 



    Flex各种控件组建官方实例代码,不用买任何书,只要看完这个例子,基本就能够进行Flex开发了:

    http://examples.adobe.com/flex3/componentexplorer/explorer.html

10 可以用任何你熟悉的WEB编程平台作为后台数据访问层,可以使用 asp.net,php,java,webservice 。

12 Flex的最新版本是 3.0.1 下载地址为: http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email

 


你可能感兴趣的:(java,Flex,ActionScript,AIR,Flash,Adobe)