我应该学习如何在Symbian OS上开发吗?

时间:2008-08-31 08:15:01

标签: symbian

自从我买了诺基亚N95 8G以来,我一直在考虑研究一些Symbian开发。那些在Symbian OS上有经验的人是否喜欢他们对平台的感觉?是否难以入手,工具是否成熟等?

12 个答案:

答案 0 :(得分:13)

我想我可以回答问题的一些主观方面,因为有人在Symbian OS上工作了很多年;)但是我不会,我会尽力坚持我所看到的一些事实和有用的信息。

有问题的手机运行诺基亚Series 60 UI(现称为s60)。 Symbian手机传统上分为OS位(Symbian OS v9.1,9.2等),手机供应商购买或开发自己的UI。特定版本的s60将在特定版本的Symbian OS上运行。

诺基亚论坛是开启手机开发的好地方: http://www.forum.nokia.com/main/resources/technologies/symbian/documentation/getting_started.html

这将涵盖UI的各个部分。我应该补充一点,UI供应商自己会执行大量的操作系统自定义(具有不同程度的自我控制/质量),因此API的差异尤其涉及硬件可能会变得深奥。

Symbian本身确实提供了相当水平的文档质量,而不是微软,但比许多开源产品更好。一个很好的参考是Symbian开发者网络:

http://developer.symbian.org

关于工具。目前标准的开发环境是基于Eclipse的诺基亚硬质合金平台,我认为可以公平地说,如果你能忍受Eclipse,你会没事的,如果你不能......那么...命令为你排队。

Carbide具有设备上调试功能,包括PC和ARM(GCC-E)目标的编译器。

大多数应用开发都是使用Symbian仿真器完成的,它将成为诺基亚手机SDK的一部分。

当您准备将应用程序放在手机上时,您需要查看Symbian Signed: http://www.newlc.com/new-symbian-signed-processes-are-now-available 很多人都有合理的抱怨说它可能有点令人困惑,但作为一个非商业开发者,我认为“Open Signed”应该是最简单的。

答案 1 :(得分:13)

我们已经在我们的组织中完成了大量的S60编程,加上大量的BREW,以及其他所有内容。

  • 与我使用过的很多平台相比,S60工具相当不错。例如,
  • BREW的工具是一种耻辱。
  • S60平台非常强大。您可以做任何事情(尽管您可能会受到签名要求的限制)。 Java甚至不值得进行比较,你是如此沙盒,你无法做任何事情......
  • S60签名没问题,虽然我们偶尔会有些混乱(谁没有...)
  • 学习曲线非常陡峭。从根本上说,它是不同的。如果有两种方法可以做某事,其中一种是标准的,那么Symbian就会选择另一种方式。
  • 文档,特别是在FP2中, 错误
  • 不是
  • 构建系统和每个人都说的一样糟糕

答案 2 :(得分:11)

我在Symbian OS的OS开发方面工作了一年多一点。该系统的一般感觉是它是一个错误的无证件废话。我能说的唯一好处是OS代码本身遵循内部编码标准相对较好。标准的CodeWarrior IDE是垃圾(尽管最近作为替代品出现的Carbide非常不错,但免费版本非常准确,并且至少在不久前还有几个版本)。模拟器几乎无法使用 - 它运行缓慢,与实际设备不同,经常崩溃或悬挂。

如果您想在Symbian上进行开发,请准备好进行大量的试验和错误,因为几乎没有可用的文档,即使是在环境的核心概念上也是如此。作为一个虚构的例子,方法“JiggleThingy()”的基本文档将是“Jiggles the thingy”。当然,在许多情况下,实施也与文档完全不同。

Aquaintance在亚洲经营一家移动软件开发公司已有几年,并为几乎所有平台开发。他告诉我,Symbian是最糟糕的 - 它引起了比任何其他移动平台更令人头疼的问题。

这完全是关于C ++开发的。使用Java开发Symbian提供了如此有限的功能,我没有听说过任何实际上已经完成它的人。

答案 3 :(得分:7)

