您的位置:首页 > 其它

对J2ME一些开发问题解决方案的想法

2007-03-28 10:16 369 查看
首先声明,我J2ME是菜,主要是搞服务器端东东的,这个问题的产生是因为要参加挑战杯,我同学提出的,他J2ME开发相当有经验.总的来说,我大概分析有以下这几个方面.

第一,手机性能有瓶颈,我同学告诉我,他写程序很容易把重量级的类产生多个实例,浪费性能,虽然是认为原因,可以避免,但我想,就好象C++的析构函数一样,为什么不能让机器去做呢,人总会犯错误的嘛...

第二,虽然说J2ME理论上说是个统一的标准,但各个厂商实现有所不同,不同手机的显示效果差距很大,一个软件写出来虽然能run any where但是真正能着舒服的却没几个地方,我们必须针对不同的手机进行修改,那为什么不同做一个统一的外观?当然,用低级描绘当然会导致性能的下降,但是我同学告诉我,这样所占的内存反而小了,我俩也搞不懂为什么,不过,我想如果能用JNI做的话肯定性能就不操心了,虽然短期不可能,而且也不知道可行不...

第三,手机的开发没有一些常用的中间件,这就导致手机开发复用性很差,虽然中间件对手机来说是个很难接受的性能的消耗,但是如果针对手机,简化中间件的结构,用类似微内核的思想,做出最简单的功能,外面在加上可选的安全层,启动控制层等等以适应于不同性能手机的话我想也应该值得一试...

第四,手机的网络连接虽然有了很棒的封装,但是手机的信道容量有限,上传文件一次不能超过1.2K是个大问题,而且连接不稳定,所以与PC平台的交互问题没有根本解决,这样手机就永远无法成为一个与PC平台同层面的娱乐办公工具...

主要是基于以上几点原因,我设想,使用插件体系结构来解决这个问题,不过这里跟PC领域的插件体系结构的目的可是不同的,PC领域是主要为了软件的复用,开发的速度.而移动设备上,我更希望它首先可以为我们提供一个简单统一高效的开发模型,其次才是程序的复用.

另外,移动设备的OSGI框架与我的目的相差太远----厂商的实现不统一,而且绝大部分没有实现,虽然OSGI在国外很受重视,但是希望它统一所有的电子设备我想太难了,不是短时间可能的.手机端的OSGI实现更是屈指可数,只有少的可怜的手机有,而且设想下,OSGI CORE所提供的6层结构,安全层的系统消耗,基于反射的动态加载,使得正宗OSGI对手机性能的要求相当客观,就我来看,至少在国内是不可行的.

所以我设想,使用一个类似OSGI的简单的插件框架,基于J2ME,使用几个简单的类管理插件,使用类似JDBC和SWT的实现方法,将服务的应用注册到environment的静态hashmap中,然后用一张引用表查看对不同服务的引用情况,服务使用单例和享元模式保证不做重复的开销,精简掉OSGI的startlevel层和security层,师他们成为一个可选层(当然Security本身可选),这就是我的大体思路,今天就开始动工了.

我的QQ是41572359,希望有经验的人可以给我一些建议和批评,我对J2ME确实没什么经验,而且知道老师完全帮不上忙.另外我还有OSGI框架CORE部分规范的原代码分析,不过没整理.equinox的分析还没完成,有兴趣的可以发信息到我邮箱,我会发过去.还有就是全国各位研究OSGI的大虾指点指点小弟啊...自己奋斗好辛苦饿~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