论坛首页 编程语言技术论坛

Flex程序员的四重境界

浏览 19152 次
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-09-05  
回复大熊猫bigpanda:

“他的基本观点是Flex建立在一个错误平台(flash)上面”

Flex建立在Flash平台(flashplayer)上是Adobe(macromedia)的必然选择,现在flashplayer9的全球普及率以及达到90%以上,在评估RIA技术的两个主要方面"reach and rich",flash平台已经做到rich了,至于本身flashplayer/swf的缺陷或者不足那就另当别论了。试问,有比flash平台更好的选择吗?难不成要建立在pdf平台?


“里面提到swf对内嵌字体的支持很差,这点对我想写的应用影响很大”

或许swf对特殊字体的使用比较麻烦,但是至少对中文宋体的显示是没有问题的,我想知道,你真的需要其他字体比如楷体、隶书在flash应用中使用吗,那你的文件尺寸有多大,你试过吗?记得以前用java生成过swf文件,只要一嵌入中文,文件尺寸就非常庞大。这确实是flash的问题,但是我们可以预期,在flashplayer10推出之后,flash中涉及到的文字处理的难题将一举突破。


“Flex不支持线程,对Flex更精通的人可以确认或纠正一下”

个人认为在客户端没有必要支持多线程,基于事件的程序就很有效率,而且很容易开发。目前flashplayer9核心已经支持多线程、硬件加速、高清视频音频解码、三维贴图渲染(papervision3D),有这样一个高性能的平台来开发,作为flex程序员应该感到很幸福。
此外,这里对actionscript/java的线程处理差别做了解释:
3. Flex Technology uses ActionScript. Why would a developer choose to use ActionScript over say Java or JavaScript?

Jeff Vroom: Yeah, Java is a great programming language and I think for serious programmers and for applications on the server, where you need multi-threading, you know, it’s really the best option out there, but for business programmers and for people that maybe are more focused on design, some of the concepts in Java, particularly, multi-threading and synchronization, I think, make it hard for those people to consume and collaborate than with these less-skilled programmers. So, with ActionScript, it’s a singly threaded model like JavaScript, where none of them causes to block, it’s very asynchronous. So, when you make a call that needs to be asynchronous, you get a call back handler, that will then handle the results of that operation, so this is a much more efficient way of building applications for people that are less skilled and when you only have a single user I think that programming model is simpler.

0 请登录后投票
   发表时间:2007-09-05  
lwz7512 写道

Jeff Vroom: Yeah, Java is a great programming language and I think for serious programmers and for applications on the server, where you need multi-threading, you know, it’s really the best option out there, but for business programmers and for people that maybe are more focused on design, some of the concepts in Java, particularly, multi-threading and synchronization, I think, make it hard for those people to consume and collaborate than with these less-skilled programmers. So, with ActionScript, it’s a singly threaded model like JavaScript, where none of them causes to block, it’s very asynchronous. So, when you make a call that needs to be asynchronous, you get a call back handler, that will then handle the results of that operation, so this is a much more efficient way of building applications for people that are less skilled and when you only have a single user I think that programming model is simpler.



我最讨厌这种说法,搞得business programmer象二等公民似的,需要保护起来,旁边就有一个强大的武器,不让你用。

在大多数情况下,event模型是够用的,但是没有线程支持,总是一个限制。
0 请登录后投票
   发表时间:2007-09-06  
很多人都认为Ajax是使用错误的技术来做正确的事情,因为至今JavaScript仍然不够强大,而且很多人认为HTML作为一种表现媒体非常差劲。
同样有很多人认为Flash是错误的技术。

但是用户并不关心这些,Ajax和Flash仍然在为用户创造价值。目前对Ajax和Flash的需求量是最大的,需求会推动技术的发展(例如出现新的强大的开发框架)。Ajax和Flash仍然在迅速发展,我相信Ajax+Flash在三年之内都会是我们最现实的选择。三年之后的事情,我不认为这里的人有能力来做预测。
0 请登录后投票
   发表时间:2007-09-06  
很平衡的观点!
0 请登录后投票
   发表时间:2007-09-06  
关于线程支持问题,我听说原因之一是因为多线程库的体积比较大,对解释器和类库的尺寸会带来不良影响,延长下载时间,所以Macromedia决定暂不支持它。有个旁证:Silverlight 1.0的运行库只有1兆多点,而1.1因为支持的功能多就一下涨到4兆了,这个问题也是需要权衡的。
0 请登录后投票
   发表时间:2007-09-07  
dlee 写道
很多人都认为Ajax是使用错误的技术来做正确的事情,因为至今JavaScript仍然不够强大,而且很多人认为HTML作为一种表现媒体非常差劲。同样有很多人认为Flash是错误的技术。

但是用户并不关心这些,Ajax和Flash仍然在为用户创造价值。目前对Ajax和Flash的需求量是最大的,需求会推动技术的发展(例如出现新的强大的开发框架)。Ajax和Flash仍然在迅速发展,我相信Ajax+Flash在三年之内都会是我们最现实的选择。三年之后的事情,我不认为这里的人有能力来做预测。


提到一个技术的在某些方面的限制,并不否认这个技术能够创造巨大的价值。我在我写的几个帖子里也没有否认Flex的价值,所以不用树个不存在的靶子开火。

但是作为技术人员,明白一门技术的长处在哪里,限制在哪里,这是一个起码的要求。做到这一点才能知道什么时候选择什么样的技术,什么时候要绕着走,什么时候绕不过去了,必须开发新的技术。

我从来没有否认过Flex的巨大价值,要不我干嘛花一个周末把文档全部看了一遍。天下没有完美的技术,只有有用的技术。

三年内,我的看法是除了Ajax和Flex/Flash,Silverlight是支不可忽视力量。

另外那篇博客用了Flash将死这种吸引眼球的话的确让人不爽,但不能否认他写的别的东西还是很有价值的。没有对Flash的深刻了解,是写不出这种东西的。
0 请登录后投票
   发表时间:2007-09-07  
楼上说的很好,现在看来大家对这客户端技术的态度很平衡了,剩下的就是如何发挥和挖掘各自的优势了。
0 请登录后投票
   发表时间:2007-09-07  
那篇博客写的口气我很看不惯,就像linux用户写windows如何如何不好一样,抓住别人的短处说个不停。Flex在Adobe接手后,已经和以前MACR出来的东西完全不一样了。再说,能设计出Flex的人并不是笨蛋,有很多利害取舍,都是经过悉心考虑的,权衡利弊而得之。而作为使用和开发者的我们,要客观看待技术,选合适的用:)
0 请登录后投票
   发表时间:2007-09-07  
不过除了各位所讨论的技术问题之外,一种面向Web的表现层技术要取得成功,还需要从Web可用性和是否符合REST两方面来考虑。我前两天写了一篇blog,讨论Flash的可用性问题。各位感兴趣可以看看:
http://blog.csdn.net/mozilla/archive/2007/09/04/1771124.aspx

在我看来,后面这两个方面对于这种技术是否能够取得成功甚至更加重要。Silverlight除了在技术上超越Flex/Flash以外,还需要在后面两个方面全面超越Flex/Flash。
0 请登录后投票
   发表时间:2007-09-14  
Flash的可用性其实才是最大的问题。Flash爱好者可以再读一下高手Luar在一年半前所写的文档:
从Flash 走到AJAX——使用者经验与开发者经验的二三事

不回避问题,才有可能取得进步。理想情况下是将Ajax与Flash完美地结合在一起,AIR看来就是往这个方向努力的。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics