谷歌将在 Kotlin 中支持 Protocol Buffers 数据格式

简介: 谷歌将在 Kotlin 中支持 Protocol Buffers 数据格式

11 月 1 日,谷歌宣布在 Kotlin 中支持 Protocol Buffers,进一步加深对 Kotlin 这门编程语言的投资。

Protocol Buffers (ProtocolBuffer/ protobuf )是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。


去年,谷歌公布开了对 gRPC 的 Kotlin 支持,这是一种开源远程过程调用 (RPC) 框架,为 Google 的数千个微服务提供支持。谷歌表示,未来将大力投资 Kotlin 语言和生态系统,Android 开发以 Kotlin 优先,后端服务的构建也尽量用 Kotlin,这都归功于他们对Kotlin 这门语言的表现力、安全性和跟 Java 双向互操作性的喜爱 。


现在,开发者可以使用 proto 编译器中新内置的 Kotlin 支持,来生成惯用的 Kotlin 领域特定语言 (DSL)。


例如,这是一个简单的

protocol

buffer 消息,代表掷骰子:

messageDiceSeries {

 messageDiceRoll {

   int32 value = 1;      // value of this roll, e.g. 2..12

   string nickname = 2;  // string nickname, e.g. "snake eyes"

 }

 repeated DiceRoll rolls = 1;

}


它在Java中是这样的:

DiceSeries series = DiceSeries.newBuilder()

   .addRoll(DiceRoll.newBuilder()

       .setValue(5))

   .addRoll(DiceRoll.newBuilder()

       .setValue(20)

       .setNickname("critical hit"))

   .build()

在此版本中,protos 提供了一组表达性的 DSL 构建方法,让这段代码在 Kotlin 中变得更加简洁、优雅,下面是使用新的 Kotlin 原型绑定编写的骰子代码:

val series = diceSeries {

 rolls = listOf(

   diceRoll { value = 5 },

   diceRoll {

     value = 20

     nickname = "critical hit"

   }

 )

}


由此可见,Kotlin 版本使用 Kotlin 类型安全构建器,让代码更加简洁,而且不需要显式调用 build方法。

相关文章
|
XML 存储 安全
谷歌将在 Kotlin 中支持 Protocol Buffers 数据格式
谷歌将在 Kotlin 中支持 Protocol Buffers 数据格式
147 0
|
Java Android开发 UED
Kotlin转向谷歌云平台,因此开发人员可以像在Android上一样喜欢它。Kotlin是Android开发者的宠儿语言。
image 【中文翻译在后面】 Android developers love Kotlin. Google can tell us that 27% of the top 1,000 Android apps are built usin...
1183 0
|
11天前
|
移动开发 Java Android开发
构建高效Android应用:Kotlin协程的实践之路
【4月更文挑战第30天】在移动开发领域,随着用户需求的不断增长和设备性能的持续提升,实现流畅且高效的用户体验已成为开发者的首要任务。针对Android平台,Kotlin协程作为一种新兴的异步编程解决方案,以其轻量级线程管理和简洁的代码逻辑受到广泛关注。本文将深入探讨Kotlin协程的概念、优势以及在实际Android应用中的运用,通过实例演示如何利用协程提升应用性能和响应能力,为开发者提供一条构建更高效Android应用的实践路径。
|
3天前
|
安全 Java Android开发
构建高效Android应用:采用Kotlin进行内存优化的策略
【5月更文挑战第8天】 在移动开发领域,性能优化一直是开发者关注的焦点。特别是对于Android应用而言,合理管理内存资源是确保应用流畅运行的关键因素之一。近年来,Kotlin作为官方推荐的开发语言,以其简洁、安全和互操作性的特点受到开发者青睐。本文将深入探讨利用Kotlin语言特性,通过具体策略对Android应用的内存使用进行优化,旨在帮助开发者提高应用性能,减少内存消耗,避免常见的内存泄漏问题。
7 0
|
4天前
|
Android开发 Kotlin
Kotlin开发Android之基础问题记录
Kotlin开发Android之基础问题记录
15 1
|
4天前
|
移动开发 数据库 Android开发
构建高效Android应用:Kotlin协程的全面应用
【5月更文挑战第7天】 在移动开发领域,性能优化与流畅的用户体验是至关重要的。随着Kotlin语言的流行,其并发神器——协程,已成为提升Android应用性能的重要工具。本文将深入探讨如何在Android项目中利用Kotlin协程进行异步编程、网络请求和数据库操作,以及如何通过协程简化代码结构,增强应用的响应性和稳定性。我们的目标是为开发者提供一套实用的协程使用模式和最佳实践,以便构建更加高效的Android应用。
20 3
|
4天前
|
移动开发 Java Android开发
Android应用开发:Kotlin语言的优势与实践
【5月更文挑战第7天】 在移动开发的世界中,Android平台的Kotlin语言以其高效、简洁的语法和强大的功能吸引了众多开发者。本文将深入探讨Kotlin语言的核心优势,并通过实际案例展示如何在Android应用开发中有效地运用这一现代编程语言。我们将从语言特性出发,逐步分析其在提升开发效率、改善代码质量以及增强应用性能方面的具体表现,为读者提供一个全面而细致的Kotlin应用开发指南。
|
4天前
|
移动开发 数据库 Android开发
构建高效Android应用:Kotlin与协程的完美结合
【5月更文挑战第7天】 在移动开发领域,性能优化和资源管理始终是核心议题。随着Kotlin语言的普及,其提供的协程特性为Android开发者带来了异步编程的新范式。本文将深入探讨如何通过Kotlin协程来优化Android应用的性能,实现流畅的用户体验,并减少资源消耗。我们将分析协程的核心概念,并通过实际案例演示其在Android开发中的应用场景和优势。
|
7天前
|
移动开发 前端开发 Android开发
构建高效Android应用:探究Kotlin协程的优势
【5月更文挑战第4天】 在移动开发领域,尤其是对于Android开发者而言,编写响应迅速且高效的应用程序至关重要。Kotlin作为一种现代的编程语言,其提供的协程特性为异步编程带来了革命性的改变。本文将深入探讨Kotlin协程在Android开发中的应用优势,并通过实例代码展示如何利用协程简化异步任务处理,提高应用性能和用户体验。