Kotlinx.Serialization跨平台多格式序列化库

Kotlin 项目的跨平台序列化库,Kotlinx.Serialization蛮适合你在多端同步数据、做配置持久化这些场景用的。

编译器插件的自动代码生成,挺像偷懒神器的,关键还不影响性能——不靠反射,类型检查也更稳。适合移动端、IoT 这种对资源卡得比较紧的环境。

多格式支持是亮点,JSON 自然不用说,CBOR、BSON、YAML 也都能上,还能自定义格式。项目里接口多、通信格式杂,直接一个库全搞定,爽!

@Serializable@SerialName这些注解用起来也直观,比如字段名和接口不一样,改个名字就完事儿,逻辑清晰、代码不绕。

多平台那块也蛮强的,Android、后端、甚至 Kotlin JS 都能用一套模型文件。你要是搞 KMP(Kotlin Multiplatform),这个库可以说是标配。

性能也别小看,序列化这活交给它,编译期生成访问器代码,比起反射那种跑起来才的方式,效率高不少。想想你序列化一个大对象列表,还得频繁转换格式,这差距就看出来了。

如果你刚接触或者对访问者模式不熟,可以顺带看看这个访问者模式,会更好理解它的实现原理。

,日常用 JSON 做前后端通信?或者你在搞多平台共享代码?Kotlinx.Serialization真的可以放进工具箱里试试看。

zip
kotlinx.serialization,Kotlin跨平台/多格式序列化.zip 预估大小:527个文件
file
.gitignore 146B
file
settings.gradle 1KB
file
build.gradle 5KB
file
settings.gradle 959B
file
build.gradle 3KB
file
gradlew.bat 2KB
file
build.gradle 886B
file
build.gradle 5KB
file
settings.gradle 2KB
file
build.gradle 3KB
file
gradlew.bat 2KB
file
.gitignore 4B
file
build.gradle 2KB
file
build.gradle 1KB
file
gradlew.bat 2KB
file
bintray.gradle 908B
file
publishing.gradle 4KB
file
compilerVersion.gradle 896B
file
mavenMetadata.gradle 958B
file
build.gradle 1KB
zip 文件大小:599.16KB