我需要一个总体简要的指南,介绍所有的开发方式并回答以下一些问题:
1. 在开发时,Symbian C ++和Java ME之间有何区别?
2. 如果Java ME可以在Symbian上运行,为什么我们还需要Symbian C ++?
3. 在Symbian上是否有其他开发方式?Qt和Ovi怎么样?
4. 如果你打算在Symbian上进行开发,你会选择哪种方式?
我知道这个问题可能有点主观性,但我真的需要你的帮助~
谢谢
在Symbian OS上开发的最佳方式取决于您已经了解的内容、预算和想要实现的目标。
在开发时,Symbian C++和Java ME有什么区别?
好吧,您不会使用相同的工具,它们不是相同的运行时,也不是相同的语言。
通常情况下,当尝试做一些JavaME无法完成的事情(例如电话)或者JVM占用空间导致性能问题(例如启动时间)时,会使用C++。
当您计划将开发的内容移植到非Symbian手机上时,JavaME特别有用(尽管支持多个平台的JavaME很快就会变成噩梦)。对于那些只接受过Java培训的众多开发人员来说,这也是进入移动产业的良好入口。
如果Java ME可以在Symbian上运行,为什么我们还需要Symbian C++呢?
请参见上文:尽管现代JVM以接近编译后的C++速度执行字节码,但JVM本身占用空间相当大,而J2ME缺乏许多可在Symbian OS C++中访问的API。
还有其他在Symbian上开发的方法吗?Qt和Ovi怎么样?
Python很受欢迎,有Ruby运行时,您可以使用Web Runtime...如果您感觉自己能够做到,您几乎可以创建自己的运行时。Qt是下一个重要的东西,因为它靠近硬件,在其他平台上可用,并且诺基亚致力于扩展其API覆盖范围。
OVI不是开发环境。这是诺基亚应用商店,您可以上传开发的应用程序(使用Qt、C++、Java、JavaScript编写...),以便诺基亚手机用户可以在其手机上下载它们。
如果您将要在Symbian上开发,您会选择哪种方式?
现在回到“取决于情况”。
如果您正在寻找良好的指南,我建议查看Symbian Press图书,特别是Java、Python和Quick Recipes图书。
关于非主观性问题:
Symbian C++比J2ME开发要难得多。现在有很好的Symbian C++工具,但我认为J2ME的IDE支持更好。使用Symbian不仅需要了解C++,还需要掌握Symbian的惯用语。
Java ME是Java的一个受限版本,有很多限制。例如没有后台应用程序,对手机资源的访问也受限制。它也比本地Symbian应用程序慢。你将使用什么取决于你的应用程序要求。如果速度和完全访问系统资源不是最重要的,你可以选择J2ME。这也有一个好处,你可以轻松地将你的应用程序移植到其他手机上运行。请注意,访问受限API,无论是J2ME还是Symbian,都需要签署应用程序(即购买证书)。
在C ++中进行Symbian本地开发(所谓的Symbian C ++)非常麻烦。诺基亚了解这一点,并致力于提供Qt框架作为主要应用程序开发层,一些结果已经与最新的Qt 4.6一起发布。即使它仍然不完整,您也应该开始查看它。您仍然可以下载传统的Symbian SDK并查看。有关此信息,您可以在诺基亚网站和论坛上找到更多信息。