Android vs Blackberry开发(可重用代码?)

时间:2012-02-13 16:36:44

标签: java android blackberry mobile java-me

我知道这个问题已经以某种形式出现,无论如何。但是,其中很多都已经过时,所以我想我再问一遍,还要问这个问题的真正原因。

Android和BB开发都可以通过Java完成,虽然Android在Java SDK之上添加了许多类和功能,但Blackberry似乎依赖于Java的J2ME。如果我编写一个针对两个平台的应用程序,特别是从媒体播放的角度来看,我可以在两个平台之间进行多少代码重用?为了记录,基于PhoneGap的应用程序是不可能的(特别是由于BB的Webkit实现)。

3 个答案:

答案 0 :(得分:4)

恕我直言,不要指望重用大量的代码。这些区域可能无法共享代码:UI,网络,安全性,正则表达式,java 1.4+类。

此外,android不需要自制的事件系统。所有活动都可以互相交流,或者您可以使用服务...... BlackBerry没有任何此类活动。

我正在使用这两个平台一段时间,我只是分享这个想法......每个平台的实现几乎都是具体的。

答案 1 :(得分:2)

我在一个大型应用程序上工作,该应用程序在Android,BlackBerry,MIDP和J2SE(即Desktop Java)之间共享公共代码。我会说在给定平台上大约75%的代码是公共代码。

优点:

  • 开发/测试的一大堆代码。这是一个巨大的积极意义!
  • 如果您决定移植到其他平台,那么您已经完成了大部分工作。

缺点:

  • 您只能在公共代码中使用java 1.3兼容性(没有注释,集合等)。
  • UI差异可能很大,特别是对于不同的事件模型。 MVC是你的朋友 - 至少你可以分享模特!
  • 您需要为所有需要与公共代码交互的平台相关内容编写包装类。如果您不是代码共享,这是额外的代码,您不必编写。

是否值得你花时间取决于一些事情......我至少会考虑以下几点:

  1. 项目有多大? (更大=更多共享代码的情况。)
  2. 您的核心功能有多少实际可分享?你提到媒体播放 - 如果这将是应用程序代码的80%,那么设置共享代码可能不值得。
  3. 您对不同平台的熟悉程度如何? (更熟悉=更多关于潜在陷阱的想法=更有可能知道应该共享哪些代码以及如何构建它。)

答案 2 :(得分:1)

Android和Blackberry代码可以重复使用。我以前做过,工作得很漂亮。确实存在一些小的差异。我无法记住它们,但有几个

  • Https / Http api调用不同。所以你需要为它们编写一些不同的代码。
  • Blackberry编译器不喜欢未使用的导入

除了这些,我想你会好的。但是,是的,试一试可以节省很多时间。