文档章节

学习 Kotlin 的 20 个实用资源

编辑部的故事
 编辑部的故事
发布于 2017/06/07 17:17
字数 1483
阅读 9451
收藏 406

Кotlin 是在 Java VM 上运行的现代编程语言,它的语法优雅,可与现有的 Java 库互操作。 在 2017 年 Google I/O 中,Android 团队宣布将 Kotlin 作为 Android 平台的官方编程语言。

为了帮助你学习和了解 Kotlin ,本文整理出了 Kotlin 学习资源列表,当中没有任何付费课程或书籍,列表中的所有内容都是 100% 免费。(含外境资源,请自备梯子)

一、教程类

The Kotlin Website - Kotlin 官网

Kotlin 官方网站是学习 Kotlin 好去处。在参考部分,你可以找到该语言的所有概念和功能的深入解析文档。在教程部分有关于设置工作环境并使用编译器的实用分步指南。

这里还有个 Kotlin 编译器,是一个浏览器 APP,你可以在上面尝试使用这门语言。它能加载许多示例,包括 Koans 课程 — 这是目前熟悉 Kotlin 语法的最好方式。

Keddit: Learn Kotlin while developing an Android App - 通过安卓 app 开发学习 Kotlin

这是由 Juan Ignacio Saravia 发表的系列作品,包含 11 个部分。他将 Kotlin 投入使用,构建了一个 Reddit 克隆版 app。该教程涵盖的主题内容广泛,从设置工作区到 API 的使用,甚至包括单元测试。

Antonio Leiva's Blog - Antonio Leiva 博客

Antonio Leiva 的博客专注于 Kotlin 相关内容的发布。每周都会更新一些高质量的文章或教程,Kotlin 的高级开发者可以在其中了解到最新的 Kotlin 库以及各种实用技术。

Android Announces Support for Kotlin - Android 宣布对 Kotlin 的支持

Google 发表了官方博文,解释了为什么 Kotlin 能成为 Android 开发的第三官方语言。文章中简单介绍了 Kotlin 带来的一些优秀语法改进。

Design Patterns implemented in Kotlin - 在 Kotlin 中实现的 Design Pattern

DariuszBaciński 创建了一个 GitHub repo,其中有在 Kotlin 中实现的常见设计模式,也有用其他语言编写的类似项目,包括 Java,Swift,JavaScript 和 PHP,如果你是其中一项语言的使用者,可以用它们作为参考点。

Learn X in Y minutes - 学习 X 只需 Y 分钟

这是一个快速开发秘笈,里面有一些重要功能和特殊语法,能帮助你写出更好的 Kotlin 代码。文章中有列出关于类、循环、列表的使用介绍,也有经典编程问题的实现,如生成 Fibonacci 序列。

The Kotlin Blog - Kotlin 官博

Kotlin 的官方博客由 JetBrains 的一位作者负责。你可以在这里找到所有与 Kotlin 相关的新闻、更新、教程、使用技巧等的内容。

Get Started with Kotlin on Android - 在 Android 上开始使用 Kotlin

一篇很牛叉的文章,向我们展示了如何使用 Kotlin 编写和运行 Android 应用程序的测试。 作者很好地解释了测试的不同类型,不同类型的使用场合,以及如何确保正确测试。 这个主题的另一个优秀教程可以在这里找到。

二、视频演讲类

Introduction to Kotlin - Kotlin 介绍

来自 Google I / O 2017 的演讲,大会首次向人们介绍 Kotlin,并提出了改进工作流程的想法。它涵盖了许多基础知识,并展示了一些很酷的 Kotlin 技巧。

Life is Great and Everything Will Be Ok, Kotlin is Here - 明日胜于今,我用 Kotlin

Google I / O 2017 大会关于 Kotlin 的第二个演讲。这个演讲涵盖了更多高级话题,如设计模式,最佳实践和其他常见规则。 演讲也揭示了在生产中使用 Kotlin 的意义,以及在工作中采用新兴语言将面临的挑战。

Peter Sommerhoff's Kotlin Tutorials - Peter Sommerhoff 教你学 Kotlin

这是一个免费的 Kotlin 课程,适合初学者,前面介绍了从变量到条件循环和函数的所有基础知识,后面会深入到更高级的主题,如 Kotlin 中的面向对象以及像 lambda 表达式的功能编程。

Better Android Development with Kotlin & Gradle - 使用 Kotlin&Gradle 进行更好的 Android 开发

这个讲座从 2016 年开始,它介绍了现实世界中的编程语言功能,你将了解到 Kotlin 是如何适应 Android 工作流程中存在的工具。

Better Android Development with Kotlin & Gradle - 使用 Kotlin&Gradle 进行更好的 Android 开发

一个 8 分钟的浓缩教程,让你快速了解 Kotlin 的主要功能,如变量声明、Lambdas、扩展功能等等。

