再见,Java。你好,Kotlin

前言

在 2019 年 Google I/O 大会上,谷歌宣布今后将优先采用 Kotlin 进行 Android 开发,并且也坚守了这一承诺。

为什么要优先使用 Kotlin 进行 Android 开发?

  • 富有表现力且简洁:您可以使用更少的代码实现更多的功能。表达自己的想法,少编写样板代码。在使用 Kotlin 的专业开发者中,有 67% 的人反映其工作效率有所提高。
  • 更安全的代码:Kotlin 有许多语言功能,可帮助您避免 null 指针异常等常见编程错误。包含 Kotlin 代码的 Android 应用发生崩溃的可能性降低了 20%。
  • 可互操作:您可以在 Kotlin 代码中调用 Java 代码,或者在 Java 代码中调用 Kotlin 代码。Kotlin 可完全与 Java 编程语言互操作,因此您可以根据需要在项目中添加任意数量的 Kotlin 代码。
  • 结构化并发:Kotlin 协程让异步代码像阻塞代码一样易于使用。协程可大幅简化后台任务管理,例如网络调用、本地数据访问等任务的管理。

经常有人问我,抛弃Java改用Kotlin后,你遇到了哪些坑,是否会后悔而又重返Java?

完全回不去,也没有理由回去。

  1. kotlin和java可以混编,不会用写的用java过渡一段时间,项目接入成本极低
  2. java代码贴过去自动转换,又消除了一波不会写的人
  3. 各大框架都有kotlin支持,特别是spring
  4. kotlin这门语言是jetbrains开发的,jetbrains做ide深知开发痛点和难处,所以用起来极爽
  5. 语言特性极好,但不复杂,这个很重要!
    Scala同为Java的超集,语言太复杂导致难以使用
    Groovy号称把java后缀改为groovy即可使用,但是太过动态导致很多场景使用者无所适从(没有提示)
  6. 接入成本问题:
    运行时加入kotlin-stdlib包和启用kotlin-maven-plugin(gradle类似)即可,对运行时的现有代码完全没有影响。
  7. kotlin的Sequence完爆Java8的Stream,然鹅做业务集合操作是家常便饭,这点极大提高代码效率
  8. 我的项目接入kotlin之后和java开发并行了一段时间,其他人都觉得用得爽慢慢转过来,然而我并没有大力地推动过
  9. 至于有哪些坑?我还真没遇到过,连NPE都少了,现在为止出的所有bug都是java代码侧的。

如何学

这份谷歌开源的《史上最详Android版kotlin协程入门进阶实战指南》,希望可以帮助大家用最短时间学习 Kotlin携程。教程通俗易懂,实例丰富,既有基础知识,也有进阶技能,能够帮助读者快速入门进阶,是你学习Kotlin的葵花宝典,快收藏起来!!!

第一章 Kotlin协程的基础介绍

  • 协程是什么
  • 什么是Job 、Deferred 、协程作用域
  • Kotlin协程的基础用法

第二章 kotlin协程的关键知识点初步讲解

  • 协程调度器
  • 协程调度器
  • 协程启动模式
  • 协程作用域
  • 挂起函数

第三章 kotlin协程的异常处理

  • 协程异常的产生流程
  • 协程的异常处理

第四章 kotlin协程在Android中的基础应用

  • Android使用kotlin协程
  • 在Activity与Framgent中使用协程
  • ViewModel中使用协程
  • 其他环境下使用协程

第五章 kotlin协程的网络请求封装

  • 协程的常用环境
  • 协程在网络请求下的封装及使用
  • 高阶函数方式
  • 多状态函数返回值方式
  • 直接返回值的方式

第六章 深入kotlin协程原理(一)

  • suspend 的花花肠子
  • 藏在身后的- Continuation
  • 村里的希望- SuspendLambda

第七章 深入kotlin协程原理(二)

  • 协程的那些小秘密
  • 协程的创建过程
  • 协程的挂起与恢复
  • 协程的执行与状态机

第八章 Kotlin Jetpack 实战

  • 从一个膜拜大神的 Demo 开始
  • Kotlin 写 Gradle 脚本是一种什么体验?
  • Kotlin 编程的三重境界
  • Kotlin 高阶函数
  • Kotlin 泛型
  • Kotlin 扩展
  • Kotlin 委托
  • 协程“不为人知”的调试技巧
  • 图解协程原理

第九章 Kotlin + 协程 + Retrofit + MVVM优雅的实现网络请求

  • 项目配置
  • 实现思路
  • 协程实现
  • 协程 + ViewModel + LiveData实现
  • 后续优化
  • 异常处理
  • 更新Retrofit 2.6.0

文末
 
由于文章篇幅有限,资料内容过多,只展示目录和部分截图,需要该资料完整版的小伙伴请扫下方csdn官方二维码免费领取
请添加图片描述

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>