框架选择多平台webapp的策略

时间:2011-02-02 18:01:49

标签: gwt mobile-phones cordova

问题

您构建类似桌面的Web应用程序的策略是什么?需要将其部署到桌面Web浏览器和移动设备(Android,IPhone等)上?

一个行动方案可能是首先选择构建在计算机上运行的部件的最佳框架(即不是移动设备)。作为类似桌面的应用程序,一个好的候选框架是GWT + ExtGWT,因为它提供:

  • 基于Java的开发,比通过ExtJS在Javascript中开发更具可扩展性/可靠性
  • 良好的调试
  • 良好的可测性

接下来,您也希望在移动设备上部署此应用。那么你怎么离开这里?为Android编写一个单独的实现(与GWT分开),另一个用于iOS(在objective-c中),另一个用于Windows Mobile,依此类推?

相关

与上述相关,我看到了PhoneGap的演示文稿,声称您使用Javascript + HTML进行开发,并为所有移动平台生成代码:Android,iOS等。

然而,PhoneGap不是一个选项,因为我认为它不能与GWT很好地集成,更重要的是,它不会生成可以利用后台,服务等功能的本机应用程序(参见{{3为什么本机Android应用程序比基于浏览器的应用程序要好得多)。可能还有像PhoneGap这样的其他框架我不知道但是在这一点上我只看到:

  • 使用GWT的一个实现
  • Android的一个实现
  • iPhone的一个实现
  • 等......

1 个答案:

答案 0 :(得分:5)

如果您已经计划开发多平台,最好至少考虑一下跨平台框架,如PhoneGap或Appcelerator。除了您正在为多个平台开发之外,还有一些其他重要问题需要考虑。

  1. 您是否也想要网络版?
  2. 您是否需要密集的图形支持?
  3. 您是否有足够的资金来定位多个平台?
  4. 您是否有足够的时间来定位多个平台?
  5. 您还要指出在调试和可测试性方面需要考虑的两个重要问题。在单元测试方面,任何本机平台都很难进行单元测试。对于大多数本机平台来说,调试非常简单。

    关于PhoneGap,了解一些事情非常重要。

    您可以编写PhoneGap插件。插件本质上是任何给定平台的本机代码,可以在本机代码中执行任何您想要做的事情 - 后台服务,opengl等 - 并且可以在Web视图中访问JavaScript。

    您可能会对几个开源项目感兴趣,例如GWT-PhoneGap,用于JavaScript单元测试的QUnit,以及用于调试的Weinre for Firebug。

    希望有所帮助!

相关问题