最新 Android Studio 2.2 Preview 3 的更新介绍:
With Android Studio 2.2, you may have noticed the larger download sizes than previous versions of Android Studio; this is because we now bundle a build of OpenJDK with the IDE to address various font rendering and stability issues.
1
DoraJDJ 2016-06-12 10:29:30 +08:00
this is because we now bundle a build of OpenJDK with the IDE to address various font rendering and stability issues.
它们内带 OpenJDK 的原因只是解决字体渲染和稳定性问题吧,跟 JB 家的其他东西一样 |
2
Neveroldmilk 2016-06-12 10:30:45 +08:00
那最好,之前用 OpenJDK 开发 Android ,搞得要死要活的。
|
3
notgod 2016-06-12 10:39:04 +08:00
谷歌应该使用 go 重构
然后 go 语言 瞬间变的比 java 还流行 然后..... |
7
9hills 2016-06-12 11:42:28 +08:00
this is because we now bundle a build of OpenJDK with the IDE to address various font rendering and stability issues
是解决 Android Stdio 这个 IDE 本身的问题。。。。 |
8
21grams 2016-06-12 11:51:24 +08:00
android studio 是用 java 做的?
|
9
Neveroldmilk 2016-06-12 11:53:50 +08:00
嗯,不内置 JDK , linux 上面关联问题一堆一堆的。
|
10
Neveroldmilk 2016-06-12 11:54:04 +08:00
@21grams 你不知道么?
|
11
Khlieb 2016-06-12 12:03:05 +08:00 via Android
上次谷歌好像就是因为 JDK 的问题被甲骨文告了
|
12
plqws 2016-06-12 12:15:15 +08:00
如果只是纯粹地为了解决一个字体渲染什么的问题, Jetbrains 全家桶应该也会同时有这些更新吧。
|
13
bk201 2016-06-12 13:48:05 +08:00
楼上比 java 还流行简直脑洞大,java 又不是靠安卓流行的.
|
14
DT27 2016-06-12 14:18:36 +08:00
赶紧出个新语言把 java 淘汰吧!
|
15
kaneg 2016-06-12 14:26:12 +08:00
@21grams Android Studio 就是 Google 在 Intellij IDEA Community 版本的基础上增加了开发 Android 的插件。做 Android 的人应该对 Intellij 的东西不陌生吧
|
16
Neveroldmilk 2016-06-12 14:38:23 +08:00
@plqws Jetbrains 又没跟 Oracle 闹翻,没必要捆绑 Oracle java 全家桶。
|
17
Neveroldmilk 2016-06-12 14:39:21 +08:00
@bk201 你这话可知说对了一半,这两年 java 大热的一个重要原因就是 Android 。如果 android 全线迁移到比如 C++上, java 开发人员要少一大批。
|
18
jamiesun 2016-06-12 14:46:37 +08:00
@Neveroldmilk google 选 java 的原因就是因为开发者多,在没有 android 之前, java 已经在服务端市场俯瞰众生了。 android 得了 java 的红利, android 也促进 java 的繁荣进一步拉大与其他语言的距离。 android 离开 java ,只会减少 android 开发者,不会撼动 java 的地位。
|
19
Neveroldmilk 2016-06-12 16:58:29 +08:00
@jamiesun 没觉得 Android 离开 Java 活不下去, Android 只是用了最基本的 java 语法,并且体系架构和 J2SE 、 J2EE 什么的架构完全是两套体系,很多包都不兼容。再说了, Android 的 app 性能受拖累的一个重要原因就是虚拟机。我觉得 Android 早点拥抱 C++只会对 google 有好处,毕竟现在手机性能还没到浪费代码执行效率的地步。
|
20
SourceMan 2016-06-12 17:02:23 +08:00 via iPhone
又吵起来了吗
|
21
tobyxdd 2016-06-12 17:11:18 +08:00 via Android
@plqws 那也未必 毕竟 Android studio 是 google 自己 fork 出来的 jb 没必要同步
|
22
tczzjin 2016-06-12 17:12:24 +08:00
都不考虑 c++开发成本和学习成本吗...
|
23
2225377fjs 2016-06-12 17:25:41 +08:00
@Neveroldmilk 话说就真的觉得 C++就比 Java 快啊。。? Java 语言执行速度本质上和 C++是同一个量级的,加上 Java 有很多顶级大神写的库(尤其是 Concurrent 库), C++以及其他语言可是没有的额。。这些加起来然后用来完成相同的逻辑功能, C++还不一定有 Java 快呢。。 Java 这方面只不过是 GC 比较让人诟病而已,说到 GC ,任何 GC 类型的语言,都只不过是在工业级层面上来走 Java 的老路而已,跟着 Java 学,就开始说超越 Java 了,也是醉了(比如 Go 啥的)。
|
24
2225377fjs 2016-06-12 17:30:34 +08:00
@Neveroldmilk IOS 之所以在体验上秒了大多数市面上安卓机器,更大程度上是因为 Apple 家的硬件强大,而不是语言对 Java 的优势。。。做游戏的同志对这方面应该能有比较强的感受。安卓上各种 4,8,10,12 核就 TM 扯淡的,被 Apple 家的处理器吊打。
|
25
xuhaoyangx 2016-06-12 18:04:31 +08:00
一些人真的是脑洞打开, Block 掉为好。 C++作为 Android 开发,完全没必要,做 APP 开发个人觉得语言要好用上手简单为好。
|
26
Neveroldmilk 2016-06-12 18:13:07 +08:00
@tczzjin
@2225377fjs google 自己也是出于摇摆状态,否则就不会弄出来个半吊子 NDK+JNI 的别扭 C++开发模式了。我是 C++出身,对于要用 JNI 这种多此一举的方式非常反感。 |
27
Neveroldmilk 2016-06-12 18:14:04 +08:00
@xuhaoyangx 没用过 NDK 开发别信口胡说好么?如果 google 想提供纯粹的 Java 开发模式,弄出 JNI 这种两头不讨好的 C++调用方式干什么?
|
28
zhicheng 2016-06-12 18:15:37 +08:00
Android 不可能使用编译型编程语言,这不是市场问题,也不是流行不流行的问题,就连微软这个操作系统巨头也解决不了不同 ISA 的二进制兼容。 iOS 的硬件和软件发布都控制在苹果手里,所以用什么编程语言不重要。
|
29
Neveroldmilk 2016-06-12 18:18:26 +08:00
@zhicheng 那你给解释一下 NDK+JNI 是怎么回事好么?
|
30
afpro 2016-06-12 18:23:04 +08:00
@Neveroldmilk 这有什么好解释的 JNI 是 JAVA 的一部分 很多库(lua 、游戏引擎)等依赖这个功能 所以 google 搞了 NDK 简化交叉编译 只能说你想多了骚年……
|
31
zhicheng 2016-06-12 18:23:16 +08:00
@Neveroldmilk 不是所有的程序都是用 NDK 写的。 Android 只是给了一个机制。如果你用 NDK 写,要么增加应用体积,要么降低可移植性。
|
32
nicevar 2016-06-12 18:26:01 +08:00
不要听各种大神告诉你 java 和 c++速度差不多的,这种话条件限制太多,要是遇到过 java 解决不了的性能问题只能搬出 c++来处理情况你就明白了
google 短期内不会用其他语言来代替的,多大的代价,要启用新语言至少要并存很长一段时间,就像 iOS 的 swift 跟 oc 一样 |
33
lightening 2016-06-12 18:26:41 +08:00
@2225377fjs Java 做 UI 有个问题就是 GC 的触发是不可预测的,然后 GC 时要 stop the world , UI 就会卡顿一下。
ObjC 以前搞了 GC ,后来看着不行,又回到 ARC 了。 Swift 设计的时候也考虑了这个问题,坚决使用 ARC 。 |
34
xuhaoyangx 2016-06-12 18:33:30 +08:00
@Neveroldmilk
请问我说了什么让你这么生气 。我不就说了开发 APP 的语言尽量好用容易上手么, C++作为主要开发语言我觉得当然没必要,开发难长麻烦。当然我用过的 NDK 也就做视频开发时用过。 |
35
jason19659 2016-06-12 18:35:51 +08:00 1
某些程序员,不知道比谷歌高到哪里去了
|
36
wuxqing 2016-06-12 18:45:31 +08:00
简单测试的, java 确实不比 C++慢。但是,实际上还是差距很大的。我们有一套 java 写的地图渲染引擎,实在太慢,然后花了 2 周( 2 人)把 java 代码简单改写成 c++,两者语法很像,基本上是简单翻译。速度提升了 10 倍以上。
|
37
2225377fjs 2016-06-12 19:39:56 +08:00
@wuxqing 那是慢在 Java 的系统调用以及与外部系统的集成上,尤其是与非 Java 环境的外部系统集成,纯粹实现算法,业务逻辑, C++执行速度并没有优势。
@lightening 3,4 百 M 级别的程序,基本不用考虑 GC 问题的,如果安卓环境的硬件水平能达到 Apple 家的水准,安卓体验也是可以上去不少的,不过这个难度比较大,最近几个项目对比发现,安卓生态环境的硬件水平跟 Apple 的比起来真是弱的掉渣了,差距不是一点点。 |
38
lightening 2016-06-12 19:54:41 +08:00
@2225377fjs 可是 Android app UI 的主线程就是有这个 GC 触发导致 UI 短暂卡顿的问题。除了做 UI , GC 在其他情况往往是不造成问题的。 Chris Lattner (Swift 的主要设计者) 就专门说过这个问题, Java 式 GC 的主要问题就是在 UI 响应上的 unpredictable 。
|
39
wuxqing 2016-06-12 20:00:06 +08:00
@2225377fjs 地图渲染引擎有多少系统调用?基本上都是算法和业务逻辑
|
40
edgar 2016-06-12 20:46:46 +08:00
JetBrains 在 Linux 和 Mac OS X 下前段时间开始就自带 JRE 了。 https://intellij-support.jetbrains.com/hc/en-us/articles/206544879
|
41
shui14 2016-06-12 21:17:56 +08:00
go for andr 手动斜眼
|
44
Wakeupzombie 2016-06-12 22:07:48 +08:00
@notgod 想得美
|
45
Gcourage 2016-06-12 22:19:40 +08:00 via iPhone
openjdk 与 Oracle 的, Java 差距大吗?性能还是什么考量,导致前期是用 Oracle
|
46
zhicheng 2016-06-12 22:33:33 +08:00
@tyfulcrum “技术上” 我也可以用 QEMU 执行不支持的 ISA 代码,实现一个 JIT 引擎把代码转成目标机器码。你猜,为什么正规军没这么做呢?
|
47
tyfulcrum 2016-06-13 04:09:06 +08:00 via iPhone
@zhicheng Tizen 又不是玩具系统,商业原因导致占有率低罢了。原因也许是 Android 刚开始开发的时候 llvm 和 clang 还不成熟,或者也有 Dan Bornstin 自己技术习惯的因素?毕竟他给自己的标签是虚拟机专家(Virtual Machinist)。
|
48
youxiachai 2016-06-13 09:10:52 +08:00
@Gcourage lz 是搞错了..你也别带错节奏啊.........
google 搞 open jdk 已经是前几个版本搞 jack 已经开始了..不然怎么支持 java 8 的一些特性.. lz 是完全不懂这个..看个简介..就想歪了.. |
49
Makoshan OP OpenJDK 采用 GPL V2 协议,允许在商业上使用,而且 Google 也是 OpenJDK 的重要贡献者,这次直接内置到 IDE 意图更加明显,是要试图避免 Oracle 的诉讼。 Go 和 React Natice 不是都已经支持 Android 开发,自己试试就知道坑有多多,生态和工具链健全才是吸引开发者的点 ,Swift 再好,大部分 iOS 开发者还不是继续用 OC
|
50
kideny 2016-06-13 10:00:36 +08:00
安卓和 java 结婚 7 年,吵着要离婚。安卓的岳父 oracle 说:“离婚可以,你先陪我女儿的青春损失费”。安卓想在离婚前,先找好打炮的对象。结果 java 还是每天晚上让安卓爽,安卓犹豫不决。这婚,是离还是不离?
|
52
hooluupog 2016-06-13 10:39:00 +08:00
这回帖里错误的观点和自己脑补出的东西很多,不知道为啥都热衷于 yy 这种事情。
|
53
chocotan 2016-06-13 18:00:49 +08:00
oracle 诉讼的好像是自己实现了一套不兼容的 jvm 吧,就跟当年的微软一样
openjdk 也是 oracle 家的,可以去 openjdk 官网上看 jdk9 的开发进度:) 前一阵子搜过 openjdk 和 oraclejdk 的不同,个人得出的结论是 oraclejdk 比 openjdk 多一些闭源的工具,其它没区别 |