Android Development with Kotlin — Jake Wharton - 用 Kotlin 进行 Android 开发

关于 Kotlin 的介绍,演讲向我们解释了新语言是如何改进 Android 生态系统的,并展示了许多炫酷的方式,我们可以使用智能的 Kotlin 语法来获得优势。

三、其他重要资源

From Java To Kotlin - 从 Java 到 Kotlin

实用的快速提醒列表工具包含了一些简短的代码块,藉由这个来帮助你快速找到通用 Java 操作符、功能以及声明的 Kotlin 替代方案。

Kotlin Educational Plugin - Kotlin 教学插件

用于 IntelliJ IDEa 的插件,可让你在本地离线环境下使用 Koans 课程。

Kotlin on GitHub

Kotlin 于 2012 年开源,你可以对该语言进行贡献。

Kotlin Android Template - Kotlin Android 模板

Android 项目模板,使其非常容易设置稳定的 Kotlin 工作区,并快速引导你开发应用程序。

Awesome Kotlin - 不可错过的 Kotlin 资源列表

这是一个比较完整的 Kotlin 资源列表,包括各种实用链接、书籍、库、框架和视频等。该列表的组织结构完善,kotlin.link 也提供了一个风格化的版本。

编译自:20 Excellent Resources for Learning Kotlin

译者:开源中国 - 达尔文

链接:https://my.oschina.net/editorial-story/blog/916508

转载请务必在文中注明文章来源及作者

© 著作权归作者所有

共有 人打赏支持
编辑部的故事

编辑部的故事

粉丝 1127
博文 247
码字总数 422284
作品 0
深圳
运营/编辑
加载中

评论(48)

kidfruit
kidfruit

引用来自“小安是屌丝”的评论

引用来自“kidfruit”的评论

引用来自“墨名次”的评论

我怎么觉得有那么多人认为javaer学不会kotlin一样
因为很多javaer码农都算不上,顶多码畜,学java已经花了很多脑细胞了,没脑力再去学新东西。

1.javaer会等这门语言相当普及了再学,因为一门语言不需要花一周
2.javaer想花更多时间在架构的研究上,因为永远不会过时.

@小安是屌丝 你这说的是极少数,多数javaer最多就是照着搜出来的教程写配置文件,说研究架构真是抬举了,就像很多c#开发只会拖控件一样。学习并不意味着一定要马上用于项目,而是取长补短扩展思维。很多javaer可是有很长一段时间连lambda都不知道,你所说的等普及只是很多javaer不学无术功利开发的借口。
谁偷了我的名字
谁偷了我的名字

引用来自“orpherus”的评论

引用来自“石天保”的评论

引用来自“notreami”的评论

Kotlin有什么明显的优势呢?
1、语法优雅
2、100%兼容java相互调用
3、谷歌说Kotlin是安卓开发的一级编程语言

Kotlin有什么缺点呢?
1、没有谷歌提一句,奋斗6年,依旧什么作品都没有,java语法问题,可以用各类库来支持;
2、除了自家IDEA支持,还有哪家IDE支持?
满屏的问好叹号 并不优雅

满屏问号叹号,那是你不会用

引用来自“石天保”的评论

膜拜大神 请贴出你的代码 重写RecyclerView.ItemDecoration 的 ondraw 方法
不用理这个人,在所有关于Kotlin的帖子里都有!脑残粉的那种,不许别人说半个不字。。
小安是屌丝
小安是屌丝

引用来自“墨名次”的评论

引用来自“小安是屌丝”的评论

引用来自“kidfruit”的评论

引用来自“墨名次”的评论

我怎么觉得有那么多人认为javaer学不会kotlin一样
因为很多javaer码农都算不上,顶多码畜,学java已经花了很多脑细胞了,没脑力再去学新东西。

1.javaer会等这门语言相当普及了再学,因为一门语言不需要花一周
2.javaer想花更多时间在架构的研究上,因为永远不会过时.

我还以为一个小时入门,两个小时直接开发呢

这样说吧,只有新手才会如此在乎语言,因为那是他们的唯一优势了,也许连这个优势都没有
orpherus
orpherus

引用来自“德莫罗”的评论

不会花时间去学了,学了工作上也用不上。公司开发语言和个人爱好两码事。

还是有关系的,有时候某些team的选型,取决于少数几个人的个人喜好而已,稍微大点儿的公司,都会用十种以上语言。
orpherus
orpherus
如果一个新语言,节省的时间还没学语言都时间多,那确实没必要学了,不划算
墨名次
墨名次

引用来自“小安是屌丝”的评论

引用来自“kidfruit”的评论

引用来自“墨名次”的评论

我怎么觉得有那么多人认为javaer学不会kotlin一样
因为很多javaer码农都算不上,顶多码畜,学java已经花了很多脑细胞了,没脑力再去学新东西。