我建议使用Python for S60作为探索诺基亚S60 / Symbian平台功能的好方法。它易于使用,并附带强大的API设置。还有a book涵盖了很多有趣的例子。关于Python SDK的一个好处是,您可以通过PC上的控制台以交互方式在手机上运行代码。

答案 4 :(得分:7)

Qt for S60即将推出,已经有一个不受支持的预发布版。您可能希望在那里投入时间,因为它可能会成为诺基亚未来的首选用户界面。

答案 5 :(得分:5)

我已经完成了一些Symbian C ++应用程序开发,很难理解,如果(像我一样)你必须在多个开发环境之间切换(Palm,尽管现在不是很多,Windows)移动,桌面Windows,THEOS,Linux,HTML / CSS)。

但是我听说很多地方都提到了“没有文件”的事情,我根本没有发现这是真的。在某些情况下,文档太多了,对于新手而言,那里的内容太复杂了。示例代码是相同的 - 有很多负载,但很难分开代码的哪些部分控制哪个功能。

我知道,一旦你进入它,建立一些非常令人印象深刻的应用程序是非常简单的。在诺基亚论坛上有一个很好的社区(如上所述),我从他们在伦敦智能手机展上展示的一些开发者那里得到了一些灵​​感。如果你可以节省时间,那么你可以去那里看看,因为你不是太远,它在10月底开始。无论如何都不是一场大规模的表演,但值得一看。

答案 6 :(得分:4)

正如单挑,我们尽量避免主观问题,按照FAQ

  

我不应该提出什么样的问题   问这里?

     

避免提出问题   主观,议论或要求   扩展讨论。这是一个地方   对于可以回答的问题!

现在你是新人,所以没关系:)

就你的问题而言,我会说:

  • 如果你想做点什么的话,谁会给你一个废话,如果你想做点什么,就把袖子卷起来做,越难,它就会越有价值!
  • 我不是Symbian操作系统开发人员(一旦我获得PDA,我可能会进入.NET CF),但我会说移动应用程序真的开始起作用,很多应用程序都是现在正在发布移动应用程序,以保持人们连接和使用您的软件。使用它的人越多=业务越多!
  • 看看Wikipedia page here我会说有很多选项供IDE和平台实际开发,真棒!

答案 7 :(得分:4)

Symbian OS C ++开发的声誉不友好(至少可以说)是不可否认的。另一方面,该平台也非常强大。

如果您只想编写个人程序或小型免费软件/共享软件,则另一个平台可能更适合您。如果您正在努力寻找能够在软件开发方面保持职业生涯的操作系统,那么Symbian,J2ME以及Linux(在较小程度上)是您最好的选择。

Symbian的文档和工具随着每个新版本的发展而不断发展。使用Symbian OS C ++越来越容易(但仍有很长的路要走)。

一个小小的相关广告:Symbian Press最近努力向开发人员介绍Symbian生态系统。

http://www.quickrecipesonsymbianos.com

它可以用作80小时的分步课程。

答案 8 :(得分:2)

Symbian与您可能习惯的有点不同,但它是一个稳定的平台(那里有200多万台设备)并且工具已经成熟。

硬质合金非常好,特别是如果你之前使用过eclipse。

在开始Symbian编程之前,首先要看的是:http://descriptors.blogspot.com/

描述符是Symbians字符串。它们非常有效,但与许多其他字符串实现略有不同。

答案 9 :(得分:2)

查看NS Basic / Symbian OS。它提供了类似Visual Basic的环境。它非常易于使用,可以解决Symbian OS带来的许多问题。应用程序将在S60 3rd Edition和UIQ3设备上运行而无需更改。

http://www.nsbasic.com/symbian

答案 10 :(得分:0)

我建议尝试Superwaba,它是一个使用类似Java的语言的PDA的跨平台开发平台,因此很容易让事情开始。

答案 11 :(得分:0)

今天诺基亚Qt SDK 1.0是released。然而,我怀疑诺基亚的未来,诺基亚将面临已经充满挑战的移动市场,其N8甚至在进入市场之前已经超越了iphone 4。甚至本身也是在承认this