背景资料

3G时代的到来,使得手机应用日渐热门,由于手机携带方便,并且是生活必带随身用品,而且信号覆盖广,操作便捷,使得人们对其给予了越来越高的期望。大家期待各种常见的或是重要的信息化系统、互联网应用可以被移植到手机上同步使用,使用户无论在何时何地,都可以连线精彩的网络世界,登录信息系统。为此,如何进行手机开发,如何在手机上催生各种多姿多彩的精彩应用,日渐成为整个ICT产业关注的焦点。移动终端的开发对于经济,国防,通讯的发展都很重要。现代社会的发展对于移动终端的需求更是愈趋明显,所以手机开发的前景是广阔的。

手机应用

手机应用的范围很广,狭义地可以说是手机上的某个软件,广义地也可以说是移动终端的某项网络服务,这个没有绝对界限。手机应用的主要目的是提供更好的用户体验与服务,实现手机操作的便捷化,智能化,多元化。

开发难题

1、手机主要操作系统有:Android,i OS,Symbian , Windows Phone ,Blackberry。要想克服不同手机平台的差异,实现应用的统一覆盖异常困难; 这个是基于系统内核与硬件支持的差异性所导致的。

2、手机开发很难?开发人员稀缺,成本太高,进度太慢,无线网络太复杂,门槛障碍太多这些都是过去的情况了。现的许多终端生产商或软件公司都已经意识到手机开发对于公司及产品发展都有着极其重要的作用,所以开发者都被愿意加入到这些公司中,这样开发者集聚一起,实现了开发新模式——合作化。例如Google,Apple,魅族,小米等等

4、行业需要专业的角色,来解决开发应用过程中的各种难题,将复杂难题封装简单,把各种异构封装透明,降低大家进入这个市场的门槛,

解决方法

经过全行业长达多年的不断探索,业界主张将MKey无线中间件作为标准化的无线开发平台,进行手机开发和手机应用。利用MKey无线中间件进行手机开发,不仅能够解决上述的各方面开发难题,而且在成本控制、开发周期、开发难度等方面,均是目前最为出色的实现方法,整体开发技术水平相较国外无线开发而言,也显得十分突出。

MKey无线中间件屏蔽了各种硬件平台、操作系统、无线网络和数据源的差异,将所有技术难点进行了统一封装,可帮开发者快速、低成本实现移动化开发应用。

特点

开发1次,全终端适用;

2周完成一个项目的开发;

开发费用节省7%;

开发周期缩短8%。

比对

1、没有MKey的移动开发

* 手工作坊模式,所有技术从头到尾研究,“自己种棉自己织布”

* 实施一个普通的移动OA项目,需要耗费5-1人/月

* 会手机开发的人才稀少,人员成本高昂

* 多终端覆盖难以实现,综合成本十分巨大

* 一年实施十几个无线项目已是极限

* 技术不成熟、不可控因素多,项目风险高,一旦失败损失巨大

————————————————————————————————————

2、利用MKey进行移动开发

* 工业流水线模式,使用专业工具,快速批量“织布”

* 实施一个普通的移动OA项目,只需.5-1人/月

* 只需了解Web开发,经过几天培训就能上手使用MKey,人才资源丰富、成本小

* 只需编写一次程序,就能生成适用不同平台的多个安装包,全终端覆盖

* 一年实施几百个项目轻而易举

* 成熟工具、成熟应用,项目实施高度可控、无任何后顾之忧

MKey无线中间件的开发原理

MKey

1、企业应用

***CMMB移动电视增值平台

***移动(无线)电子政务平台

***移动电子商务平台

***移动OA

***移动IM

***移动CRM

***移动ERP

***手机业务助理

***移动维保

***移动物流

***移动保险

***移动采编

***移动进销存

***移动直销管理

***移动分销管理

***移动电子商务

***移动执法

***移动税务

***移动统计

***移动警务

***移动城管

***移动工商

***……

2、个人应用

***手机搜索

***手机浏览器

***手机证券

***手机自助服务系统

***手机银行

***手机社区

***手机邮件

***……

开发平台

有三大平台:Symbian、WindowsMobile(以下简称Windows)、Linux。Palm已经完全出局了,不需要再

手机开发(3张)

考虑。另外还有两大阵营:J2ME阵营(跨多种操作系统,包括Windows)和ASPCF阵营(只能运行在Windows上,以下简称ASP) 。

这些平台上的开发语言包括:

Symbian:C++、Java、Python

Windows:C#、C++、VB、Java

Linux:C++、Java...

J2ME阵营:Java

ASP阵营:C#

开发趋势

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

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

在Symbian上使用Python做开发的人还很少,优缺点还不大清楚。

顺便说一下,Nokia今年上半年推出了开发工具Carbide,针对SymbianC++和J2ME分成两个版本,这两个版本都是基于Eclipse的。

在Windows上也可以做J2ME开发,如果手机安装了MIDP2.的支持就可以直接使用,如果没有安装,需要开发者另外安装。Windows上比较好用的是IBM的J9VM,但是J9VM仅包括MIDP2.的核心部分,而不包括大量的可选包。如果你只是开发游戏,那应该是够用了。

不过Windows开发者首选的还是C#,C#开发效率大大高于C++,性能也很不错。相比Java来说,可以更加容易地访问所需要的资源,因此开发效率也更高。Windows上前几年使用的EmbedVC++、EmbedVB两个工具已经退居二线。

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

