论坛首页 移动开发技术论坛

手机开发之C# VS J2ME

浏览 22177 次
该帖已经被评为良好帖
作者 正文
   发表时间:2006-11-27  
J2ME美好的write once,run anywhere的初衷,被各大手机厂商摧残的体无完肤,变成write once,debug everywhere(或者write once, port everywhere)。
在经历了2,3年头脑火热期后,J2ME developers终于意识到一个统一的J2ME JVM implementation的重要性。貌似IBM开始了一个J2ME标准制订的委员会,Sun也开始开源J2ME,希望不久的将来J2ME可以更加规范些。但各大手机厂商的态度很重要。看过太多的厂商口口声声说支持xxJSR标准,开放xx底层API,手机拿到手一看傻眼,JSR标准只支持一半,基本上无用。底层API只开放给自己的软件用,其它人开放的程序,对不起,没有permission。很多优秀的JSR,如PIM,MMS,等等,基本于我们无缘。模拟器里玩得很高潮,实际手机上一试,基本嗝屁!

SavaJe给了J2ME一线希望。SavaJe是直接的Java OS,而不是寄存于手机kernel OS上的一层JVM layer。在今年的JavaOne上大出风头。native执行J2ME程序的速度很快,也很酷。可惜没有得到大手机厂商的支持,月前据说烧了1个多亿的钱,目前运转有困难,融资又融不到,前景叵测。可惜。

Windows C#Compact Framework倒不同。只是因为MS垄断,但看起来至少在mobile方面,这个垄断挺好。
Windows Mobile (以下简称WM)在企业级的应用上,和MS的几个龙头产品的整合非常好。特别是outlook的整合,很受商业人士的青睐。他们最关切的不是技术上的优势和技术的领先程度,他们关心的是技术是否很好的为他们的商业发展服务。他们才不管MS的垄断与否。事实上,他们更希望一个统一的开发平台,所有的程序和数据可以很方便的整合。(虽然我是anti-MS,但他们商业应用上的优势不可否认)。WM上的POOM(Pocket Outlook Object Model)很好的结合了Outlook中基本(但很重要的)功能。另外一个摄像头的API,可以很方便的拍照片,视频聊天,拍video等等,开发者不需要写low level的摄像头驱动程序(J2ME这点做得很不够),直接调用摄像头API的功能,可以更专注于商业逻辑的开发。

零零碎碎说了一大堆,基本上目前J2ME处于低潮期,除非标准统一步伐加快,不然手机阵地这块会很快失守了。。。
   发表时间:2006-11-27  
唉,看到这里真为J2ME开发感到可惜啊
其实JAVA语言挺好的
0 请登录后投票
   发表时间:2006-11-27  
没用过j2me。
用C#移植过一个程序到PPC上。
那次的开发体验巨好。
0 请登录后投票
   发表时间:2006-11-27  
手机开发上,J2ME还没有成为真正重量级的竞争对手。原因是手机界的老大NOKIA在力推SYMBIAN,虽然SYMOS和其它各厂家自主的OS大多多多少少支持J2ME/KJAVA,但如楼主所言,标准是一个大问题。说白了,没有一个手机厂是真心实意想支持J2ME的。NOKIA不去说(SYMOS用C++开发),MOTO一直是三心两意,什么都想搞,SAMSUNG呢一是没能力,二是SAMSUNG有一半的应用是高通控制的,而高通一直想让BREW一统天下(因为3G是高通的天下嘛,BREW一统天下不算是做白日梦)。其实SUN如果想强推J2ME,MOTO应该是一个比较好的争取对象。但最近的态势看起来不象,MOTO收购了企业移动计算大厂SYMBOL,貌似要倒向MS的怀抱。

C#目前在手机上是一个潜在的竞争对手,因为一线厂商,只有MOTO有PPC平台和SMARTPHONE平台,其它都是象多普达之类的二线厂。但MS现在在PDA应用上具有无可压制的优势,因为PC平台上的程序移植到WINCE/PPC/SMARTPHONE PDA上,简直没有任何门槛。消费类应用上有HP IPAQ,企业应用上有SYMBOL、INTERMEC,原来的竞争对手PALM已经彻底完蛋了。在PDA应用上,J2ME的地位还不及在手机上……,尤其在企业应用中。ORACLE ERP里带的J2ME CLIENT已经成了笑话了。

