适用于 Android 开发的 Kotlin 协程和流程 [2024]

完整指南!深入了解 Kotlin 协程和 Flow,以便在您的 Android 应用程序中成功使用它们

讲师:Lukas Lechner

口袋资源独家Udemy付费课程独家中英文字幕配套资料齐全!

不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。

你将学到什么

  • 在 Android 上实现 Kotlin 协程和 Flow 的最常见用例
  • 深入了解 Kotlin 协程和流程
  • 学习高级协程概念(结构化并发、协程作用域和上下文、内部工作原理等)
  • 了解如何使用不同的流程构建器创建流程
  • 了解Flow算子(生命周期算子、中间算子、终端算子)
  • 了解不同类型的流(常规流、共享流、状态流)
  • 使用 Flows 创建股票实时跟踪应用程序
  • 了解何时在 Android 开发中使用通道
  • 了解使用协程相对于回调或 RxJava 的优势。
  • 如何使用 Retrofit 顺序和并发执行网络请求。
  • 如何将 Room 与协程一起使用。
  • 使用协程进行后台处理。
  • 协程和流程中的异常处理和取消。
  • 如何为基于协程的实现编写单元测试

要求

  • 无需具备有关 Kotlin 协程或 Flow 的先验知识,但您应该熟悉 Kotlin 和 Android 的基础知识,以及一些 Android Jetpack 组件(ViewModels、LiveData、Room)和 Retrofit。

描述

Google 推荐 Kotlin Coroutines 和 Flow 作为 Android 上异步编程的首选解决方案。迟早,可能每个 Android 开发人员都会接触到这些主题。

本课程将让您深入了解 Kotlin 协程和 Flow,并展示如何实现Android 应用程序的最常见用例

本课程由两大部分组成:协程部分流程部分

在能够在我们的应用程序中使用流之前,我们首先需要对协程有深入的了解。这就是为什么首先介绍协程的原因。但是,如果您已经有一些协程的经验,那么您也可以立即从流程部分开始,并在需要时跳回协程部分的课程。

在关于协程的部分中,首先,我们将详细了解 Kotlin 协程相对于其他异步编程方法(例如RxJavaCallbacks)的优势。

然后,我们将讨论一些理论基础。这些包括:

  • 例程与协程
  • 暂停功能
  • 协程与线程
  • 阻塞与挂起
  • 多线程协程
  • 内部运作

接下来,我们将在 Android 应用程序中实现 Kotlin 协程的一些最常见的用例。这些包括:

  • 使用 Retrofit 顺序和并发执行网络请求
  • 实施超时和重试
  • 将 Room 与协程一起使用
  • 使用协程执行后台处理
  • 即使用户离开屏幕,协程也会继续执行。

为了提高您的学习体验,本课程还通过一些练习来挑战您。

学习协程可能会让人不知所措,因为您需要学习很多新概念。然而,我们将从简单开始,随着我们的用例变得越来越复杂,我们将逐步学习新概念。这些新概念是:

  • 协程构建器(启动、异步、runBlocking)
  • 协程上下文
  • 协程调度程序
  • 结构化并发
  • 协程作用域(viewModelScope、lifecycleScope、GlobalScope)
  • 职位和主管职位
  • 作用域函数(coroutineScope{} 和supervisorScope{})
  • 合作取消
  • 不可取消的代码

我们还将深入研究异常处理并讨论以下概念:

  • 使用 try/catch 进行异常处理
  • 使用 CoroutineExceptionHandlers 进行异常处理
  • 何时使用 try/catch 以及何时使用 CoroutineExceptionHandler
  • 协程中的异常处理从启动和异步开始
  • 作用域函数 coroutineScope{} 和supervisorScope{} 的异常处理细节

单元测试对于每个代码库都非常重要。在课程的最后一部分,我们将为我们之前实现的大多数基于协程的用例编写单元测试。我们将讨论诸如

  • 测试协程调度程序
  • 创建 JUnit4 规则来测试基于协程的代码
  • runBlockingTest{} 协程生成器
  • 虚拟时间
  • 测试顺序和并发执行
  • 测试协程作用域

关于 Kotlin Flow 的部分中,我们首先介绍所有基础知识。我们将回答“什么是流?”这个问题。然后我们讨论响应式编程的优点和缺点。

之后,我们将看看不同的Flow 构建器运算符

  • 基本流程构建器
  • 码头运营商
  • 终端操作员“launchIn()”
  • 终端操作员“asLiveData()”
  • 生命周期操作符
  • 中间算子

在我们的第一个真实Flow 用例中,我们使用 Flow 创建实时库存跟踪功能,该功能使用所有可用的基本流组件。

在下一个模块中,我们将了解Kotlin Flow 的异常处理取消。

在下面的模块中,您将了解StateFlowSharedFlow以及以下概念:

  • 如何使用“repeatOnLifecycle()”挂起函数使协程具有生命周期感知能力
  • 热流 VS 冷流
  • 使用“shareIn()”运算符将流转换为 SharedFlow
  • 使用“stateIn()”运算符将流转换为 StateFlow
  • 何时使用 SharedFlow 何时使用 StateFlow

接下来,您将了解Channels,它们与热流有何不同,以及它们何时在 Android 应用程序中有用。

在本课程结束时,您将对Kotlin 协程和流有基本的了解,并能够编写可读和可维护的异步多线程 Android 应用程序

本课程适合谁:

  • 希望深入了解 Kotlin 协程和 Flow 并希望了解如何在 Android 上实现最常见用例的 Android 开发人员。

发表回复

后才能评论

  • 每一个课程页面,都有演示地址选项,点击链接可以跳转到课程发布网站查看详细课程列表。
  • 绝大部分课程都有试看内容,可以先点击试看,再决定是否购买。
  • 本站课程均存储在阿里云盘或百度网盘中,由于阿里云盘对分享的文件类型有限制,所以课程资料和字幕会存储到蓝奏云盘中。
  • 阿里云盘和蓝奏云盘都是不限速下载的,你既可以选择在阿里云盘中在线学习,也可以选择下载到本地学习。
  • 课程下载到本地可以挂载中英文双字幕,请点击查看Potplayer挂载中英文双字幕教程
  • 本站所有课程,均提供mp4格式视频文件,中英文双字幕,配套资料齐全,不加密。
  • 每一个课程右侧下载面板中,都会有清晰度标识,大部分都是1080P或者720P,还有少数是超高清的。
  • 本站课程购买之后,均可以免费更新,所有课程,皆配有中文字幕。
  • 请注意,课程的中文字幕是根据英文字幕用谷歌翻译生成的,本非人工翻译。谷歌翻译准确度尚可,学习观看,没有问题。
  • 由于数字资源具有可复制性,一旦购买,不接受退款要求,请在购买之前,认真了解课程内容,确定是否需要。
  • 当然,如果有特殊情况,可以查看网站底部联系方式,联系站长说明问题,我会为你妥善处理。
  • 赞助本站VIP会员,可以免费下载所有课程,详情请查看VIP介绍