综上所述,在手机开发中占据统治地位的是三大语言:C++、Java与C#。

J2ME与.NET两大平台相比,J2ME在游戏开发方面有优势,而.NET在游戏以外其他领域的开发(例如:移动企业应用)更有优势。但是由于J2ME得到了手机一线大厂的力捧,因此前途不可限量。销售Windows智能手机的厂商主要还是一些新兴的排名稍靠后的厂商(联想、多普达、夏新...)。

移动智能应用比较发达的国家是日本和美国。在日本是以游戏类应用为主,在美国是以移动企业应用为主。中国将来走的道路,大概会与日本相同。因此在3G上马后,J2ME应用在国内的爆发是可以预期的。...展开

【手机开发岗位职责|手机开发是做什么的】-看准网相关推荐

  1. php前端工程师岗位职责,【前端软件工程师工作内容|工作职责|前端软件工程师做什么】-看准网...

    网站重构 优化 根据W3C标准进行重构后,可以让前端的代码组织更有序,显著改善网站的性能,提高网站访问速度,还能提高可维护性,对搜索引擎也更友好: 加速 重构后的网站能带来更好的用户体验,用XHTML ...

  2. 计算机网络安全顾问啊,【网络安全咨询顾问工作内容|工作职责|网络安全咨询顾问做什么】-看准网...

    职位薪资:14000-25000 经验:3-5年 学历:本科 类型:全职 As a Senior Consultant in our Greater China Cyber Security prac ...

  3. 计算机实验室行政助理职责,【实验室助理工作内容|工作职责|实验室助理做什么】-看准网...

    要求A 岗位职责: 1.研发部实验耗材和试剂的采购,以及采购发票的报销流程: 2.实验室日常生活用品以及清洁用品的采购: 3.研发部人员的日常考勤以及加班和请假的统计: 4.研发实验设备的台账管理以及 ...

  4. python开发职位_【python开发岗位职责|python开发是做什么的】-看准网

    发展历程 自从2世纪9年代初Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和Web编程. Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Gu ...

  5. 高级php平时的工作,【高级PHP开发工作内容|工作职责|高级PHP开发做什么】-看准网...

    职位要求 1.能非常熟练PHP开发和调试语言:并且在Python/Ruby/Perl语言上有更好经验:良好的编码风格习惯和测试习惯维持系统的质量: 2.乐于维持和提高团队的专业水平,甚至正面影响其他开 ...

  6. c语言开发ETL,【ETL开发工作内容|工作职责|ETL开发做什么】-看准网

    工具应用 ETL工具的典型代表有:Informatica.Datastage.OWB.微软DTS.Beeload.Kettle.久其ETL-- 开源的工具有eclipse的etl插件:cloveret ...

  7. it专员职责_【IT专员工作内容|工作职责|IT专员做什么】-看准网

    职位薪资:12000-24000 经验:3-5年 学历:本科 类型:全职 Accountabilities: 1. The PM must be an effective communicator, ...

  8. android MDE工程师,【MDE工作内容|工作职责|MDE做什么】-看准网

    要求A Manage development, selection, implementation & optimization of secondary operations for mec ...

  9. 计算机操作员工作任务职责,【电脑操作工工作内容|工作职责|电脑操作工做什么】-看准网...

    职业概况 1.职业名称:计算机操作员. 2.职业定义:使用电子计算机微机从事文字.图形.图像等信息处理工作及计算机系统操作.维护与管理的人员. 3.职业等级:本职业共设三个等级,分别为初级(国家职业资 ...

最新文章

  1. 使用photoshop 10.0制作符合社保要求的照片
  2. C# 获取进程或线程的相关信息
  3. 插值MATLAB实现(牛顿差商、插值误差、龙格现象、切比雪夫插值)
  4. 在iis中注册.net framework
  5. P3327 [SDOI2015]约数个数和
  6. 如何判断自己的编程水平
  7. Android:Touch和Click的区别
  8. 芯片领域再起风波 国内IC行业挑战来临
  9. 管理信息系统开发项目管理
  10. 英语四级备考~自我总结
  11. PuTTY 远程连接 Linux 服务器
  12. 用计算机处理表格说课稿,信息技术《电子表格的特点及应用》的说课稿
  13. 【计科快速入门】 三、布尔逻辑和逻辑门
  14. Failed to load ‘D:\note\笔记\javaweb\webpack\webpack.config.js‘ config
  15. 使用echarts在地图中使用dispatchAction
  16. 【单片机】自学单片机第01天|单片机简介、内部资源、最小系统
  17. 潍坊学院计算机打破世界纪录,牛!2017 ASC世界大学生超级计算机总决赛 潍坊学院每秒31.7万亿次峰值计算刷新世界纪录...
  18. PTAJava实验六
  19. VMware Workstation创建Windows 10(21H2)虚拟机
  20. gaia的地形地表整理(unity地编)

热门文章

  1. Uva 12657 Boxes in a Line 双向链表
  2. hdu 1000-1099计划(31)
  3. [转]快速矩阵快速幂
  4. 【转】查看linux服务器的系统信息
  5. HDU2012 素数判定【入门】
  6. CCF201403-5 任务调度(100分题解链接)
  7. CCF201803-3 URL映射(100分)【文本处理+暴力】
  8. jQuery AJAX 与 jQuery 事件
  9. 计算(数字)的观点看世界
  10. 算法 Tricks(四)—— 获取一个数二进制形式第一个不为 0 的位置