填补 Android 开发中的语言盲区

Kotlin 已成为 Android 开发的主流语言,但许多开发者停留在“会写”而非“精通”的阶段。这门课解决的核心问题是:如何从基础语法到复杂业务,系统性地掌握 Kotlin 在移动端应用中的最佳实践。课程不局限于语法罗列,而是将空值处理、条件表达式、闭包等高阶特性,直接嵌入坦克大战、即时通讯、外卖点餐等真实场景。例如,通过坦克项目中的碰撞检测,深入剖析闭包在计算子弹位置时的逻辑优势;在即时通讯模块中,展示 RecyclerView 列表刷新与联系人界面代码抽取的实际难点。这种“语法即工具”的视角,能帮你摆脱照猫画虎,理解 Kotlin 为什么比 Java 更简洁、更安全。

基础要求与学习路径建议

这门课适合具备 Java 基础或熟悉 Android 生命周期(Activity/Fragment)的开发者,不需要从零学编程,但需要能看懂基本的代码逻辑。若从未接触过 Android 开发,建议先补全四大组件知识,否则实战部分会因不懂界面跳转而卡壳。 建议的学习顺序非常关键:不要从头到尾线性看。首先跳至“Kotlin 基础”章节,重点攻克字符串模板、空值处理(??.let)和 when 表达式,这是后续所有项目的地基。接着直接进行“坦克大战”项目,专注理解游戏逻辑中的坐标计算与闭包使用,这部分能极大提升对 Kotlin 函数式特性的体感。完成项目后,再进入“即时通讯”模块,这里涉及复杂的 UI 布局交互与状态管理,如登录退出、好友请求流程,是面试常考的“业务落地”场景。最后看“外卖”部分,主要涉及 UI 适配与细节处理,作为收尾查漏补缺。

学完能独立做什么,以及如何配合练习

学完这套课程,你能够独立开发具备完整用户交互逻辑的 Android 应用。具体表现为:能利用 Kotlin 的扩展函数优化原有 Java 代码的冗长性;能独立构建如聊天、即时通讯等多页面复杂 App,并处理数据在界面与后台间的流转;能解决 UI 适配、状态栏侵入等常见视觉 Bug。 资料的使用切忌只看不练。视频多为讲解与代码演示,建议每看完一个核心功能点(如“热修复集成”或“收发消息布局”),立刻在本地 IDE 中复现该功能。特别注意“热修复”章节,虽然现代开发中此技术使用频率降低,但其涉及的框架集成思路对理解 Android 底层机制极有帮助。对于即时通讯模块,尝试修改其中的联系人列表逻辑,比如增加“按拼音排序”功能,以此检验是否真正掌握了 RecyclerView 的数据绑定机制。通过这种“复现+改造”的方式,才能将课程知识转化为个人代码库的一部分,避免“看完就忘”。

课程目录

