POPPUR爱换

标题: android系统上的应用程序都是用JAVA编的? [打印本页]

作者: needfire    时间: 2010-5-8 14:41
标题: android系统上的应用程序都是用JAVA编的?
从网上查了些资料,android的应用程序都是java编写的而不是C,android只不过是Linux上跑了个java环境,这和xp下跑虚拟机有啥区别?java的运行效率......
作者: luckjohn    时间: 2010-5-8 16:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: yellowb    时间: 2010-5-8 20:07
1.java效率就一定不行吗?这是多少年前教科书上的观点了
2.也可以用C写android平台的程序,如果对效率要求很高的话,要下一个google android NDK
作者: 卟呦    时间: 2010-5-8 21:11
本帖最后由 卟呦 于 2010-5-8 21:14 编辑

JAVA的效率远不如C/C++,这是事实
android的APP层代码必须要用JAVA编写,C/C++只能通过NDK实现方法(SO库),最终还是要JAVA通过JNI调用
作者: needfire    时间: 2010-5-8 21:18
本来偏向android,现在又想WM了。
作者: bww    时间: 2010-5-9 13:19
WM还是等WM7吧
作者: MYM    时间: 2010-5-10 16:36
JAVA的效率感觉真的不行啊

公司用的是甲骨文的数据库,用的是JAVA,那个慢啊.......
还容易死机....
作者: k0838    时间: 2010-5-10 18:19
提示: 作者被禁止或删除 内容自动屏蔽
作者: zhuangwf    时间: 2010-5-10 19:11
目前 Android 应用程序(UI 部分)是必须用 java 编写的,底层的某些功能(非 UI 部分)可以用 C/C++ 写然后在 java 中通过 JNI 去调用。

但 Android 的虚拟机实现机理不同于 Sun 的 java 虚拟机,应用程序的实际运行效率远高于 Sun 的 java,

而且新近版本的 Android 已经引入了 JIT,使应用程序 java 代码运行效率有很大提高。
作者: 沙漠之狐    时间: 2010-5-11 00:25
好用就行~~~
作者: MYM    时间: 2010-5-11 09:13
回复 8# k0838


    我没说甲骨文不行
   是JAVA不行,效率低下,可以吗??
作者: 66666    时间: 2010-5-16 22:14
android目前软件执行速度还可以,没觉得有什么效率低下的问题
作者: zmfeng    时间: 2010-5-20 21:18
Eclipse,用Java开发的(除了SWT),觉得比起VisualStudio2005快多了,你说Java效率行吗?还有,Java的前途很不错,在GWT下,可以用Java代替JavaScript.....,还有Java的Bitorrent客户端Azura......
当然,C的效率比起Java来高很多,这是不争的事实,这个我不否认。
作者: xeon-pan    时间: 2010-5-21 11:54
java执行效率比c#都慢几倍。。别说c了,不过开发难度就不一样了

微软不争气啊唉,搞个wm搞成这个鸟样
作者: lislee2001    时间: 2010-5-23 09:58
提示: 作者被禁止或删除 内容自动屏蔽
作者: deyu260    时间: 2010-5-23 10:47
原来是个java啊
作者: Elvis    时间: 2010-5-23 23:58
马上2.2出来的基于jit编译环境的编译效率就和C差不多了。值得期待
作者: angeldiy    时间: 2010-5-24 08:27
。。。怪不得 高分辨率3d软件那么少
作者: 66666    时间: 2010-5-24 09:28
马上2.2出来的基于jit编译环境的编译效率就和C差不多了。值得期待
Elvis 发表于 2010-5-23 23:58



   
只能说接近而已,总体效率至少还要差30%以上
作者: 66666    时间: 2010-5-24 09:30
。。。怪不得 高分辨率3d软件那么少
angeldiy 发表于 2010-5-24 08:27



   
android手机配置乱七八糟,80%都没有独立3D加速单元,剩下20%机器还有不少驱动有问题3D加速成摆设。高分辨率3d软件做出来也没几个机器能用。