1.javaer会等这门语言相当普及了再学,因为一门语言不需要花一周
2.javaer想花更多时间在架构的研究上,因为永远不会过时.

我还以为一个小时入门,两个小时直接开发呢
小安是屌丝
小安是屌丝

引用来自“kidfruit”的评论

引用来自“墨名次”的评论

我怎么觉得有那么多人认为javaer学不会kotlin一样
因为很多javaer码农都算不上,顶多码畜,学java已经花了很多脑细胞了,没脑力再去学新东西。

1.javaer会等这门语言相当普及了再学,因为一门语言不需要花一周
2.javaer想花更多时间在架构的研究上,因为永远不会过时.
潘-C
潘-C

引用来自“闲大赋”的评论

能用java解决的用java,不能用java解决的用python,就算学了kotlin,这俩样还得精通。
:100:
德莫罗
德莫罗
不会花时间去学了,学了工作上也用不上。公司开发语言和个人爱好两码事。
评论专用
评论专用
第三方语言如果使用java的类库,那么语言本身的优势体现不出来多少,java类库并不支持第三方语言的各种牛逼写法调用,如果不使用java的类库,完全使用第三方语言自己的,又实在太匮乏

不信?那举个例子:用kotlin引用个lucene试试,看看kotlin的优势能发挥多少

天天看这种文章,想起当年刚接触scala时的自己了,看java横竖都不顺眼,逢人便宣传scala的好,恨不得所有项目都用scala重写,后来真正使用一段时间,用到一些java类库之后发现,第三方语言真不是包治百病,从那之后再也没有为第三方语言布道过,哪个用着舒服用哪个

至于某些人因为别人不打算转kotlin就说别人智商低学不会的,我也是醉了
为什么我会弃Java,选择了Kotlin——专访《Java编程思想》作者 Bruce Eckel

点击上方“CSDN”,选择“置顶公众号” 关键时刻,第一时间送达! 这是前不久我们发布《Kotlin或将取代Java》一文之后,来自网友们的部分声音。 可以看到:作为编程语言界的老大——Java仍然...

csdnnews
05/30
0
0
快速高效学习 Kotlin | Kotlin Bootcamp 课程介绍

Kotlin Bootcamp Udacity 是一套免费、自控进度的在线课程。通过该课程,您可学习到 Kotlin 编程语言的各项基本知识。此次的 Kotlin 入门课程由 Google 的专家与 Udacity 携手打造,适合于有...

谷歌开发者
05/30
0
0
堕落 Java vs 新贵 Python,2018 年最应该学习哪一门编程语言?

  2017 年,编程语言领域发生了巨大的变化,一方面,Java、Kotlin 等语言在企业和移动开发方面吸引了很多开发者的关注;另一方面,对 Web 开发至关重要的 JavaScript 生态系统也在不断扩大...

CSDN
01/03
0
0
Android 开发者自述:为什么我要改用 Kotlin?

编者注:Google I/O 2017 首日 Keynote 刚刚落幕,其中 Google 宣布 Android 系统将对 Kotlin 提供 first-class 的支持算是一个非常重磅的新闻。对于大众来说,Kotlin 编程语言可能是相对陌生...

两味真火
2017/05/19
10.2K
98
如何看待 Kotlin 成为 Android 官方支持开发语言?

在刚刚结束的谷歌 I/O 2017 开发者大会上,官方宣布将支持 Kotlin 作为 Android 开发的 First-Class 语言。一石激起千层浪,消息一出,立即引发了国内外相关从业者对此事件的广泛关注和热烈讨...

局长
2017/05/23
4.1K
54

没有更多内容

加载失败,请刷新页面

加载更多

linux学习-0919

linux和windows互传文件 用户配置文件和密码配置文件 用户组管理 用户管理 一、linux和windows互传文件 linux和windows可以互相传输文件,但是需要使用xshell 并且安装lrzsz包: yum insta...

wxy丶
26分钟前
1
0
收集几个开源的微信小程序开发框架

1、 mpvue mpvue 是美团点评开源的一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小...

哥本哈根的小哥
33分钟前
1
0
Golang CSP并发模型

今天介绍一下 go语言的并发机制以及它所使用的CSP并发模型 CSP并发模型 CSP模型是上个世纪七十年代提出的,用于描述两个独立的并发实体通过共享的通讯 channel(管道)进行通信的并发模型。 CS...

xtof
33分钟前
1
0
用chrome在电脑上模拟微信内置浏览器

先了解安卓微信和Ios微信的UA(User agent:用户代理) 安卓微信UA: mozilla/5.0 (linux; u; android 4.1.2; zh-cn; mi-one plus build/jzo54k) applewebkit/534.30 (khtml, like gecko) ve......

可达鸭眉头一皱
40分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部