- 浏览: 1306418 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (351)
- Java General (37)
- .net General (2)
- Linux Toy (55)
- Oracle (81)
- Mysql (11)
- Programer Career (12)
- Oh, my living ! (2)
- Shell Script (8)
- Web Service (0)
- Linux Server (22)
- Php/Python/Perl (3P) (2)
- Javascript General (5)
- Saleforce Apex Dev (2)
- Web General (5)
- Xen & VM tech. (17)
- PSP (13)
- OpenSolaris (34)
- php (1)
- RAI/flex/action script (16)
- asterisk/CTI (7)
- 交互设计 (6)
- English (3)
- Lucene (1)
最新评论
-
GuolinLee:
markmark
JVM调优总结 -Xms -Xmx -Xmn -Xss -
di1984HIT:
写的太好啊。
JVM调优总结 -Xms -Xmx -Xmn -Xss -
javajdbc:
javajdbc 写道
JVM调优总结 -Xms -Xmx -Xmn -Xss -
javajdbc:
...
JVM调优总结 -Xms -Xmx -Xmn -Xss -
alvin198761:
非常感谢,国外的被封杀了,你这里还有一份
How to Convert An Image-Based Guest To An LVM-Based Guest
这样的比较有意义吗?个人意见,只要别把自己当成宗教教徒,将语言看作工具而不是信仰,那么比较就是有意义的。
语言(Silverlight以C#为准) |
|||
特性 |
比较 |
胜出 |
|
Flex |
Silverlight |
||
语法 |
Flex的编程语言ActionScript在变量与属性声明的方面语法有一点罗嗦(有些类似VB): public var varName : int; 相比之下C#就要简洁一些: public int varName; 不过,ActionScript支持以字面量的方式声明字典,这方面又比C#的Dictionary来得简明: public var dict = { x: 1, y: 2 }; |
|
√ |
语言特性 |
ActionScript支持动态类属性,这是C#目前所不支持的,因此在动态编程方面,Flex要简洁得多,也减少了很多代码生成的工作。 |
√ |
|
OO特性 |
ActionScript不支持抽象类和抽象方法。虽然对一般性的编程来说没有太大问题,但是对框架设计来说这是一个严重的缺点。 |
|
√ |
反射 |
反射对于元编程是相当重要的。Flex的反射机制比较原始,只支持有限的反射方法,并且代码中没有明确引用的类在编译阶段会被排除,这使得动态创建类更为麻烦。 不过得益于语言的动态特性,Flex反射代码比同等的C#代码要更加简明。 Silverlight也排除了一些高级反射特性(比如TypeDescriptor相关的一些方法),不过总体来说反射机制还是比较完整的,但同时反射的语法比较罗嗦。 |
|
√ |
基本类库 |
Flex的基本类库相当精简,精简的代价就是有些基本功能(如字符串的trim、日期的格式化)都欠奉,不得不求助于工具类库。Flex的集合类库功能也有一些薄弱。 Silverlight类库也比完整的.Net类库精简了许多,有些时候如操作Xml的时候不大顺手。不过大体上来说还是够用的。 |
|
√ |
扩充特性 |
E4X是Flex的独有特性,在Flex中使用XML简单到了让Linq to XML也相形见绌的地步。 Silverlight胜于Flex之处包括:Linq to object、lambda表达式和显式多线程,这些都是Flex所不支持的。 |
|
√ |
语言支持 |
Flex只支持ActionScript,Silverlight则支持C#、VB、IronPython、IronRuby、JScript等多种语言。但不论Visual Studio还是Expression Blend都没有为脚本语言创建项目提供任何支持,这使得Silverlight的多语言优势打了一个很大的折扣 |
|
√ |
总的来说,语言方面是Silverlight大胜Flex。
框架 |
|||
特性 |
比较 |
胜出 |
|
Flex |
Silverlight |
||
界面组件 |
经过几年发展,Flex的界面组件已经比较完整。基本框架中包括超过50个界面组件,远远超过Silverlight的组件数量。但是Flex里也缺少如AutoComplete等少数重要组件。 Silverlight本身就组件数量和功能方面远逊于Flex,不过添加Silverlight Toolkit以后可以在一定程度上弥补其不足。 |
√ |
|
布局 |
Flex的布局机制简单且灵活。Canvas支持多种对齐和摆放方式,灵活性远远超过Silverlight Canvas,是布局中最常使用的组件。Canvas、HBox和VBox三个组件基本上可以包揽90%上界面布局的工作。 此外,Flex中还有一些布局组件如Panel、Form和ViewStack是Silverlight所缺乏的。Flex还支持基于辅助线的布局,Silverlight里面没有这样的功能。 Silverlight的布局组件不仅数量少,基于附加属性的语法也比较冗长拖沓。 |
√ |
|
样式 |
Flex的样式语法基于CSS,非常简洁,且对于熟悉HTML的用户来说马上可以上手。 Silverlight的样式声明语法相当繁琐。比较一下Flex/Silverlight的样式设置:
Button { margin: 10; } <mx:Button />
Silverlight: <Style x:Key=”component” TargetType=”Button”> <Setter Property=”Margin” Value=”10” /> </Style> <Button Style=”{StaticResource component}” /> 可以看到,相比Flex所用的CSS语法来说,Silverlight中超过一半以上的代码是纯粹的语法噪音,只是为了方便解析器而设计的,对设计者来说完全是不必要的额外负担。此外,Silverlight并不直接支持类似Flex的全局样式。虽然StyleManager可以达到类似的效果,但语法更加罗嗦,会使得XAML更加冗长。 |
√ |
|
动画 |
Flex有多达10多种动画。Silverlight基于依赖属性的动画只相当于Flex的AnimationProperty,数量和功能都比较受限,并且只对于Dependency Property有效。 |
√ |
|
数据绑定 |
Flex的数据绑定语法直观且简洁,可以使用几乎任意的表达式。声明绑定属性的语法也相当简单,任何属性只要加上一个[Bindable]标签即可。 Silverlight的数据绑定语法相当累赘,至少造成了两个严重后果:1、大量数据绑定属性是造成XAML冗长难读的罪魁祸首;2、依赖属性编写很麻烦,需要大量样本代码,而许多框架特性又严重依赖于依赖属性,使得编写Silverlight组件成为相当累人的工作。 |
√ |
|
通信机制 |
Flex和Silverlight都支持大量标准化的通信机制,包括XML、Web Service和二进制数据等,支持程度也大致在同一水平上。 Flex略微胜过Silverlight的地方在于Flex有一个标准化的二进制通讯标准:AMF,基于AMF的服务框架不论开源或商业的目前都有广泛的应用。Silverlight在这方面还是一片空白。 |
√ |
|
异常处理 |
Flex的一个问题是不支持全局异常处理,对框架设计而言这是明显的缺憾。 Silverlight支持应用程序级别的全局异常处理。不过这个异常处理似乎也不是非常完整,有个别异常还是会漏网,造成Silverlight插件出错。 |
|
√ |
国际化 |
Flex对国际化的支持比较完整,使用上也很方便。唯一的小问题是支持额外的语言需要要执行一次copylocale命令行。 Silverlight对国际化的支持是有问题的,虽然可以使用,但要做很多手工工作,并且需要一些work around才能成功执行。 |
|
|
其他特性 |
Flex包括一个非常方便的界面特性:State,在界面有少量变化的时候使用非常方便,可以避免很多不必要的编码。这是Silverlight所欠缺的。 Silverlight的DeepZoom是Flex所没有的功能。 |
√ |
|
外观 |
外观是否好看应该说是个见仁见智的问题。不过Flex似乎在细节方面做得更好,请看Flex/Silverlight默认按钮外观的比较: <!--[if !vml]--> Flex组件默认情况下就有一个相当合适的边距,看起来很舒服,基本上不用再作什么调整。Silverlight就差多了,密密麻麻的挤在一起,显得非常局促,必须在样式上作很多调整才会比较好看。在这些细节上Silverlight明显不如Flex。 |
|
|
框架方面Flex可以说是大优势战胜Silverlight。
IDE |
|||
特性 |
比较 |
胜出 |
|
Flex |
Silverlight |
||
可视化设计器 |
具有讽刺意味的是,号称Visual的微软开发环境在WPF时代就再也难以自称Visual了。Visual Studio中的Silverlight可视化设计器目前只能说是一个废品,拖拉不能用,属性设置不能用,预览也不能用,并且常常假死,微软自己都似乎不好意思把它显示出来了。Expression Blend说实话也并不好用,不过它编辑XAML时的性能倒是比Visual Studio好多了,至少不会出现经常假死的情况。 Flex Builder编辑器经过几年发展,在可视化设计上已经达到不错的水准,使用也相当方便。不足之处在于不能同时打开太多页面,不然内存的耗用会相当惊人。 |
√ |
|
代码编辑 |
在代码编辑的方面则是Visual Studio要比Flex Builder表现更好。对于代码辅助和编辑提示方面,Visual Studio比Flex Builder表现更加成熟。 不过Flex Builder也有Visual Studio所不及之处:1、类导航的功能更加丰富,使用快捷键比Visual Studio中更迅捷;2、无论设计还是代码视图都支持文档大纲,浏览和跳转更加方便;3、指定文件编码也要比Visual Studio要容易。 |
|
√ |
代码隐藏 |
由于Flex Builder并不直接支持Code Behind模型,因此在界面和对应代码的管理上要比Visual Studio麻烦一些。 |
|
√ |
编辑器性能 |
对于可视化编辑器而言,Flex Builder的性能要比Visual Studio好得多。对代码编辑器而言Visual Studio和Flex Builder表现差不多,但Flex Builder占用内存比较厉害。 |
√ |
|
编译器性能 |
Flex编译性能一直都是一个饱受诟病的重大问题。在项目大到一定程度,编译效率就开始急剧下降,编译一次需要三四十秒是常有的事。(据说有人编译一次甚至需要20分钟以上,不过我还没有遇到) Flex编译慢是有原因的,因为编译器替程序员完成了相当多的工作。如果你打开-keep=true编译开关,检查一下生成的代码,就知道编译器的工作有多繁重了。如果愿意放弃一些可视化特性,手工编写ActionScript组件而避免使用MXML组件,就可以在很大程度上提高编译效率。 从长远角度来说,我认同Flex这种设计思路,用机器效率来换取程序员效率是值得的(Unix格言:宁用计算机一分,不花程序员一秒。)但对于眼下的机器性能来说,Flex编译性能还是一个无法忽略的问题,编译速度太慢会拖慢迭代开发的节奏,对程序员的心理也不能不说是一种折磨。 Silverlight编译效率还是不错的,代价就是冗长的程序代码需要程序员自求多福了,编译器的工作实际上是很轻松的。 |
|
√ |
调试 |
在开发环境的支持下,Flex和Silverlight的调试都比较方便。Flex的一个小问题是开发人员需要单独安装一个Debug版本的Flash Player,Silverlight则不用,所以Silverlight更加方便一些。 Silverlight缺少Flex Builder内置的Profiler,没有简单的方法进行性能测试。传统的.Net性能测试工具基本上都不支持Silverlight |
√ |
|
开放性 |
基于Eclipse的Flex Builder开放性明显要优于封闭的Visual Studio,有大量免费的Eclipse插件可以直接拿来使用。不过有少量插件会与Flex Builder产生冲突。如果没有大量的Java开发工作,那么安装Flex Builder完整版要比插件版更加稳妥并且简单。 Visual Studio的插件数量不多,配合Silverlight Tools使用的目前基本上还没有看到。 |
√ |
|
IDE方面Flex和Silverlight各擅胜场。
相关推荐
Flex,+Silverlight+or+HTML5
通过五个方面,总结了flex 和 silverlight的优点和缺点。
Flex与java通讯 Flex与java通讯
ArcGIS Silverlight API 应用开发教程
Flex与Java实现通信,Flex与Java实现通信,Flex与Java实现通信
flex与java通信
《Flex与ActionScript 3程序开发》适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。 编辑推荐 《Flex与ActionScript 3程序...
Flex与ActionScript3程序开发》一书由易到难、由浅人深、循序渐进地介绍了Flex与ActionScript3程序开发的一般步骤与常用的程序技巧,内容通俗易懂,使用大量实例贯穿全书,力求以实战的形式让读者快速掌握知识点。...
flex4 高级开发技术 英文版最新 flex4 高级开发技术 英文版最新 flex4 高级开发技术 英文版最新 flex4 advance
flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...
本书主体分为5个部分,分别从基础知识、视觉设计、组件高级技法、性能...本书适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。
flex_spring_blazeDS 项目是flex spring blazeDS 通过配置文件完成flex与java通信的可以正常运行的实例。该源码在flex4与MyEclipse环境下整合成功,实现了Flex、spring、blazeDS的整合。
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源码
ArcGIS专业级介绍及silverlight和flex开发 内部资料
通过整理别人的东西搞的一个PPT,希望对大家有点帮助,对于想学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 ...
flex4出来一段时间了,去年看了一段时间flex3,后来由于暂时没有项目需求.所以flex遗忘了很多.这次使用flex4+myeclipse8.5录制了一个视频.以免时间长了遗忘. 软件环境:windows7+... 3 flex与webservice交互WebService