我感觉在 Flex 上很容易找到示例、教程和简单的例子。
似乎更难找到基于现实项目的技巧和良好实践。
有关如何执行以下操作的任何提示:

  • 如何编写可维护的动作脚本代码
  • 如何确保完全分离关注点。有人在真正的 Flex 项目中使用过 MVC 框架,例如 cairngorm、puremvc 或 easymvc 吗?
  • 如何使用 blazeds/amfphp 从服务器获取数据?
  • 如何减少最终用户的延迟?
  • ...
有帮助吗?

解决方案

我在工作中经常与 Flex 合作,我很乐意提供帮助。但你的问题每个都值得一篇文章:)我会尝试一些简短的答案。

可维护代码:我认为任何其他面向对象语言的规则都适用。我习惯遵循一些特定于 Flex 的规则:使用强类型变量,始终考虑将分派事件作为 UI 组件相互通信的方式(更多的初始工作,非常灵活且稍后解耦)。

构架:看了看,读了文档..非常好,但我仍然觉得它们的复杂性与它们提供的好处不平衡。无论如何,我想在这一点上改变主意..

与服务器对话:现在我正在使用 BlazeDS,它运行得很好..有很多关于这个主题的教程,如果您发现设置有任何问题,我很乐意提供帮助。

潜伏:您的意思是在客户端/服务器通信中吗?如果是这样,您应该探索 BlazeDS 实现的各种类型的渠道。仅拉动、双向 http 轮询,在 http 上近实时(comet)..如果您需要更多,LiveCycle Data Services ES(BlazeDS 诞生的商业实现)除其他外还提供了另一种称为 RTMP 的协议,它不是 http 隧道,因此可能存在防火墙和代理问题,但它提供了更好的性能(有一个免费的 LCDS 闭源版本)。我在 Intranet 环境中使用标准 http 通道,即使对于大型数据集也没有发现真正的性能问题。

出色地..东西很多,现在无法更具体地说明每一点,如果需要请询问您:)

其他提示

以下是一些与 Flex/AS3 最佳实践和标准相关的重要资源:

Flex SDK 编码约定和最佳实践

Flex 最佳实践 – 第 1 部分:设置您的 Flex 项目

我发现第一个特别有用,我尝试确保与我合作的所有团队都阅读了它

我找到了MVC框架RIAWave 关联 绝对令人难以置信。它超轻且易于使用。我发现 Cairngorm 和 PureMVC 的学习曲线相当陡峭,而且它们对我来说都有点过于庞大。RIAWave 不碍事,只是为您提供 MVC 基础知识来使用。

后端的 AMFPHP 也非常好。AMFPHP 还有一个 apache 模块,它将负责序列化/反序列化发送和接收的数据,所有数据都用 C 语言编写,速度非常快。

如果担心延迟,您将需要确保获得良好的网络主机,甚至部署到多个数据中心,以便您的用户永远不会远离服务器。不过,现在担心这一点似乎有点早了。

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