【问题标题】:Need help on choosing a frontend technology在选择前端技术时需要帮助
【发布时间】:2012-03-07 08:53:31
【问题描述】:

对于新应用程序,我需要决定使用哪种前端技术。我知道以前有人问过这个问题,并且我发现了一些研究、博客和其他参考资料讨论了 Flash、Silverlight、HTML5 和 JavaFX,但在我的例子中,有一个业务需求使情况复杂化。

应用程序必须作为离线、独立的桌面应用程序和在线客户端-服务器应用程序运行,并且将来它可能还需要在平板电脑上运行。为了最大限度地减少维护,我们希望只有一个代码库。服务器端最好在 Linux 上运行。

在早期的项目中,我们有使用 Java 和 Flex 进行客户端-服务器配置的经验,但我还没有发现是否可以将其打包到独立的应用程序中。 Java 和 JavaFX 将是一个替代方案,但 JavaFX 似乎仍然不成熟并且缺乏开发工具。如果我们选择 Silverlight,我们或多或少必须切换到 C# 或 C++ 作为后端,或者使用 JNBridge 之类的东西,这会使独立安装更加复杂。 HTML5 将是未来的选择,但不太适合复杂的应用程序,我们可能会遇到浏览器依赖项。

所以我还没有找到理想的解决方案,可以使用一些帮助。也许我们需要将一个代码库要求限制在服务器/后端,并接受不同的前端用于不同的用途。

任何想法表示赞赏。谢谢!

【问题讨论】:

  • 棘手的问题,因为我相信在 2012 年初对此没有“最佳”选择。“可能需要在平板电脑上运行”的要求非常昂贵,尤其是因为它可能不需要。

标签: silverlight flash html javafx


【解决方案1】:

Adobe AIR怎么样,它可以离线运行,也可以作为客户端与服务器通信,支持多种平台,如windows/linux/android等

【讨论】:

    【解决方案2】:

    由于 Adob​​e 对 2011 年底公告的糟糕处理,Flash/Flex/AIR 的东西现在有一个到期日期。

    Silverlight 正在遭受与 Flex/Flash/AIR 类似的痛苦,因为微软宣布了未来的发展方向,而开发人员认为他们对 Silverlight 的投资现在被浪费了。

    JavaFX 迟到了,最新版本并非在所有平台上都可用。他们现在的目标是移动设备吗?

    HTML 5 被过度炒作,没有足够的跨主要浏览器的统一功能。它会到达那里,但不是今天。

    切换到完全不熟悉的技术堆栈将付出高昂的代价 - 当您和您的团队完全陌生时,您无法做出任何合理的估计。

    就个人而言,我建议从您熟悉的技术开始,这似乎是 Java 和 Flex,然后将 AIR 添加到该组合中。

    我真的会推迟对平板电脑的支持,因为我认为该要求含糊不清,但对项目有巨大影响。我没有看到桌面上的传统 UI 在平板电脑上运行良好。我会说平板电脑需要自己的 UI。

    【讨论】:

      【解决方案3】:

      如果它需要在平板电脑上运行并断开连接,您最终将不得不编写多个应用程序,因为 iOS (iPad) 不运行 SL/Air 或 JavaFX,而且据我所知 Android 不运行 SL 或 Air。使用 Silverlight 并不排除在 Linux 上公开 Web 服务的后端只会让它变得更难一些。现在,如果你可以放弃 Disconnected,那么我会一直使用 HTML5,否则你需要为 Windows/Mac 机器编写一个 SL 应用程序,为 iPad 编写一个 iOS 应用程序,可能还有一个 JavaFX(或者也许Air,请查看对 Android 平板电脑的支持)。

      【讨论】:

      • Android 全面支持 AIR 应用程序。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-01
      • 1970-01-01
      • 2013-03-27
      • 2013-05-03
      相关资源
      最近更新 更多