一项技术,从概念提出到技术研发到商业发布,再到实际应用,最终将产品呈现在用户面前,这是一个漫长而复杂的过程。在这当中,很多有创意有生命力的技术因为各种原因小小遗憾地不幸夭折了。Flex能走到今天确实不易,下面让我们从不同的角度来看一下它是如何过关斩将,赢得众多青睐的。
技术角度:
(1)具备了RIA时代富客户端的优点(C/S+B/S)
(2)支持多种服务器语言(JAVA、.NET、PHP)及主流框架(Spring、Hibernate)
(3)与Java结合后相当强大,能充分利用Java的资源背景
(4)拥有丰富的组件和第三方组件,对企业级的数据汇总和业务流程展现力较强悍
(5)借助开源的力量,拥有众多民间组织和牛人支持
(6)Adobe公司(还有MM多年积累)的强大背景
(7)源于Flash的天生丽质,轻松使用多媒体资源,动态交互性强
(8)借助FlashPlayer的安装普及度,轻松实现跨浏览器跨平台
(9)良好的架构设计和制作精良的文档示例(明年FLEX4同步推出中文版)
(10)借助于插件丰富的Eclipse开发平台并拥有独立的IDE
(11)框架设计重用性高,有利于模块化设计
(12)近几年发展态势良好,获得了广泛认可,产品和技术也越发成熟
开发者角度:
(1)开源,透明(国人没有不喜欢开源的,哈哈)
(2)基于Eclipse开发平台,易上手,且插件丰富(巨人的肩膀啊~)
(3)基于Eclipse平台,开发调试方便(FB4中的条件断点)
(4)ActionScript语言与Java的融合度和相似度较高,易学易用
(5)MXML标签与XML相似,逻辑清晰可读性强
(6)架构设计良好,耦合度低,有利于组件重用
(7)无需针对不同浏览器编写代码,摆脱编写和调试的噩梦(针对JS说的)
(8)类似VB的可视化拖拽组件,快速创建界面
(9)方便定制及使用第三方的皮肤和样式,无需美工也有好效果
(10)支持多媒体资源,轻易开发动态交互性强的界面
(11)众多的RPC组件保障对后台数据访问的安全性和效率
(12)文档示例丰富,通过网络可以获取大量的学习资源
(13)近两年发展态势良好,前景光明
企业角度:
(1)开源,免费(其实很多时候还是直接用破解的。。。)
(2)具备了RIA时代富客户端的优点(C/S+B/S)(潮流啊~!)
(3)项目和组件的重用性高,易于资源积累和快速构建
(4)Flex提供了与其他语言的结合,能广泛利用已有的资源
(5)界面华丽,客户认可度高
(6)学习曲线一般,培训成本低
用户角度:
(1)部署和更新方便
(2)界面漂亮,交互性强
(3)安全
说了这么多好话,再来综合说一下缺点。鉴于我着迷于Flex的光环效应,没有看到的缺点还请诸位多多提出。
缺点:
(1)不擅长处理复杂的业务流程,主要还是适合展现(Flex不是万能的)
(2)继承了Flash的诸多优点,却唯独丢掉了Flash的小巧轻盈(减肥是永恒的话题)
(3)目前尚没有比较好的减肥策略,带宽较好时这不是问题(不是一般的卡。。。)
(4)对服务器和客户端的硬件设备都有一定要求(CPU和内存占用很生猛。。。)
(5)运行期内存泄露状况严重,尽管可以通过一定手段改善(这个很崩溃)
(6)对一些较专业的领域涉及较少,需要第三方组件支持(比如地质方面的)
(7)Adobe公司对中国分部的支持不够(感觉宣讲和文档都做得不够)
(8)搜索引擎对swf文件的支持不够(Adobe一直在努力)
(9)与以往浏览习惯不同,比如右键被屏蔽,图片无法保存(可以改善)
鉴于Flex生成的swf文件太肥是其主要缺点(加载慢,运行慢,内存占用多),我就主要从减肥和优化的角度来说一下使用心得。
使用心得:
(1)Flex只是前台展现,需要搭配强大的后台(注意前后台的均衡和优化)
(2)考虑异步加载(比如分步加载外部资源)
(3)界面推荐使用相对布局,合理组合,避免多余嵌套
(4)界面加载图片推荐使用外部加载方式,尽可能多使用矢量图形
(5)规范CSS样式表,尤其注意使用的外部字体大小
(6)使用额外的皮肤和特效时需要综合考虑生成的文件大小和执行效率
(7)适当地考虑延时加载策略,主界面只显示必要的内容
(8)规范编码,提高执行效率,避免内存泄露
(9)使用RSL和Module和其他有效方式努力减肥
(10)尽可能重写一些继承底层类的组件,执行效率更好
(11)慎重使用重量级组件(比如DataGrid,AdvancedDataGrid)
分享到:
相关推荐
flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...
FLEX播放器 flex 开发AIR及Flex之mp3播放器教程 FLEX播放器 flex 开发AIR及Flex之mp3播放器教程
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 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 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex 精通 flexflex学习的好资源啊
Flex简介Flex简介Flex简介Flex简介Flex简介
flex事件flex事件flex事件flex事件flex事件
Flex万年历记事本_flex源码
Flex 组件Flex 组件Flex 组件Flex 组件Flex 组件
java flexjava flexjava flex
Flex相册 Flex图片
flex皮肤flex皮肤flex皮肤flex皮肤flex皮flex皮肤肤
基于flex的三维地图的制作,这是一个基于超图软件iserver java 制作的一幅详细的三维地图流程;
flex 面试题flex 面试题flex面试题flex
flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式flex设计模式
flex 三状态多选 自动分页DataGrid
flex 带复选框树 flex多选树 flex三态树
详细介绍了Flex连接数据的三种方法。Flex是不能直接连接数据库的,这一点大家需要知道,它只能间接地连接数据库。
flex三种实现滚动条方式,其实是两种,样式的以两种表现形式写出了。然后,自定了一个滚动条
常用Flex网站常用Flex网站常用Flex网站常用Flex网站常用Flex网站常用Flex网站