《 Kotlin 跨平台开发实战 》
- 选题分类:科普读物 计算机理论 操作系统 软件工程
- 原版语种:俄语(可提供图书翻译服务)
- 原出版地:俄罗斯
- 出版日期:2025年09月
- 页数:384页
- 图书定价:(不详)
- 开本:165mm×230mm
- 内文印刷:(不详)
- 字数:(不详)
申请样书样章
您正在通过本网站在线提交出版评估申请。
若您的申请获得通过,您将可以在线对本作品的电子样书进行查看。
特别提示:
1、一旦提交本申请,则表示您承诺自愿通过成都锐拓传媒广告有限公司申请上述图书的中文版权,并承诺在申请日起18个月内,不会向任何第三方(包括但不限于图书作者、出版方及其他代理商等)申请或联系上述图书的中文简体版权。否则,我公司有权关闭您在本网站的使用权限,且不再与您进行任何业务合作,并有权要求您支付不低于人民币5000元/本的违约金,或将上述违约金直接从您的账户余额中予以扣除。
2、您通过本功能在线申请样书样章而支付的费用仅为样书样章在线查阅的费用,不代表我公司对上述图书的中文版权授权事宜向您作出任何承诺。除非发生我公司无法向您提交样书或样章的情况,否则无论最终是否与您达成中文版权的交易合作,该费用概不退还。
申请翻译样章
您正在通过本网站在线提交翻译样章申请。
若您的申请获得通过,您将可以在线对本作品的翻译样章进行查看。
特别提示:
1、一旦提交本申请,则表示您承诺自愿通过成都锐拓传媒广告有限公司申请上述图书的中文版权,并承诺在申请日起18个月内,不会向任何第三方(包括但不限于图书作者、出版方及其他代理商等)申请或联系上述图书的中文简体版权。否则,我公司有权关闭您在本网站的使用权限,且不再与您进行任何业务合作,并有权要求您支付不低于人民币5000元/本的违约金,或将上述违约金直接从您的账户余额中予以扣除。
2、您通过本功能在线申请样书样章而支付的费用仅为样书样章在线查阅的费用,不代表我公司对上述图书的中文版权授权事宜向您作出任何承诺。除非发生我公司无法向您提交样书或样章的情况,否则无论最终是否与您达成中文版权的交易合作,该费用概不退还。
版权推荐
★ 本书是科特林多平台的系统性实战指南。科特林多平台由杰特布瑞恩斯主导,谷歌官方支持,允许开发者用科特林编写共享代码,同时保留各平台的原生用户界面与性能。
★ 从零创建科特林多平台项目到迁移现有原生应用,涵盖共享模块、多线程与协程、克托尔网络层、数据存储与鲁姆数据库、组合多平台跨平台用户界面,以及科特斯特测试等核心技术栈。
★ 深入讲解期望与实际机制、科特林符号处理编译器插件与人工智能辅助开发,手把手教你创建和发布自己的科特林多平台库,并附科特林与斯威夫特语言速查表,助你自信穿梭于两个生态。
内容简介
特别注意在跨平台应用中使用原生和通用代码,使用期望/实际代码,使用科特斯特进行测试,借助科特林符号处理、编译器插件和人工智能助手优化开发。你将学习如何创建和发布自己的科特林多平台库,同时获取科特林和斯威夫特的简短指南,以自信地同时浏览这两个生态系统。
作者介绍
俄罗斯及独联体地区极具声望的资深移动端跨平台架构师、高级安卓与苹果移动操作系统核心开发者以及信息技术专栏作家。她长期深耕于现代移动端的高并发架构设计、跨平台动态化流转以及喷气式组合界面框架等前沿技术的商业化落地,曾主导过多个大型跨国金融与社交软件的底层重构。卡尔波娃以其在代码托管平台和技术社区里一针见血、纯干货的代码拆解风格而闻名,是目前东欧科特林多平台技术应用领域公认的先锋意见领袖。
图书目录
出版者的话 8
关于本书 9
本书适合谁 9
本书结构 9
符号说明 11
作者的话 12
第一部分
导论章:为什么选择 Kotlin Multiplatform 14
跨平台开发的好处 14
Kotlin Multiplatform 的历史 14
为什么选择 Kotlin Multiplatform 15
何时不应使用 Kotlin Multiplatform 16
Kotlin Multiplatform 的发展路线图 17
第1章:创建并配置 Kotlin Multiplatform 项目 18
1.1. 从零创建项目 22
1.2. 项目设置与依赖管理 25
1.3. 应用程序的共享模块 30
1.4. 从现有原生项目创建项目 37
1.5. 尝试 Fleet 39
1.5.1. Kotlin Multiplatform 向导 40
第2章:KMP 应用程序准备。开发启动 43
2.1. 应用程序骨架 44
2.2. 跨平台应用程序架构 49
2.2.1. 原生应用程序与通用界面 49
2.2.2. 屏幕模块的业务逻辑 55
2.2.3. 通用架构中介 57
2.3. 原生应用程序的 UI 61
2.3.1. 使用 SwiftUI 的 UI 61
2.3.2. 使用 Jetpack Compose 的 UI 64
第3章:Expect/actual。通用与原生 67
3.1. 互操作百科。Kotlin 到 Objective-C/Swift 的转换库 69
3.1.1. 基础转换示例 71
3.1.2. Kotlin 到 Swift 的转换限制 75
3.2. 接口还是 expect/actual 78
3.2.1. 具有原生 UI 和 View 通用接口的应用程序 78
3.2.2. 接口 vs. expect/actual 84
3.2.3. 平台特定行为。读取文件 90
3.2.4. 类型关联 93
3.3. 带星号的材料。互操作底层如何工作 94
3.4. 从 Kotlin 到 Swift 再返回 104
第4章:Kotlin Multiplatform 应用程序中的多线程 109
4.1. 面向 iOS 开发者的协程 110
4.2. 完全通用的多线程。为 iOS 和 Kotlin/Native 配置协程 115
4.3. 使用协程与作用域 119
4.4. Dispatchers.IO 底层 120
4.5. 带星号的材料。Kotlin/Native 多线程的内部原理 122
4.6. 内存管理 128
4.7. 将 suspend 与 iOS 连接 129
4.8. 将 Kotlin Flow 与 iOS 连接 131
4.9. 实践应用 138
第5章:KMP 应用程序的网络层 140
5.1. 准备工作 140
5.2. commonMain 中的原生实现 145
5.3. 基于 Ktor 的通用网络客户端 151
5.4. 带星号的材料。Ktor 内部原理 156
5.5. 实践应用 160
第6章:分块组装应用程序 161
6.1. 连接解决方案组件 161
6.2. 迁移到现成的 ViewModel 167
6.3. 带星号的材料。ViewModel 底层 170
第7章:连接各层。Kotlin Multiplatform 中的 DI 174
7.1. 通用依赖注入 (DI) 概念 174
7.2. Koin 入门 181
7.3. 使用 Koin DI 185
7.4. 代码优化的语法技巧 190
7.5. Kotlin Inject 192
7.6. Dagger Multiplatform 193
7.7. 应用程序完善 194
第8章:在 Kotlin Multiplatform 应用程序中存储数据 197
8.1. iOS 和 Android 原生存储 197
8.2. Kotlin Multiplatform 中的 DataStore 206
8.3. Room 208
8.3.1. Room 安装与连接 209
8.3.2. Room 存储配置 212
8.3.3. 使用存储 218
8.3.4. Room KMP 的限制 219
8.4. 实践应用 221
第9章:测试 Kotlin Multiplatform 应用程序 226
9.1. Kotlin Test 227
9.2. 使用 Mock 进行综合测试 232
9.3. 平台测试 239
9.4. 测试中的 Expect/actual 242
9.5. Kotest 245
9.6. 实践应用 248
第10章:Kotlin Multiplatform 应用程序中的通用 UI 251
10.1. 通用 UI 概念 251
10.1.1. iOS 中的原生 UI 251
10.1.2. Android 的原生 UI 256
10.2. 通用 UI 259
10.2.1. UI 的通用包装器 261
10.2.2. 原生包装器中的通用控件 262
10.2.3. 通过 alias 连接 264
10.3. Compose Multiplatform 265
10.3.1. 在项目中连接和配置 CMP 267
10.3.2. 将 UI 迁移和适配到 Compose Multiplatform 269
10.4. Compose Multiplatform 项目中的导航 272
10.4.1. PreCompose 导航 273
10.4.2. JetBrains 的原生导航 279
10.5. 将原生代码连接到 Compose Multiplatform 283
10.6. 服务端驱动 UI 286
10.7. 通用 UI 的替代方案 291
10.7.1. Redwood 库 291
10.7.2. Decompose 库 292
第二部分
第11章:Kotlin Multiplatform 实用工具 298
11.1. 注解与 Kotlin 符号处理 298
11.2. 编译器插件 305
11.3. 跨平台开发的 AI 助手 310
11.3.1. Gemini 311
11.3.2. GigaCode 327
11.4. Kotlin Multiplatform 实用库 330
第12章:面向 Android 开发者的 iOS 和面向 iOS 开发者的 Android。语言速查表 332
12.1. 面向 iOS 开发者的 Kotlin 和面向 Android 开发者的 Swift 332
12.1.1. 变量与常量 332
12.1.2. 可选类型,可空类型 333
12.1.3. 执行线程 335
12.1.4. 函数 336
12.1.5. 结构体与类 337
12.1.6. Kotlin 和 Swift 中的扩展 338
12.1.7. 枚举,枚举类,密封类 338
12.1.8. 语法与静态功能 339
12.1.9. 接口与协议 340
12.2. 面向 iOS 开发者的 Gradle 341
12.2.1. Settings.gradle 342
12.2.2. Build.gradle.kts (project) 343
12.2.3. shared 模块的 Build.gradle.kts 343
12.2.4. Gradle.properties 346
第13章:为 Kotlin Multiplatform 应用程序创建跨平台库 347
13.1. 创建库 347
13.2. Kotlin Multiplatform 网络库 350
13.3. 构建库 354
13.3.1. 构建工件 354
13.3.2. 连接到 iOS 应用程序 356
13.3.3. 连接到 Android 应用程序 360
13.4. 为 Maven 打包和发布工件 362
13.5. 在公共仓库中托管库 364
13.5.1. GitHub Packages 365
13.5.2. 发布到 Maven Central 366
第14章:现有原生应用程序迁移速查指南 372
14.1. 从 Android 到 Kotlin Multiplatform 372
14.2. 迁移现有 iOS 应用程序 376
总结 381
下一步是什么 383
Kotlin Multiplatform 的前景 384
★ 本书是科特林多平台的系统性实战指南。科特林多平台由杰特布瑞恩斯主导,谷歌官方支持,允许开发者用科特林编写共享代码,同时保留各平台的原生用户界面与性能。
★ 从零创建科特林多平台项目到迁移现有原生应用,涵盖共享模块、多线程与协程、克托尔网络层、数据存储与鲁姆数据库、组合多平台跨平台用户界面,以及科特斯特测试等核心技术栈。
★ 深入讲解期望与实际机制、科特林符号处理编译器插件与人工智能辅助开发,手把手教你创建和发布自己的科特林多平台库,并附科特林与斯威夫特语言速查表,助你自信穿梭于两个生态。
