Kotlin入门

Kotlin 语言官方参考文档 中文版

FAQ

Kotlin 是什么?

Kotlin 是一门针对 JVM、Android、JavaScript 以及原生平台的开源(OSS)静态类型编程语言。 它是由 JetBrains 开发的。该项目开始于 2010 年并且很早就已开源。第一个官方 1.0 版发布于 2016 年 2 月。

Kotlin 的当前版本是多少?

目前发布的版本是 1.3.11,发布于 2018-12-06。

Kotlin 是免费的吗?

是。Kotlin 是免费的,已经免费并会保持免费。它是遵循 Apache 2.0 许可证开发的,其源代码可以在 GitHub 上获得。

Kotlin 是面向对象还是函数式语言?

Kotlin 既具有面向对象又具有函数式结构。你既可以按 OO 风格也可以按 FP 风格使用,还可以混合使用两种风格。 通过对诸如高阶函数、函数类型和 lambda 表达式等功能的一等支持,Kotlin 是一个很好的选择,如果你正在进行或探索函数式编程的话。

Kotlin 能给我超出 Java 语言的哪些优点?

Kotlin 更简洁。粗略估计显示,代码行数减少约 40%。 它也更安全,例如对不可空类型的支持使应用程序不易发生 NPE。 其他功能包括智能类型转换、高阶函数、扩展函数和带接收者的 lambda 表达式,提供了编写富于表现力的代码的能力以及易于创建 DSL 的能力。

Kotlin 与 Java 语言兼容吗?

兼容。Kotlin 与 Java 语言可以 100% 互操作,并且主要强调确保你现有的代码库可以与Kotlin 正确交互。你可以轻松地在 Java 中调用 Kotlin 代码以及在 Kotlin 中调用 Java 代码。 这使得采用 Kotlin 更容易、风险更低。内置于 IDE 的自动化 Java 到 Kotlin 转换器可简化现有代码的迁移。

我可以用 Kotlin 做什么?

Kotlin 可用于任何类型的开发,无论是服务器端、客户端 Web 还是 Android。随着原生 Kotlin(Kotlin/Native)目前的进展,对其他平台(如嵌入式系统、macOS 和 iOS)的支持即将就绪。人们将 Kotlin 用于移动端和服务器端应用程序、使用 JavaScript 或 JavaFX的客户端、以及数据科学,仅举这几例。

我可以用 Kotlin 进行 Android 开发吗?

可以。Kotlin 已作为 Android 平台的一等语言而支持。已经有数百种应用程序在使用 Kotlin 用于 Android 开发,比如 Basecamp、Pinterest 等等。更多信息请查看 Android 开发资源

我可以用 Kotlin 进行服务器端开发吗?

可以。Kotlin 与 JVM 100% 兼容,因此你可以使用任何现有的框架,如 Spring Boot、 vert.x 或 JSF。另外还有一些 Kotlin 写的特定框架,例如 Ktor。 更多信息请查看服务器端开发资源

我可以用 Kotlin 进行 web 开发吗?

可以。除了用于后端 Web,你还可以使用 Kotlin/JS 用于客户端 Web。Kotlin 可以使用 DefinitelyTyped 中的定义来获取常见 JavaScript 库的静态类型版,并且它与现有的模块系统(如 AMD 和 CommonJS)兼容。 更多信息请查看客户端开发中的资源

我可以用 Kotlin 进行桌面开发吗?

可以。你可以使用任何 Java UI 框架如 JavaFx、Swing 或其他框架。 另外还有 Kotlin 特定框架,如 TornadoFX

我可以用 Kotlin 进行原生开发吗?

原生 Kotlin(Kotlin/Native)目前正在准备中。它将 Kotlin 编译为可以无需 VM 运行的原生代码。有一个技术预览发布版,但它还不能用于生产,并且 1.0 我们还没有针对所有平台支持的计划。更多信息请查看 Kotlin/Native 博文公告