C#的可怕在于,事实上PDA领域与手机领域是互相重合的,长远看来,必定会发生融合。IPAQ配块GPRS卡就能打电话,摄像头和WIFI在手机上和PDA上都在支持。而目前看来,MS在PDA上的先发优势还要强于NOKIA在手机领域的优势。如果MS在PDA和手机融合的过程中取胜,则J2ME将没有任何机会。因为在更有价值的企业市场上,LINUX和PALM都已经失败了,CompactFramework的已经无可动摇的占领了企业移动计算的天王山。
0 请登录后投票
   发表时间:2006-11-28  
不具有可比性
这个问题在J2MEDEV上已经讨论很多次了
首先说C#开发移动设备的前提,目前看来是WM系统,而目前手机厂商的系统众多市场非常不明朗。而J2ME对于开发人员是比较保险的。之所以这样说的原因恨简单。各个系统可以不同,但目前恐怕没有哪各系统不在支持MIDP标准,WM下虽然支持的不好,但也算有对应的虚拟机,就连已经陨落的PALM系统也有MIDP2的虚拟机。另外对于各个手机厂商来说自己已经投入研发了系统,又为什么要在花钱安装MS的系统呢?而这部分费用无疑会被转移到最终客户身上。
目前的手机操作系统来看还是SYMBIAN占上峰。不论是其市场占有率,还是对开发者的资料公开率来说。个人认为LINUX在手机市场算是失败的恨彻底,对外公开的资料少的可怜,作为开发人员恨难为其开发软件。
有人说C#会靠着PDA市场挤进手机市场,目前看来依然不明朗,其实不只是MOTO一家有WM系统的手机,NOKIA也有,但两家目前采取的都是观望态度,并不在市场上主打。因为目前很多人的观念还手机就是电话。并非手机就是掌上电脑的替代品。
另外还要一点是潜在的,即使有一天手机替代了PDA我们也要看到JAVA在企业应用领域的成功,这一点在3G的前提下要想无缝的将企业应用于移动设备整合到一起J2ME还是着不可限量的优势的
0 请登录后投票
   发表时间:2006-11-28  
忘记说一点了
目前手机市场一片低迷,这和服务厂商有一定的关系,到目前有很多限制的条条框框,可以看到的应用绝大多数是游戏。还有目前移动百宝箱暂时停止对新游戏的发布,这些都给移动市场带来太大的影响
0 请登录后投票
   发表时间:2006-11-28  
J2ME的implementation在各大手机厂商中fragmentation太大太大了,
引用

即使有一天手机替代了PDA我们也要看到JAVA在企业应用领域的成功,这一点在3G的前提下要想无缝的将企业应用于移动设备整合到一起J2ME还是着不可限量的优势的

这点我不同意。8) 除非你的"企业应用"是面对最广泛的用户群,也就是说consumer-oriented的话,那么J2ME是比较可靠的选择。但如果真正是企业应用,enterprise-grade,那么选择的就是单一的产品平台,因为容易开发和维护。500强的很多case study都是先确定一个平台,统一一款或者几款移动设备来部署,力求做到最佳的用户体验和最简单最稳定的系统整合。用J2ME只能是lowest common denominator,什么设备都可以用,这个用是最基本的勉强应用。
0 请登录后投票
   发表时间:2006-11-28  
javame真的是write once,port anywhere.
归根到底就是sun把规范订的太是宽了,各个厂商实现起来是各不相同,给开发人员,包括手机应用的开发厂商带来了很多的问题.
楼主说得SavaJe倒真是一个不错的选择,如果能有厂商支持的话.但是有谁会放着自己辛苦开发的平台不用,而用一个新的OS呢?或许从小的厂商开始突破,是SavaJe的一个明智选择.
0 请登录后投票
   发表时间:2006-11-28  
J2ME的现状:消费市场:非常强势,但内容太过单一。企业市场=0,且口碑非常差,不能不说说ORACLE,在自己的ORACLE ERP里集成了一个J2ME CLIENT,非但没起到任何好的作用,反倒成为业界的笑话——俺在印钞厂的一个客户有个笑话说,ORACLE ERP那个CLIENT,输入一个数据后,可以回去泡好茶再来看,还不一定完成了。ORACLE实在没有起到什么好作用。
0 请登录后投票
   发表时间:2006-11-28  
要工作了,手机互联网内容提供,说是作服务器软件开发,应该可以解除些手机游戏开发,本来想好好来准备下j2me,以后还可以去做着玩玩,看到上面有点心灰了、、
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics