我们提供一个 Web 应用程序,其前端完全用 Adob​​e Flash 开发。6 年前,当我们选择 Flash 时,我们是因为它具有大量的用户交互功能,例如拖动内容、打开和关闭菜单、树形导航元素、弹出对话框等。

如今,很明显,AJAX/JS 提供了大致相同的可能性,并且由于可用的框架数量众多,因此实现它们非常可行。

是否有技术原因让人们选择其中一种技术而不是另一种?我所说的“技术”是指性能、安全性、可移植性/兼容性等。我指的不是诸如在 Flash 中以非常非程序员的方式进行开发或将应用程序从一个应用程序切换到另一个应用程序是否有意义等方面。

正如我刚才所解释的 在另一个问题中, ,在我看来,JS 在市场份额方面遥遥领先,我想知道如果我们坚持使用 Flash,我们是否会错过一些重要的点。

有帮助吗?

解决方案

  • 正确设计的 AJAX 应用程序比 Flash 更容易被 Google 搜索到
  • 正确设计的 AJAX 应用程序比 Flash 更容易进行深度链接
  • AJAX 不需要插件(Flash 非常普遍,所以这并不是什么大问题)*
  • AJAX 不像 Flash 那样由一家公司控制

编辑添加:* 正如 Abdu 指出的,iPhone 除外。

其他提示

除了其他人所说的之外,Flash 被限制在“矩形”中,无法以不显眼的方式添加到普通的 html 页面中。

@Gulzar我认为当更多的浏览器支持像mozilla 3.1这样的视频标签时,我们会看到更多的ajax/js而不是flash的采用。

  • Adobe Actionscript 是静态类型语言,Javascript 是动态类型语言。根据您的观点,这可能是好事,也可能是坏事。
  • 使用 Javascript/HTML/CSS,您将陷入跨浏览器兼容性地狱,特别是如果您想支持较旧的浏览器。这可以通过可用的库来缓解,但这仍然是一个大问题。使用 Flash,您只需编写一次代码,它就可以在所有浏览器中运行。
  • 即使有可用的库,Flash 用户控件也比您在 Javascript/HTML 世界中找到的任何控件都要先进。在 Javascript 中,您找不到任何东西能与 Flash 提供的数据绑定用户控件的简单性和功能相媲美。

我不明白 Javascript 为何比 Flash 拥有更多的“市场份额”。几乎所有拥有网络浏览器的人都安装了 Flash 插件。我很想知道有多少人禁用 Javascript 但拥有 Flash 插件。

另请记住,如果您决定转换技术基础,您将面临巨大的学习曲线和大量的开发时间,因此您最好有充分的商业理由来这样做。

这个决定也与你的应用程序的用途和安装基础有很大关系。

编辑: 我看到有人提到 iPhone 不支持 Flash。我预计这种情况会随着 iPhone 的安装基础而改变 - Adob​​e 如果不支持它就会发疯。

JS 和 Flash 都在网络上占有重要地位,并且具有重叠的功能。JS 仍然缺乏的一个领域是渲染视频。

Flash 如果使用得当,可以轻松实现本地化和国际化。

此外,以可访问的方式使用 Flash 更加容易;您可以向屏幕阅读器提供正确的文本,而不是让它们迭代所有可能的表单元素。

我认为Flash应该仅限于网络游戏、视频和动画。否则使用 html 和 Ajax。它是一个网络标准,几乎所有设备都支持。AFAIK,iPhone 不支持 Flash。这是一个快速增长的细分市场,您已经将其排除在外。保持简单高效。

尽管 flash 在桌面浏览器上非常普遍,但移动支持非常有限(flash lite?是的,对)。当我在手机上查找一家餐厅时,我真的很沮丧,却发现整个网站都是基于 Flash 的,而且我什至无法获得电话号码或地址!

Flash 的优点之一是它有一些工具可以帮助安全地执行跨域类型操作,这很有帮助。Flash 还对某些硬件提供(有限的)支持,这是 Javascript 无法实现的。

就我个人而言,在转向 Flash 之类的东西之前,我会尝试尽可能多地使用 Ajax。从UI的角度来看,更好的是控件和基本创作更发达一些。这 声音管理器 该项目是有效使用少量 Flash 而将其余部分保留在 Javascript 中的一个很好的例子。

我怀疑 JavaScript 变得越来越流行的原因之一是它更容易改造到现有的应用程序中。

由于我无法接受两个答案,因此我将合并 基督·厄普丘奇26 中的 17 答案在我自己的帖子里。我认为,这两点加在一起几乎概括了我想知道的内容。多谢你们!

如果您经常处理多边形,那么 Flash 仍然更容易编程和调试。使用 AJAX 有很多库可以处理多边形,但是您的应用程序使用的库越多,速度就越慢。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top