代码之家  ›  专栏  ›  技术社区  ›  PatrickS

Flex项目与Actionscript项目

  •  1
  • PatrickS  · 技术社区  · 16 年前

    在决定开发Actionscript项目之前,我已经使用Flex一年了。

    另一方面,IDE很棒,绝对不能与flashcside相比,所以对我来说,坚持AS3项目并使用Flex(现在的FlashBuilder)来编写代码是有意义的。

    (我需要指出的是,我不是一个Flash设计师,所以使用flashcs从来都不是一个选择。)

    您是否只考虑将Flex用于企业级项目?使用一个比另一个有什么好处?如果你是一个Flash开发人员,并搬到Flex,你的动机是什么?如果您同时创建Flex和;Actionscript项目,您的选择标准是什么?

    编辑:

    虽然我已经收到了一个很好的答案,但我还是很想听听Flex的用户的意见,在纯Actionscript项目中使用Flex的主要实际动机是什么(而不是哲学上的:)?

    1 回复  |  直到 16 年前
        1
  •  8
  •   Ender    16 年前

    前言:我的经验主要是使用flashide(FIDE)和flashbuilder4(FB4)组合构建AS3项目。

    与Flex项目相比,我通常更喜欢纯AS3(PAS3)项目,原因如下:

    • 大小
    • 性能
    • -Flex的目标是允许开发人员为最终用户提供一个成熟、灵活的UI,该UI具有与本地应用程序相同的小部件和小部件行为。然而,由于上面提到的性能问题,UI从来没有像本机应用程序那样感觉良好或响应迅速。此外,它还缺少最终用户习惯的和预期的所有特定于操作系统的特性。我真的不明白模仿本地应用程序开发或行为的动机-你永远不会赢得这场战斗。最好做一些独立的东西,这是大多数原生web应用程序正在做的事情。
    • -与前面的论点相吻合,Flash的主要优势是它能够做传统UI小部件库做不到的事情(至少不太容易)。你可以在Flash中创建一些非常非常新颖的ui,这些ui在本地应用程序中并不实用,而不必在OpenGL中乱搞。使用Flex使创建新的UI变得很困难(但它确实使创建标准UI变得更容易,即使在我看来, 附属的 -标准用户界面)。

    我很好奇是否有人在流行的公共网站上使用Flex的好例子。 Grooveshark 是我所知道的唯一一个(这很不错,但也有我所概述的许多问题,特别是在OS X上,闪存性能仍然很差)。

    现在

    • 努力与回报 -你必须为自己的用户界面编程。所有的一切。这可能会导致一些非常非常臃肿的代码,您必须为要创建的每个按钮定义大量的事件侦听器。我不知道有多少次我写了各种各样的布局代码具体到我的工作。您可以尝试为这些抽象类编写自己的抽象类(我已经完成了),但在某个时候,您最终将重新实现Flex框架。不值得你花时间。
    • -你可以只使用flashbuilder4,在这种情况下,你必须构建每一个图形资产的手在代码(这需要永远),或你使用FIDE,在这种情况下,你可以使可爱的艺术品,但你坚持与石器时代的代码IDE,它需要forrrreeeeevvver编译任何东西。目前我使用的是一个混合设置,在FIDE中生成的艺术自动导入到我的FB4项目中,但即使这样也不是一个完美的解决方案。它们确实需要更好地整合。

    • . 不要尝试在Flash中重新实现web浏览器。Flash实际上非常擅长显示相对较少的不可选择的文本(并且,通过使用嵌入式字体,总是像素完美的),但是不要尝试在Flash项目中创建大的、扩展的文本文档。首先,性能会很差,其次,用户会期望文本的行为与本地应用程序(尤其是web浏览器)中所有其他大型文本字段的行为相同。在Flash中选择文本感觉不正确,因为它感觉不到 你的 操作系统做到了。
    • -它不断与封闭的浏览器争夺焦点。如果你的系统需要这些东西,用户需要先点击它。不要陷入这样一个陷阱,人们会因为他们的输入到错误的地方而感到困惑。
    • -我们都听过这个,这并不像人们想的那样是个问题,但它确实存在 如果有的话 当用户不与CPU交互时。如果你的FPS降到60以下,那么你的UI与原生或html5ui相比会感觉缓慢和呆滞。还要确保注意内存泄漏。

    最后:用你的脑袋。这两种方法都只是你武器库中的工具。