关于 Kotlin 一系列的学习教程、文章。学好 Kotlin 从这里开始,争取做到最全、最详细。让没有编程经验的朋友也能通过这个系列教程用 Koltin 语言来开发项目
KotlinLearn
项目地址:Jetictors/KotlinLearn
简介: 这是一个关于 Kotlin 一系列的学习教程、文章。学好 Kotlin 从这里开始,争取做到最全、最详细。让没有编程经验的朋友也能通过这个系列教程用 Koltin 语言来开发项目
更多:作者 提 Bug
标签:
这是一个关于Kotlin
教程的项目,学好Koltin
从这里开始,当你看完这个系列的所有文章时,我相信你是绝对有收获的。
写这个系列教程的初衷
本人作为一个Android
开发者,在Kotlin
语言正式出现在人们面前的时候,或多或少的接触到了这门语言,并 自学了一部分,当谷歌
宣布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
编写的一些自定义组件等等...
- 1、 使用 Anko,让你告别 xml 布局
- 2、 Kotlin 中使用 Dagger2 的坑
- 3、 RxKotlin 总结(未完成)
- 4、 使用 Koltin 编写一个竖行显示的 TextView(未完成)
其他
在这里我意思整合了一些关于Kotlin
的学习资源,以供大家学习。
官网
- Kotlin 官网文档
- kotlin 中文官网文档
- Kotlin 在线 IDE
- Kotlin On Github
视频教程
- Kotlin 系列视频教程
书籍
关于书籍的分享,这里有着官网的中英文PDF
文档,Kotlin
极简教程、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
交流群一起学习、研究。
欢迎各位大佬进群共同研究、探索
QQ 群号:497071402
关于 Kotlin 一系列的学习教程、文章。学好 Kotlin 从这里开始,争取做到最全、最详细。让没有编程经验的朋友也能通过这个系列教程用 Koltin 语言来开发项目相关推荐
- Xilinx MicroBlaze系列教程(适用于ISE和Vivado开发环境)
本文是Xilinx MicroBlaze系列教程的第0篇文章. 这个系列文章是我个人最近两年使用Xilinx MicroBlaze软核的经验和笔记,以Xilinx ISE 14.7和Spartan-6 ...
- EWSTM8系列教程06_工程节点选项配置(一)
IAR最新全套教程: 1.EWSTM8系列教程01_IAR介绍.下载.安装和注册 2.EWSTM8系列教程02_新建基础软件工程 3.EWSTM8系列教程03_主窗口.工具栏的概述 4.EWSTM8系 ...
- EWSTM8系列教程02_新建基础软件工程
IAR最新全套教程: 1.EWSTM8系列教程01_IAR介绍.下载.安装和注册 2.EWSTM8系列教程02_新建基础软件工程 3.EWSTM8系列教程03_主窗口.工具栏的概述 4.EWSTM8系 ...
- EWSTM8系列教程04_菜单概述(一)
IAR最新全套教程: 1.EWSTM8系列教程01_IAR介绍.下载.安装和注册 2.EWSTM8系列教程02_新建基础软件工程 3.EWSTM8系列教程03_主窗口.工具栏的概述 4.EWSTM8系 ...
- 【建站系列教程】2.3、分享一些小说的api接口
[建站系列教程]2.3.分享一些小说的api接口 一.追书神器api 二.资源二api 三.宜搜api 四.结语 写在前面:大家好,我是热爱编程的小泽. [建站系列教程]是我的亲身建站经历写给广大建站 ...
- EWSTM8系列教程03_主窗口、工具栏的概述
IAR最新全套教程: 1.EWSTM8系列教程01_IAR介绍.下载.安装和注册 2.EWSTM8系列教程02_新建基础软件工程 3.EWSTM8系列教程03_主窗口.工具栏的概述 4.EWSTM8系 ...
- html标题线,html系列教程--标题,水平线,注释以及段落
HTML标题 标题,用来显示文章重要性的文字,包含了文章的主旨,类似于作文题目. 标题(Heading)是通过 - 等标签进行定义的,由大到小一次排列,h1为最大. 注意: 浏览器会自动地在标题的前后 ...
- EWSTM8系列教程01_IAR介绍、下载、安装和注册
推荐 分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!https://www.cnblogs.com/captainbed 正文: IAR最新全套 ...
- 【建站系列教程】5、谈一谈网站的静态化
[建站系列教程]5.谈一谈网站的静态化[进阶] 动态页面?静态页面?伪静态页面? 三个页面有何优缺点? 为什么要让网页静态化 如何网页伪静态化? 写在前面:大家好,我是热爱编程的小泽. [建站系列教程 ...
最新文章
- Android 使用 ADB 命令录制屏幕上的视频
- 关于EXCEL超级链接被禁止的解决方法
- SLAM学习--帝国理工学院机器人课程slam部分讲义(附下载链接)
- oracle 12c dg新特性,Oracle 12c DG新特性---一键switchover
- C++:20---成员变量初始化方式
- 对话亲历者|鲁肃:我在支付宝“拧螺丝“的日子
- 路由器下一跳地址怎么判断_网络基本功三:细说路由器
- 创建ASPState数据库
- 【C++实现】HeadFirst策略模式设计模式
- [转载] 数组快速排序python_python实现快速排序
- @value 默认值_【Spring】只想用一篇文章记录@Value的使用,不想再找其它了(附思维导图)
- 数据结构与算法面试题(2022版本)
- 【软件工程】软件工程需求分析——结构化分析
- php酒店客房管理,基于PHP的酒店客房管理系统的设计与实现2.doc
- python 输入整数数组_Python 2中的整数数组输入
- Python - 面向对象编程 - 公共属性、保护属性、私有属性
- html5鼠标悬停下拉列表,HTML5与CSS3中鼠标悬停会有下拉列表
- 苹果手机相机九宫格怎么设置_用苹果手机拍照,这3个媲美单反的设置不会用,就别说自己用苹果...
- CC3200 TI RTOS LPDS模式
- spoolsv出错,无法使用打印服务的解决办法