我尝试到处寻找使用 Flex 与使用 Flex 的优点和缺点的简明列表。闪光。

我有编程背景,因此非常喜欢 Flex。它很容易上手,而且既然它可以使用 flash 类,为什么我要使用不带 flex 的 Flash?

柔性:

优点:

  • 有利于 RIA 开发
  • 提供许多开箱即用的用户输入选项
  • 内置布局系统
  • MXML 对于非程序员来说更容易
  • 您可以快速组合组件来创建小型应用程序
  • 由于其模块化性质,组件可以在大型项目中提供优势。
  • 可以使用linux进行开发
  • 有一个很好的组件生命周期用于验证等。

缺点:

  • 增加 .swf 的大小
  • 自定义组件的外观可能需要比预期更长的时间,具体取决于您正在寻找的视觉风格
  • 当你发现你需要的自定义组件并不存在时,你可能需要回到Flash来进行真正的编程工作和组件的打包
  • Flex 的“灵活性”意味着您将阅读大量文档
  • Flex 框架中的错误
  • 您最终需要妥协 Flex 框架的架构

闪光

优点:

  • 适合制作电影/动画
  • 设计师/动画师可以更轻松地构思时间轴
  • 当从头开始工作时,提供了很大的控制权。
  • 对于有编程背景的人来说更容易
  • 你可以随心所欲地编程;不与现有框架妥协

缺点:

  • 仅提供开箱即用的基本用户输入(文本框)。
  • 时间线对于程序员来说可能是令人畏惧的(尽管你可以放心地忽略它)
  • 某些类型的应用程序的开发速度会比 Flex 慢
  • 无法使用linux进行开发
  • 用户输入验证必须全部在代码中处理。没有内置验证。
  • 需要实现自己的布局系统

如果到目前为止我错过了任何内容,请纠正我。

有帮助吗?

解决方案

Flash 和 Flex 都使用相同的底层渲染引擎,只是前端不同。Flash 更适合制作电影和动画。Flex更适合应用程序开发。

其他提示

从程序员的角度来看,Flash 和 Flex 之间的最大区别并不在于您使用哪种 IDE/应用​​程序进行编程,而在于您是否仅使用 ActionScript (AS) 进行编程,还是使用 Flex 框架和 MXML 来对应用程序进行编程。

我想说纯ActionScript更适合编程(无论你使用Flash IDE还是Flex IDE都没有那么重要),而MXML更适合非程序员来组合在AS中编程的组件。

我会将这些优点/缺点添加到您的列表中:

柔性:

优点:

  • 非程序员更容易进入应用程序开发
  • 您可以快速组合组件来创建小型应用程序
  • 组件可以在大型项目中提供优势

缺点:

  • 自定义组件的外观可能需要 很多 比预期更长,具体取决于您正在寻找的视觉风格
  • 当你发现你需要一个不存在的自定义组件时,你可能需要回到Flash来进行真正的编程工作和组件的打包
  • Flex 的“灵活性”意味着您将阅读 很多 文档数量
  • Flex 框架中的错误
  • 您最终需要妥协 Flex 框架的架构

Flash(或 ActionScript 项目模式下的 Flex IDE):

优点:

  • 对于有编程背景的人来说更容易;)
  • 你可以随心所欲地编程;不与现有框架妥协

缺点:

  • 时间线对于程序员来说可能是令人畏惧的(尽管你可以放心地忽略它)
  • 某些类型的应用程序的开发速度会比 Flex 慢

简而言之:为正确的任务选择正确的工具。

Flex 是一个用 ActionScript3 编写的代码库,因此它为 Flash 添加了许多功能和类似标准库的内容。缺点是它是包含在您的应用程序中的大量代码。如果您在应用程序中使用任何 Flex,则 SWF 的下载大小会增加 100 K。

如果您的应用程序有任何类型的用户界面小部件,那么您几乎必须使用 Flex,因为 Flash 本身只有最基本的东西,例如文本框。Flex 有一个完整的 XML GUI,包括布局、数据绑定和 XML 设置等。

在闪存中执行此操作,您最终必须从头开始编写列表框之类的内容......

在我看来,Flex 框架最重要的特性是组件生命周期,它为属性的验证/无效、组件大小和分层渲染提供了一个非常优雅的模型。

对开发人员的好处是,它为业务逻辑和渲染创建了离散的应用程序阶段,避免了昂贵的几何和渲染代码,直到绘制框架之前的最后一刻。

这是一个非常好的演示,解释了它是如何工作的:

http://tv.adobe.com/#vi+f15384v1002

该模型设计得非常好,以至于当您使用框架默认组件和容器时,在大多数 Flex 开发过程中,组件生命周期几乎完全不可见。当您开始开发自己的组件时,您只需要了解内部工作原理。

在 Flash 环境或纯 Actionscript 中进行开发,您无法获得这些。任何开发纯 AS3 应用程序的人都需要编码 非常 小心地将业务逻辑与渲染分离,否则性能会严重下降。

[...] 为什么我要使用不带 Flex 的 Flash?

Flex 是一个新产品,而 Flash 从 Macromedia 时代就已存在。设计师、动画师和大多数没有接受过编程教育的人可能会发现 Flash 比大多数其他此类解决方案更容易掌握。

目标不同。Flex更适合程序员,而Flash则更适合艺术家/网页设计师。

Flash 是(通常)用于创建动画和在时间轴上运行良好的内容的 IDE。

Flex 更适合创建具有更类似于桌面交互的互联网应用程序。

为什么要使用闪存?好吧,当然,如果您需要做一些更具体地附加到时间线的事情!

我认为 Flex 更多的是用于执行 RIA 应用程序的解决方案,您需要在其中开发基于应用程序的解决方案。使用 Flex 可以立即获得很多东西,但它在文件大小、粒度等方面也付出了代价。

另一方面,如果您正在开发完全自定义的解决方案(例如游戏),那么 Flash 可能是您的最佳选择,因为您可以从空白画布开始。许多人仍然使用 Flash,因为他们不需要 Flex 平台的所有基于应用程序的花哨功能。

我喜欢 Flash 的自由,在 Flash 中嵌入资源非常简单,但在 Flex 中嵌入资源则有点混乱。

我喜欢 Flex 的一件事是能够以最小的努力实现流畅的应用。这在 Flash 中会花费很长时间。

在 Flex 中可以做的任何事情,在 Flash 中也可以做,只是可能需要更长的时间才能完成。不过,您无法在 Flex 中完成在 Flash 中可以完成的所有操作。

Flex 会为您处理所有 UI 编程,让您专注于业务逻辑,而使用 Flash,您将花费大部分时间进行 UI 编程。

您可以在 Linux 下轻松开发 Flex 应用程序,但使用 Flash 则根本做不到。

这里没有建议的另一个解决方案是同时使用它们。您可以使用以下命令将 Flex 组件添加到 Flash 影片剪辑中 容器影片剪辑. 。您可以使用以下命令将 Flash 影片剪辑添加到 Flex 组件中 精灵视觉元素. 。另一件没有提到的事情是布局你的应用程序。这将是 Flex 的优点,可以对抗 Flash 的缺点,因为你内置了 Flex 布局系统。但是,当您同时使用它们时,您可以使用弹性布局系统来布局影片剪辑。

也弯曲成为 Apache顶级项目. 。现在它越来越受到社会的排斥。

Flash 和 Flex 是两个完全不同的东西,一个是支持动作脚本的设计工具,另一个是也有动作脚本的框架,但主要围绕 MXML 构建,MXML 是基于 XML 的 UI 定义“语言”。

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