Meta 旗下 Android 应用改用 Kotlin 编程语言 ,称比 Java 更好用
10 月 29 日消息,Facebook 的母公司 Meta 透露其开发 Android 应用使用的语言从 Java 迁移到了 Kotlin,这是一种更年轻的编程语言,也依赖于 Java 虚拟机(JVM)。
Kotlin 由软件工具制造商 JetBrains 创建,于 2011 年首次亮相,2016 年推出了 1.0 版本。次年,Kotlin 被谷歌采纳为安卓开发的第一类(支持)语言,并被置于自己的基金会管理之下,由 JetBrains 和谷歌资助。
在这之前,大多数安卓应用都是用 Java 编写的。2019 年 5 月,在其开发者大会上,谷歌开始鼓励安卓开发者青睐 Kotlin 而不是 Java。当年年底,谷歌表示,在排名前 1000 位的安卓应用中,有 60% 包含 Kotlin 代码。
IT之家了解到,谷歌推荐使用 Kotlin 的理由是,它更简洁、更安全,支持结构化并发,使异步代码更容易,并且可以与 Java 互操作。不过这可能也与 Java 管理人甲骨文有关,甲骨文曾花十多年时间就 Android 中使用的 Java API 向谷歌提出侵权索赔(最终失败)。
Meta 似乎也对 Kotlin 感兴趣,Facebook 软件工程师 Omer Strulovich 称,他们已经在用 Kotlin 替换其几个流行的 Android 应用中的 Java 代码,这些应用包括 Facebook、Instagram、Messenger、Portal 和 Quest。
Strulovich 说:“Kotlin 被普遍认为是一种比 Java 更好的语言,在每年的 Stack Overflow 开发者调查中,Kotlin 的好评率高于 Java,”他指出,Kotlin 已经成为 Android 开发的流行语言,“因此,我们将 Meta 的 Android 开发转向 Kotlin 是合理的。”
但是,除了在安卓生态系统中的受欢迎程度,Strulovich 承认,在更广泛的市场中,其流行度仍然远逊于 Java,Java 是世界第二大或第三大流行的语言。
Kotlin 相对于 Java 的优势包括:内置为空性(nullability)处理,支持内联函数和 lambda 表达式,代码更短,能定义 DSL(Domain-specific language)。缺点是需要在很长时间内面对混合代码库,更难维护,而且 Kotlin 存在的时间比 Java 短,拥有一套不太成熟的工具。
Strulovich 说:“今天,我们的 Facebook、Messenger 和 Instagram 的安卓应用都有超过 100 万行的 Kotlin 代码,而且转换率还在增加。我们的安卓代码库总共有超过 1000 万行的 Kotlin 代码。”
Strulovich 没有说 Meta 是什么时候开始这种转变的,也没有说其 Android 应用代码的转换比例是多少。
Strulovich 还称:“平均而言,我们已经看到这次迁移的代码行数减少了 11%。并且没有出现性能倒退,所以至少转换后的应用程序保持了它们原有的性能。”
Strulovich 说,Meta 的迁移正在进行,并在加速,但他同时表示:“Kotlin 仍然缺乏一些我们在与 Java 合作中已经习惯的工具和优化。但我们正在努力缩小这些差距。随着我们取得的进展和这些工具和库的成熟,我们也将努力把它们放回给社区。”
您可能也感兴趣:
官方微博/微信

每日头条、业界资讯、热点资讯、八卦爆料,全天跟踪微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb官方微博期待您的关注。

想在手机上看科技资讯和科技八卦吗?
想第一时间看独家爆料和深度报道吗?
请关注TechWeb官方微信公众帐号:
1.用手机扫左侧二维码;
2.在添加朋友里,搜索关注TechWeb。
为您推荐
理想汽车第一个百万辆量产车完成时间大概率会短于特斯拉
年轻人的第一台NAS该如何入手?(三)如何用Windows系统搭建NAS?
Meta正式发布人工智能聊天机器人Meta AI
分析师称iPhone 16系列将搭载A18、A18 Pro芯片 命名方式再度调整
ChatGPT再升级:终于可浏览互联网 不再局限于两年前旧数据
消息称iPhone SE 4在苹果内部代号Ghost 设计和硬件配置都将升级
法拉第未来计划通过发行股票筹集最多9000万美元资金
11999元起!华为Mate60 RS 非凡大师今日首销:直板手机旗舰之王
分析师普遍预计特斯拉Q3交付46.2万辆电动汽车 不及Q2
更多
- 理想汽车第一个百万辆量产车完成时间大概率会短于特斯拉
- iPhone 15系列初期所需显示屏主要由三星供应 京东方有望年底开始供货
- 投行分析师下调特斯拉三季度交付量预期 由45.5万辆降至44万辆
- Meta新一代VR头显Quest 3开启预订 起售价为499美元
- Meta正式发布人工智能聊天机器人Meta AI
- 分析师:苹果明年对3纳米制程工艺需求将低于预期
- 微软前首席产品官帕奈将担任亚马逊设备和服务业务负责人
- 分析师称iPhone 16系列将搭载A18、A18 Pro芯片 命名方式再度调整
- ChatGPT再升级:终于可浏览互联网 不再局限于两年前旧数据
- 消息称iPhone SE 4在苹果内部代号Ghost 设计和硬件配置都将升级