Java 基于Kotlin的应用程序将在Android P上获得性能提升意味着什么
在过去的几个月里,我在很多地方看到了安卓p将提高基于Kotlin的应用程序性能的信息(例如和) 在Android官方博客上,Dave Burke在帖子中用几句话描述了这一点: Kotlin是Android上的一流语言,如果你还没有尝试过,你应该试试!我们对Android中的Kotlin做出了持久的承诺,并继续扩大支持,包括优化Kotlin代码的性能。在P中,您将看到这项工作的第一个结果——我们改进了一些编译器优化,特别是那些针对循环的优化,以获得更好的性能。我们还将继续与JetBrains合作,优化Kotlin生成的代码。只要保持Android Studio的Kotlin插件处于最新状态,您就可以获得所有最新的Kotlin性能改进 这是否意味着Kotlin可以比Java更优化?Java 基于Kotlin的应用程序将在Android P上获得性能提升意味着什么,java,android,performance,kotlin,Java,Android,Performance,Kotlin,在过去的几个月里,我在很多地方看到了安卓p将提高基于Kotlin的应用程序性能的信息(例如和) 在Android官方博客上,Dave Burke在帖子中用几句话描述了这一点: Kotlin是Android上的一流语言,如果你还没有尝试过,你应该试试!我们对Android中的Kotlin做出了持久的承诺,并继续扩大支持,包括优化Kotlin代码的性能。在P中,您将看到这项工作的第一个结果——我们改进了一些编译器优化,特别是那些针对循环的优化,以获得更好的性能。我们还将继续与JetBrains合作,
kotlinc
与javac
一起产生Java字节码(正如Jake-Wharton解释的那样),这不是真的吗。或者这是德克瑟将要解决的问题?但是,它不适用于所有Android版本吗?Dave是否意味着开发人员优化Kotlin代码的新工具将与Android P一起发布
首先,是否可以区分
java字节码来自java
和Kotlin
?或者这是否意味着ART将从Kotlin
以不同的方式运行java字节码?r8
工具正在获得检测Kotlin编译器生成的特定字节码模式的能力,并将其转换为更有效的Dalvik字节码。这并不意味着Kotlin可以比Java更优化,只是Kotlin产生的字节码结构有所不同
新的r8工具还可以用于编译针对早期Android版本的应用程序,并获得相同的性能提升
本播客提供了一些关于r8及其优化的额外背景信息: