这是一个关于Kotlin教程的项目,学好Koltin从这里开始,当你看完这个系列的所有文章时,我相信你是绝对有收获的。
本人作为一个Android开发者,在Kotlin语言正式出现在人们面前的时候,或多或少的接触到了这门语言,并
自学了一部分,当Google宣布Kotlin成为Android开发的标准语言时,才有打算用心的去学习这门语言,并能用于实际的开
发当中。在我学习的过程中,学的越深入越被Kotlin的简洁以及良好的阅读性深深的折服。但是在官方的文档中,写
的实列不是很详细,有些代码甚至看不懂其实现,基础性的东西几乎不存在。如果你没有一定的编程经验我相信你也是看不懂的。
但是请你不要放弃对这门语言的学习,我也是一点一点学习过来的,你在学习过程中遇到的坑,可能我也遇到过。我非常欢迎各位 一起学习、一起探索。让我们共同进步。
所以,我会根据自身的编程经验去写完整个Kotlin系列文章。整个教程由浅入深,即使你没有编程经验你也能看懂,教程中会
介绍Koltin的特性,以及其和Java的差异性。让更多的朋友爱上这门语言。
话不多说,让我们忘记生活的烦恼、放下沉重的枷锁、沉浸在代码的世界中,放大音乐分贝,迈开脚步开始学习Kotlin大法吧。
我把这个教程命名为:从无到有系列,这个系列目前还没写完,故而下面的链接有一些是没有实际内容的,我会在后面持续的补齐,这里只是实现了整个教程的大纲。
整个项目根据学习的难以程度以及学习路线我分为了五个模块。我会按照的学习架构去排序。大家可以按照这个顺序去学习...
- 1、 17 位谷歌 Android 开发专家是如何看待 Kotlin 的?
 - 2、 用 Kotlin 开发 Android 项目是一种什么样的感受?(一)
 - 3、 用 Kotlin 开发 Android 项目是一种什么样的感受?(二)
 
对于入门篇的内容不多,主要是讲解了
Kotlin中的基础语法,涵盖了开发环境搭建、变量、常量、注释、数据类型、控制语句,操作符重载、空安全、基本函数、字符串处理等
- 1、 开发环境搭建
 - 2、 变量、常量、注释
 - 3、 数据类型
 - 4、 逻辑控制语句
 - 5.1、 一元、二元操作符
 - 5.2、 比较、区间、未运算操作符(未完成)
 - 6、 可空类型、空安全、类型转换
 - 7、 基础函数使用
 - 8、 字符串的常用操作总结
 
Kotlin是一门面向对象的开发语言。既然是面向对象,则在中级篇主要讲解其三大特性,以及类成员、数据类、抽象类、接口类、内部类、继承类等关于Kotlin面向对象的方方面面的讲解
- 1、 类的声明与使用
 - 2、 属性与字段
 - 3、 可见性修饰符
 - 4、 继承类
 - 5、 接口类、枚举类
 - 6、 数据类、密封类
 - 7、 抽象类、内部类、嵌套类
 - 8、 类型别名与属性名冲突解决
 - 9、 解构声明(未完成)
 - 10、伴生对象与对象声明(未完成)
 
高级篇的内容要多一些,只要是对
Kotlin中的高级用法以及一些独特的东西。涵盖了lambda表达式、高阶函数、集合、泛型、扩展、委托、异常处理、注解、反射、协程等
- 1、 Lambda表达式
 - 2、 高阶函数
 - 3、 内联函数(未完成)
 - 4.1、 集合的使用
 - 4.2、 集合的常用操作符总结
 - 5、 泛型(未完成)
 - 6、 扩展(未完成)
 - 7、异常处理(未完成)
 - 8、 委托(未完成)
 - 9、 注解(未完成)
 - 10、 反射(未完成)
 - 11、 协程(未完成)
 
进阶篇主要讲解的是在实际开发项目中的注意事项及一些高级操作,例如
Kotlin中的设计模式、编码规范等
- 1、 约定俗成的编码规范(未完成)
 - 2、 单列模式(未完成)
 - 3、 工厂方法模式(未完成)
 - 4、 抽象工厂模式(未完成)
 - 5、 建造者模式(未完成)
 - 6、 原型模式(未完成)
 - 7、 适配器模式(未完成)
 - 8、 桥接模式(未完成)
 - 9、 组合模式(未完成)
 - 10、 装饰模式(未完成)
 - 11、 外观模式(未完成)
 - 12、 享元模式(未完成)
 - 13、 代理模式(未完成)
 - 14、 职责链模式(未完成)
 - 15、 命令模式(未完成)
 - 16、 解释器模式(未完成)
 - 17、 迭代器模式(未完成)
 - 18、 中介者模式(未完成)
 - 19、 备忘录模式(未完成)
 - 20、 观察者模式(未完成)
 - 21、 状态模式(未完成)
 - 22、 策略模式(未完成)
 - 23、 模版方法模式(未完成)
 - 24、 访问者模式(未完成)
 
实战篇主要向大家介绍使用
Kotlin开发Android项目时,介绍一些常用和Kotlin一起开发的库,以及对他们的使用及讲解。 比如说Anko、Dagger2、RxKotlin、或者用Kotlin编写的一些自定义组件等等...
在这里我意思整合了一些关于Kotlin的学习资源,以供大家学习。
关于书籍的分享,这里有着官网的中英文PDF文档,Kotlin极简教程、Kotlin程序开发入门经验等等书籍。这些我都分享在了我的Kotlin交流群里面。这里就不一一的分享了。
- GankClient-Kotlin —— 用
Koltin编写的Gank客户端 - PoiShuhui-Kotlin —— 用
Kotlin写的简单漫画APP - KotlinMvp —— 基于
Kotlin+MVP+Retrofit+RxJava+Glide等架构实现短视频类APP练手项目,UI简约,详细注释 - Eyepetizer-in-Kotlin —— 用
Kotlin撸一款Eyepetizer 
我相信在你学完整个系列教程之后,一定是可以用Kotlin进行实际项目开发的。近期我也会用Koltin语言去编写我自己的Android项目,也会用Kotlin去实现后端用于我APP中的接口提供。
如果你在学习过程中遇到任何的问题,不管你是写后端、Android以及前端的开发者都可以联系我,或者对于Android开发很有兴趣。都可以在项目Issuse我,或者加入在下的Koltin交流群一起学习、研究。