哪些 IDE 支持 Kotlin?

所有主要的 Java IDE 都支持 Kotlin,包括 IntelliJ IDEAAndroid StudioEclipseNetBeans。另外,有一个命令行编译器可用,为编译和运行应用程序提供了直接的支持。

哪些构建工具支持 Kotlin?

在 JVM 端,主要构建工具包括 GradleMavenAntKobalt。还有一些可用于构建客户端 JavaScript 的构建工具。

Kotlin 会编译成什么?

当针对JVM 平台时,Kotlin 生成 Java 兼容的字节码。当针对JavaScript 时,Kotlin 会转译到 ES5.1,并生成与包括 AMD 和 CommonJS 在内的模块系统相兼容的代码。当针对原生平台时,Kotlin 会(通过 LLVM)生成平台相关的代码。

Kotlin 只针对 Java 6 吗?

不是。Kotlin 可以让你选择生成 Java 6 或者 Java 8 兼容的字节码。可以为较高版本的平台生成更优化的字节码。

Kotlin 难吗?

Kotlin 是受 Java、C#、JavaScript、Scala 以及 Groovy 等现有语言的启发。我们已经努力确保 Kotlin 易于学习, 所以人们可以在几天之内轻松转向、阅读和编写 Kotlin。 学习惯用的 Kotlin 和使用更多它的高级功能可能需要一点时间,但总体来说这不是一个复杂的语言。

哪些公司使用 Kotlin?

有太多使用 Kotlin 的公司可列,而有些更明显的公司已经公开宣布使用 Kotlin,分别通过博文、Github 版本库或者演讲宣布,包括 SquarePinterestBasecamp 还有 Corda

谁开发 Kotlin?

Kotlin 主要由 JetBrains 的一个工程师团队开发(目前团队规模为 40+)。其首席语言设计师是 Andrey Breslav。除了核心团队,GitHub 上还有 100 多个外部贡献者。

在哪里可以了解关于 Kotlin 更多?

最好的起始地方好是本网站(原文是英文官网)。从那里你可以下载编译器、 在线尝试以及访问资源、参考文档教程

有没有关于 Kotlin 的书?

已经有一些关于 Kotlin 的书籍。其中包括由 Kotlin 团队成员 Dmitry Jemerov 和 Svetlana Isakova 合著的 Kotlin in Action、 针对 Android 开发人员的 Kotlin for Android Developers

Kotlin 有没有在线课程?

有一些 Kotlin 的课程,包括 Kevin Jones 的 Pluralsight Kotlin Course、 Hadi Hariri 的 O’Reilly Course 以及 Peter Sommerhoff 的 Udemy Kotlin Course

在 YouTube 和 Vimeo 上也有许多 Kotlin 演讲 的录像。

有没有 Kotlin 社区?

有。Kotlin 有一个非常有活力的社区。Kotlin 开发人员常出现在 Kotlin 论坛StackOverflow 上并且更积极地活跃在 Kotlin Slack (截至 2018 年 10 月有近 20000 名成员)上。

有没有 Kotlin 活动?

有。现在有很多用户组和集会组专注于 Kotlin。你可以在网站上找到一个列表。 此外,还有世界各地的社区组织的 Kotlin 之夜活动。

有没有 Kotlin 大会?

有。官方的年度 KotlinConf 由 JetBrains 主办。 分别于 2017 年 在旧金山、2018 年在阿姆斯特丹举行。 Kotlin 也会在全球不同地方举行大会。你可以在网站上找到即将到来的会谈列表

Kotlin 上社交媒体吗?

上。最活跃的 Kotlin 帐号是 Twitter 上的。还有一个 Google+ 群组

其他在线 Kotlin 资源呢?

网站上有一堆在线资源,包括社区成员的 Kotlin 文摘通讯播客等等。

在哪里可以获得高清 Kotlin 徽标?

徽标可以在这里下载。请遵循压缩包内 guidelines.pdf 中的简单规则

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容