📁 04.Kotlin基础(二) 14_kotlin字符串模版_01.mp4
 [17.0 MB] 17_kotlin空值处理_01.mp4
 [11.1 MB] 18_kotlin的when表达式_01.mp4
 [9.7 MB] 16_kotlin字符串比较_01.mp4
 [9.3 MB] 18_kotlin的when表达式_02.mp4
 [13.6 MB] 15_kotlin条件控制if和else_01【更多精选‖公众号:CunWorkNotes 获取】.mp4
 [12.0 MB] 📁 31.kotlin热修复 04.热修复的不足_01.mp4
 [39.2 MB] 01.课程介绍_01.mp4
 [7.6 MB] 02.集成阿里热修复框架AndFix_01.mp4
 [36.7 MB] 03.热修复完成_01.mp4
 [33.9 MB] 📁 19.Kotlin坦克大战实战项目(三) 11_移动碰撞检测业务逻辑分析实现-02_x1.1_02.mp4
 [17.9 MB] 15_闭包计算子弹的位置_x1.1_02【整理不易‖记得关注:CunWorkNotes】.mp4
 [13.2 MB] 15_闭包计算子弹的位置_x1.1_03.mp4
 [16.8 MB] 13_结构介绍_x1.1_01.mp4
 [9.0 MB] 12_移动碰撞检测业务逻辑分析实现-03_x1.1_02.mp4
 [14.7 MB] 15_闭包计算子弹的位置_x1.1_01.mp4
 [15.2 MB] 12_移动碰撞检测业务逻辑分析实现-03_x1.1_03.mp4
 [18.6 MB] 11_移动碰撞检测业务逻辑分析实现-02_x1.1_01.mp4
 [16.1 MB] 15_闭包计算子弹的位置_x1.1_04.mp4
 [24.3 MB] 12_移动碰撞检测业务逻辑分析实现-03_x1.1_01.mp4
 [10.1 MB] 14_子弹显示_x1.1_01.mp4
 [27.5 MB] 📁 63.kotlin-即时通讯(七) 32-退出登录的实现_01.mp4
 [25.8 MB] 33-联系人布局的初始化_01.mp4
 [22.7 MB] 34-联系人列表条目的布局_01【资源精选‖更多关注:CunWorkNotes】.mp4
 [13.8 MB] 35-联系人RecyclerView的初始化_01.mp4
 [26.4 MB] 31-动态界面的布局_01.mp4
 [17.4 MB] 📁 70.kotlin-即时通讯(十四) 70-收发消息的布局实现_01.mp4
 [15.3 MB] 68-联系人界面代码的抽取_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [19.0 MB] 69-聊天界面布局的初始化_01.mp4
 [40.2 MB] 66-发送添加好友的请求_01.mp4
 [18.9 MB] 67-添加好友成功后联系人列表的刷新_01.mp4
 [11.9 MB] 📁 76.Kotlin-黑马外卖第一天(一) 2.整体布局_01.mp4
 [36.6 MB] 5.侵入状态栏效果以及虚拟按键处理_02.mp4
 [33.6 MB] 10.适配图片_01.mp4
 [8.9 MB] 3.底部选项卡_02.mp4
 [22.5 MB] 7.列表视图的实现_02.mp4
 [43.3 MB] 4.fragment切换_01.mp4
 [33.6 MB] 6.扩展函数的使用_01.mp4
 [7.2 MB] 9.挂载真实布局_01.mp4
 [30.7 MB] 7.列表视图的实现_01.mp4
 [20.8 MB] 5.侵入状态栏效果以及虚拟按键处理_01【更多精选‖公众号:CunWorkNotes 获取】.mp4
 [22.8 MB] 9.挂载真实布局_02.mp4
 [44.8 MB] 1.创建工程_01.mp4
 [9.6 MB] 8.多类型条目的支持_01.mp4
 [28.7 MB] 3.底部选项卡_01.mp4
 [18.4 MB] 📁 50.kotlin项目实战-手机影音(十四) 68.再次播放同一首歌曲处理_02.mp4
 [29.9 MB] 69.显示列表popwindow_01.mp4
 [18.1 MB] 70.列表popwindow焦点和返回按钮事件处理_01.mp4
 [30.4 MB] 66.上一曲和下一曲_01.mp4
 [19.2 MB] 67.切换歌曲多个歌曲同时播放问题解决_01.mp4
 [13.6 MB] 68.再次播放同一首歌曲处理_01.mp4
 [23.1 MB] 69.显示列表popwindow_02【不易整理‖请关注:CunWorkNotes】.mp4
 [22.4 MB] 📁 35.kotlin与JavaScript的混合开发(二) 09.kotlin仿QQ底部弹出Dialog_02.mp4
 [45.7 MB] 09.kotlin仿QQ底部弹出Dialog_01.mp4
 [24.4 MB] 07.H5回调kotlin获取酒店数据_01.mp4
 [35.8 MB] 06.Kotlin与H5通信方式三(callback)_01.mp4
 [25.5 MB] 11.本地模板打包上线_01.mp4
 [23.0 MB] 10.查看系统源码-调用系统拨号功能_01.mp4
 [24.4 MB] 06.Kotlin与H5通信方式三(callback)_03.mp4
 [24.3 MB] 08.H5在线模板刷新数据_01【不易整理‖请关注:CunWorkNotes】.mp4
 [29.8 MB] 10.查看系统源码-调用系统拨号功能_02.mp4
 [40.4 MB] 06.Kotlin与H5通信方式三(callback)_02.mp4
 [22.6 MB] 📁 16.kotlin项目开发基础--gradle(四) 02_gradle插件自定义扩展_02.mp4
 [17.2 MB] 03_gradle的学习方法_01.mp4
 [21.7 MB] 02_gradle调用外部扩展_01.mp4
 [10.9 MB] 01_gradle插件自定义扩展_01.mp4
 [12.1 MB] 📁 21.Kotlin坦克大战实战项目(五) 24_敌方坦克的自动发射子弹_x1.1_01.mp4
 [35.2 MB] 23_敌方坦克的自动移动_x1.1_01.mp4
 [19.9 MB] 21_物的显示_x1.1_02.mp4
 [27.2 MB] 23_敌方坦克的自动移动_x1.1_03.mp4
 [19.9 MB] 25_双方坦克相互伤害_x1.1_02.mp4
 [28.7 MB] 22_敌方坦克绘制_x1.1_01.mp4
 [20.8 MB] 25_双方坦克相互伤害_x1.1_01.mp4
 [23.3 MB] 23_敌方坦克的自动移动_x1.1_02.mp4
 [16.2 MB] 21_显示_x1.1_01.mp4
 [16.4 MB] 📁 54.kotlin项目实战-手机影音(十八) 88.歌词滚动思路_01.mp4
 [22.3 MB] 90.歌词绘制总结_01.mp4
 [14.3 MB] 86.歌词播放思路_01.mp4
 [13.6 MB] 89.歌词滚动_01.mp4
 [42.6 MB] 87.歌词播放_01.mp4
 [33.0 MB] 📁 77.Kotlin-黑马外卖第一天(二) 14.Retrofit的配置_01.mp4
 [17.1 MB] 16.解析首页数据_01.mp4
 [44.6 MB] 20.首页商家item赋值_01.mp4
 [27.2 MB] 12.首页接口校验_01.mp4
 [19.6 MB] 14.Retrofit的配置_02.mp4
 [19.0 MB] 13.MVP的分析以及整体编码_01.mp4
 [15.0 MB] 17.展示首页数据_01.mp4
 [31.9 MB] 18.使用dagger2解耦view和Presenter_01.mp4
 [21.0 MB] 15.Retrofit的请求数据_01.mp4
 [25.6 MB] 19.dagger2原理分析_01.mp4
 [29.2 MB] 12.首页接口校验_02.mp4
 [31.7 MB] 18.使用dagger2解耦view和Presenter_02.mp4
 [23.5 MB] 11.颜色渐变的计算_01.mp4
 [51.1 MB] 13.MVP的分析以及整体编码_02.mp4
 [16.2 MB] 20.首页商家item赋值_02.mp4
 [38.1 MB] 📁 03.kotlin基础 09_kotlin函数入门_01.mp4
 [16.8 MB] 10_kotlin语言boolean_01.mp4
 [16.2 MB] 12_kotlin函数加强_01.mp4
 [7.1 MB] 13_kotlin函数作业讲解_01.mp4
 [12.6 MB] 11_kotlin命令行交互式终端_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [17.6 MB] 12_kotlin函数加强_02.mp4
 [18.1 MB] 📁 62.kotlin-即时通讯(六) 30-Fragment的切换_01.mp4
 [22.8 MB] 27-注册到环信_01.mp4
 [45.9 MB] 28-用户名已注册处理_01【更多精选‖公众号:CunWorkNotes 获取】.mp4
 [23.0 MB] 26-注册到Bmob_01.mp4
 [24.0 MB] 29-主界面布局以及包重构_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [15.4 MB] 30-Fragment的切换_02.mp4
 [46.6 MB] 📁 41.kotlin项目实战-手机影音(五) 23.悦单界面下拉刷新和上拉加载更多_01.mp4
 [31.0 MB] 21.加载悦单列表数据刷新列表_01【更多精选‖公众号:CunWorkNotes 获取】.mp4
 [29.1 MB] 25.抽取view以及presenter和adapter的基类_01.mp4
 [32.3 MB] 21.加载悦单列表数据刷新列表_02.mp4
 [38.7 MB] 23.悦单界面下拉刷新和上拉加载更多_02.mp4
 [62.4 MB] 24.基类抽取思路_01.mp4
 [35.0 MB] 25.抽取view以及presenter和adapter的基类_02.mp4
 [51.8 MB] 22.悦单条目view初始化_02.mp4
 [40.5 MB] 22.悦单条目view初始化_01.mp4
 [27.5 MB] 📁 82.Kotlin-黑马外卖第三天(二) 11.右侧列表滚动切换左侧类别_02.mp4
 [39.5 MB] 16.红点功能的实现_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [45.9 MB] 18.抛物线动画实现_03.mp4
 [40.0 MB] 14.点击+号的动画_01.mp4
 [45.5 MB] 18.抛物线动画实现_02.mp4
 [23.5 MB] 15.减号按钮的处理_01.mp4
 [15.1 MB] 12.商品条目的赋值_02.mp4
 [46.3 MB] 17.获取view的绝对位置方法_01.mp4
 [37.6 MB] 12.商品条目的赋值_01.mp4
 [21.1 MB] 11.右侧列表滚动切换左侧类别_01.mp4
 [25.7 MB] 13.点击数量发生变化_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [33.1 MB] 18.抛物线动画实现_01.mp4
 [26.8 MB] 📁 30.kotlin增量更新 04.生成头条patch包_01.mp4
 [12.1 MB] 03.增量更新的集成_01.mp4
 [40.9 MB] 01.课程介绍_01【整理不易‖记得关注:CunWorkNotes】.mp4
 [7.9 MB] 05.更新今日头条完成_01.mp4
 [27.3 MB] 02.Kotlin配置_01.mp4
 [18.5 MB] 📁 61.kotlin-即时通讯(五) 21-注册界面MVP协议_01.mp4
 [13.3 MB] 24-注册流程分析_01.mp4
 [6.3 MB] 23-注册界面Presenter层的实现_01.mp4
 [38.2 MB] 25-Bmob的集成_01.mp4
 [42.3 MB] 22-注册界面View层的实现_01.mp4
 [13.5 MB] 📁 52.kotlin项目实战-手机影音(十六) 78.播放音乐显示通知_01.mp4
 [36.1 MB] 76.自定义通知_01【不易整理‖请关注:CunWorkNotes】.mp4
 [37.4 MB] 79.通知栏主体点击处理_01.mp4
 [23.4 MB] 80.通知栏上一曲和下一曲以及状态更新按钮点击事件_01.mp4
 [37.3 MB] 79.通知栏主体点击处理_02.mp4
 [27.2 MB] 77.notification创建流程总结_01.mp4
 [11.5 MB] 📁 85.kotlin-黑马外卖第五天 1.集成高德地图_02.mp4
 [35.7 MB] 1.集成高德地图_01.mp4
 [35.2 MB] 3.定位实现以及动态申请权限_01.mp4
 [26.7 MB] 8.订单详情页自动刷新_01【资源精选‖更多关注:CunWorkNotes】.mp4
 [20.2 MB] 5.展示周边搜索结果_01.mp4
 [22.4 MB] 4.移动地图与周边搜索_02.mp4
 [29.3 MB] 4.移动地图与周边搜索_03.mp4
 [33.3 MB] 2.生成高德地图key_01.mp4
 [34.7 MB] 5.展示周边搜索结果_02.mp4
 [36.8 MB] 7.订单详情页_02.mp4
 [48.2 MB] 6.一键定位地址的实现_01【不易整理‖请关注:CunWorkNotes】.mp4
 [33.1 MB] 10.更新骑手位置_01.mp4
 [55.0 MB] 4.移动地图与周边搜索_01.mp4
 [27.0 MB] 9.标注买卖家位置_01.mp4
 [32.9 MB] 7.订单详情页_01.mp4
 [30.2 MB] 9.标注买卖家位置_02.mp4
 [30.7 MB] 3.定位实现以及动态申请权限_02.mp4
 [52.4 MB] 9.标注买卖家位置_03.mp4
 [28.1 MB] 📁 12.高阶函数(二) 49_kotlin高阶函数实战(传统需求实现的缺点)_01【优质资源‖关注:CunWorkNotes 解锁】.mp4
 [13.6 MB] 51_kotlin高阶函数实战-自定义dsl入门_01.mp4
 [15.1 MB] 50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_02.mp4
 [12.9 MB] 49_kotlin高阶函数实战(传统需求实现的缺点)_02.mp4
 [12.6 MB] 50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_03.mp4
 [16.5 MB] 50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_01.mp4
 [11.8 MB] 📁 87.Kotlin前端实战开发 04.canvas绘制线条_01.mp4
 [21.5 MB] 01.课程介绍_01.mp4
 [4.2 MB] 05.canvas绘制圆形_01.mp4
 [22.3 MB] 02.创建项目与配置_01.mp4
 [14.7 MB] 03.页面初始化_01.mp4
 [25.6 MB] 📁 15.kotlin项目开发基础--gradle(三) 02_gradle依赖管理(高级程序员如何添加依赖)_01.mp4
 [10.2 MB] 01_gradle依赖管理入门(普通程序员的开发流程)_01.mp4
 [10.4 MB] 01_gradle依赖管理入门(普通程序员的开发流程)_02.mp4
 [16.6 MB] 03_gradle依赖管理的类比_01【更多精选‖公众号:CunWorkNotes 获取】.mp4
 [10.9 MB] … 其余 5

29 项略,目录共 729 项