在这点上苹果就强太多了,这也是封闭软硬件系统的一大优势。
作者: ht52    时间: 2010-5-24 09:48
看来还是各有优势啊。。。
作者: xeon-pan    时间: 2010-5-24 11:20
只能说接近而已,总体效率至少还要差30%以上
66666 发表于 2010-5-24 09:28



    30%的话只能说很强了。在pc平台上,j2ee 最新版和 .net 3.5 运算效率差了差不多4倍。。
作者: Warslash    时间: 2010-5-24 18:41
本帖最后由 Warslash 于 2010-5-24 18:43 编辑

JAVA的效率没办法和C比
不过ANDROID上的JAVA虚拟机效率要远远超出以前的J2ME和J2EE**虚拟机。。。

加上2.2的JIT,相信不会让我们失望的。
当然,极端追求效率的,还是绕道用C吧~~
作者: 76752309    时间: 2010-5-30 21:46
JAVA很强大,特别是在LINUX下,另外目前来说Oracle是目前最**的数据库了,虽然执行效率比C要慢,但是JAVA很稳定、安全
作者: xeon-pan    时间: 2010-5-31 08:58
JAVA很强大,特别是在LINUX下,另外目前来说Oracle是目前最**的数据库了,虽然执行效率比C要慢,但是JAVA很 ...
76752309 发表于 2010-5-30 21:46



    Oracle不是用JAVA开发的,只能说,JAVA强Oracle也有功劳。另外,手机上也不会有Oracle 。还有,Android是Linux上的用JAVA做的系统。android的结构里面,最底层是linux,上面的层就都是基于java的了
作者: liubo_110055    时间: 2010-5-31 10:45
不可能吧,底层实现不了的
作者: 76752309    时间: 2010-5-31 11:21
回复 25# xeon-pan
我有说Oracle是SUN开发的吗?莫名其妙
作者: xeon-pan    时间: 2010-5-31 11:31
回复  xeon-pan
我有说Oracle是SUN开发的吗?莫名其妙
76752309 发表于 2010-5-31 11:21



    我只是不明白你在android上扯甲骨文干嘛而已
作者: 76752309    时间: 2010-5-31 11:39
回复 28# xeon-pan


    你看7楼
作者: haotia    时间: 2010-5-31 16:47
路过帮顶
作者: 687love    时间: 2010-6-2 23:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: alleny    时间: 2010-6-5 22:10
JAVA开发有很多好处,不见效率低一点就觉得他很慢
作者: taylor1984    时间: 2010-6-11 16:49
JAVA很不错了
而且实际上Android的速度、UI这是有目共睹的
3D软件,MS玩3D游戏貌似是很强大的
作者: haotia    时间: 2010-8-25 12:32
好用就行~~~
作者: zz19880329    时间: 2010-8-25 23:02
在应用区讨论开发。。
作者: rickerlian    时间: 2010-8-28 14:13
android的vm是基于寄存器的vm,调优相对与普通的vm来说要方便很多,只不过寄存器vm实现比较复杂而已,所以现在大多数vm都不是寄存器vm,例如典型的jvm、clr都不是寄存器vm。
话说回来,android上的dalvik vm已经不能说是jvm了,因为javac编出来的字节码是不能直接在dvm上运行,或者说,dvm和jvm使用不一样的ISA。
更多资讯可参考http://en.wikipedia.org/wiki/Dalvik_virtual_machine
作者: daceaki    时间: 2010-9-1 00:08
很深奥,但感觉android的运行效率不算很高...
作者: babysor    时间: 2010-9-1 00:37
各种语言都可以吧~
作者: xeon-pan    时间: 2010-9-1 09:00
现在出了新包,支持使用c语言与java混合了。
另外,iphone的ios虽然是C,但是那实际上是object-c  貌似,和java,.net 一样,是托管的。中间经过一层VM吧
作者: maomaobear    时间: 2010-9-3 16:48
已经做了很大的优化。

极端追求性能的,肯定还是觉得慢
作者: niu2niu    时间: 2010-9-6 14:14
用习惯了,什么都无所谓




欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4