智能手机开发语言和趋势

目前在智能手机开发领域,按照操作系统 来说,有三大平台:Symbian、Windows Mobile(以下简称Windows)、Linux 。Palm已经完全出局了,不需要再考虑。另外还有两大阵营:J2ME阵营(跨多种操作系统,包括Windows)和.NET CF阵营(只能运行在Windows上,以下简称.NET)。

这些平台上的开发语言包括:
Symbian:C++、Java、Python
Windows:C#、C++、VB、Java
Linux:C++、Java...

J2ME阵营:Java
.NET阵营:C#

        以上顺序也是按照它们在不同平台上被使用人数多少的顺序。可以看出,对于只针对某个操作系统平台开发的产品,Java并未占据优势。

        J2ME相比.NET来说,优势主要在游戏开发方面,但是.NET有着更加广泛的用途。在MIDP 2.0中,核心部分所加入的主要是对于3D图形、多媒体、Game API的支持,用来支持游戏的开发。因为在制定MIDP 2.0规范时时间有限,所以将其他 很多重要的功能都放入了可选包中,而不是作为MIDP 2.0的核心内容。因此尽管很多手机都声称支持MIDP 2.0,但是可能没有安装某个可选包,使得使用了这个可选包的软件在这款手机上无法运行。例如,假如没有安装PDA可选包,就无法访问手机的本地文件系统、无法读取通信录、无法读取信箱中保存的短信。而这些功能是开发个人信息备份/恢复软件所必需的。不过这种情况会随着时间的推移而逐渐好转,新推出的智能手机中都包括了越来越多的可选包,Nokia、Motorola、索爱等大厂商对于J2ME的支持力度是非常大的。除了可选包未安装这个限制之外,J2ME应用运行在严格的沙箱之中,要开发使用除系统内存、显示、声音控制之外的其他资源(例如,本地文件系统、通信录、信箱),所开发的应用必需经过签名,这个开发过程相当的繁琐。

        正是因为目前大多数Symbian手机上J2ME版本太老,功能非常有限,所以除非开发游戏类应用,大多数Symbian开发者都选择使用C++做开发,因为C++可以访问系统所有的资源。然而,Symbian C++尽管有很多优点,但是对于开发者却是很不友好的,学习 门槛相当高(一大堆的清规戒律,好像是鲁提辖上了五台山),从面向对象设计的角度来看问题也很多(与MFC类似,也许有人认为面向对象在手机开发中并不是很重要)。没有半年时间想成为Symbian C++的高手相当困难,这个巨大的sink lost需要经过慎重的权衡。
        在Symbian上使用Python做开发的人还很少,优缺点目前还不大清楚。
        顺便说一下,Nokia今年上半年推出了开发工具Carbide,针对Symbian C++和J2ME分成两个版本,这两个版本都是基于Eclipse的。

        在Windows上也可以做J2ME开发,如果手机安装了MIDP 2.0的支持就可以直接使用,如果没有安装,需要开发者另外安装。Windows上比较好用的是IBM 的J9 VM,但是J9 VM仅包括MIDP 2.0的核心部分,而不包括大量的可选包。如果你只是开发游戏,那应该是够用了。
        不过Windows开发者首选的还是C#,C#开发效率大大高于C++,性能也很不错。相比Java来说,可以更加容易地访问所需要的资源,因此开发效率也更高。Windows上前几年使用的Embed VC++、Embed VB两个工具已经退居二线。

        Linux上可以使用C++和Java做开发,笔者对于在Linux上如何做开发没有任何经验,在此略过。

        综上所述,目前在手机开发中占据统治地位的是三大语言:C++、Java与C#。
        J2ME与.NET两大平台相比,J2ME在游戏开发方面有优势,而.NET在游戏以外其他领域的开发(例如:移动企业应用)更有优势。但是由于J2ME 得到了手机一线大厂的力捧,因此前途不可限量。目前销售Windows智能手机的厂商主要还是一些新兴的排名稍靠后的厂商(联想、多普达、夏新...)。
        移动智能应用比较发达的国家是日本和美国。在日本是以游戏类应用为主,在美国是以移动企业应用为主。中国将来走的道路,大概会与日本相同。因此在3G上马后,J2ME应用在国内的爆发是可以预期的。

转载于:https://www.cnblogs.com/oracle10g/archive/2010/07/02/1769661.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
国家开放性大学的Android智能手机编程终结性考试涉及到一些具体的技术和知识,考生需要在考试前做好充分的准备和复习工作,才能取得好的成绩。以下是一些建议: 1. 阅读考试大纲:认真阅读考试大纲,理解考试的内容和要求,以便有针对性地进行复习。 2. 复习基础知识:对于Android编程的基础知识,如Activity、Fragment、布局、Intent等,需进行系统化的复习,强化理解和记忆。 3. 实践项目开发:通过实际项目的开发练习,将所学的知识应用到实践中,提高对Android开发的实际应用能力。 4. 查阅资料:参考相关的教材、网络教程、视频课程等,将个人的理解与专业资料结合,拓宽知识面。 5. 参加模拟考试:找一些模拟题,进行模拟测试,了解自己的弱点和不足之处,然后有针对性地加强复习。 6. 分析真题:分析历年真题,了解考试的形式和出题思路,针对性地进行备考。特别关注高频的考点和重点难点。 7. 制定复习计划:根据个人时间和能力,制定合理的复习计划,将复习内容分配到不同的时间段,保证复习的全面性和高效性。 8. 练习编程:多进行实际的编程练习,加深对编程语言和框架的理解和熟悉程度。 9. 关注新技术:及时关注最新的Android开发技术和趋势,了解行业最新的发展动态。 10. 良好心态:保持积极乐观的心态,相信自己的能力并克服困难,对考试持有正确的态度,才能更好地应对考试挑战。 总之,通过系统的复习和实践,我们能够更好地应对国家开放性大学Android智能手机编程终结性考试,取得好的成绩。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值