Kotlin 编程人员训练营 1:使用入门

此 Codelab 是面向编程人员的 Kotlin 训练营课程的一部分。如果您按顺序学习这些 Codelab,您将会充分发掘此课程的价值。根据您的知识水平,您也许可以浏览某些部分。本课程专为了解面向对象的语言并希望学习 Kotlin 的编程人员而设计。

简介

“面向编程人员的 Kotlin 训练营”课程将向您介绍 Kotlin 编程语言。在此 Codelab 中,您将了解使用 Kotlin 编程语言编程的优势,并安装 IDE 以便为第一课做好准备。

本课程专为了解面向对象的语言并希望详细了解 Kotlin 的编程人员而设计。如果您熟悉 C#,就会熟悉 Kotlin 的一些功能。如果您主要熟悉 Java 编程语言,可能会惊讶地发现代码的简洁性和可读性如何。

自 2017 年起,Google 已正式支持 Kotlin 开发 Android 应用。请阅读 Android 开发者博客上的公告。学习本课程内容是学习 Android Kotlin 基础知识的先决条件。

您应当已掌握的内容

您应熟悉以下内容/操作:

  • 静态和类型化现代编程语言(例如 Java 或 C#)的基础知识
  • 如何使用至少一种语言进行类、方法和异常处理的编程
  • 使用 IntelliJ IDEA、Android Studio、Eclipse 或 Visual Studio 等 IDE

学习内容

  • 如何使用 Kotlin REPL(读取-求值-输出循环)交互式 shell
  • Kotlin 代码的基本语法

您将执行的操作

  • 安装 Java 开发套件 (JDK) 和 IntelliJ IDEA,并熟悉部分 Kotlin 功能。

Kotlin 是一种由编程人员为编程人员打造的新式现代编程语言。它侧重于清晰度、简洁性和代码安全性。

健壮的代码

Kotlin 的创建者对此编程语言做出了各种设计决策,以帮助编程人员创建健壮的代码。例如,软件中的 null 指针异常不仅造成了经济损失和严重的计算机崩溃,还增加了不计其数的调试工作。因此,Kotlin 区分了可为 null 和不可为 null 两种数据类型,这有助于在编译时捕获更多错误。Kotlin 是强类型编程语言,能够从代码中推断出类型。此编程语言具有 lambda、协程和属性,这不仅可以减少您需要编写的代码量,而且也会减少 bug。

成熟的平台

Kotlin 自 2011 年推出以来一直被广泛使用,并且已于 2012 年开源。2016 年,发布了 1.0 版。自 2017 年以来,Kotlin 一直是构建 Android 应用的官方支持语言。此外,它还已纳入 IntelliJ IDEA 以及 Android Studio 3.0 及更高版本中。

简洁、易读的代码

用 Kotlin 编写的代码可以非常简洁。此编程语言旨在消除 getter 和 setter 等样板代码。例如,请参考以下 Java 代码:

public class Aquarium {

   private int mTemperature;

   public Aquarium() { }

   public int getTemperature() {
       return mTemperature;
   }

   public void setTemperature(int mTemperature) {
       this.mTemperature = mTemperature;
   }

   @Override
   public String toString() {
       return "Aquarium{" +
               "mTemperature=" + mTemperature +
               '}';
   }
}

可以用 Kotlin 照此进行简洁地编写:

class Aquarium (var temperature: Int = 0)

有时,简洁性目标和可读性目标相悖。Kotlin 旨在使用“适量的样板代码”,以确保可读性,同时保持简洁性。

可与 Java 互操作

Kotlin 代码可进行编译,因此您可以同时使用 Java 代码和 Kotlin 代码,并继续使用您喜爱的 Java 库。您可以将 Kotlin 代码添加到现有 Java 程序中;或者,如果您想完全迁移您的程序,IntelliJ IDEA 和 Android Studio 都包含用于将现有 Java 代码迁移到 Kotlin 代码的工具。

如果您的计算机上尚未安装最新的 JDK,请按以下步骤操作。您需要安装 JDK 才能运行 Kotlin 程序。

如需查看您已安装的 JDK 版本(如有),请在终端窗口中输入 javac -version

javac -version

您可以在 Java SE 下载页面上查看最新版本的 JDK。如果您已安装最新版本的 JDK,请跳至“安装 IntelliJ IDEA”。

第 1 步:卸载所有较旧版本的 JDK/JRE

在安装最新、功能最强大的版本之前,请先移除所有较旧版本的 JDK:

  • 对于 Windows,请依次选择 Control Panel > Add/Remove Programs
  • 有关 Mac 的说明,请参阅卸载 JDK

有关卸载旧版 JRE 的详细信息,请参阅如何在 Mac 上卸载 Java?如何在 Windows 计算机上卸载 Java?

第 2 步:下载 JDK

您可以访问以下网址免费下载 JDK:
http://www.oracle.com/technetwork/java/javase/downloads/index.html

  1. 点击 JDK 下的 Download 按钮获取最新的 Java SE 版本。
  2. 选择接受许可协议
  3. 选择适用于您的操作系统的 JDK。

第 3 步:安装 JDK(适用于 Mac)

在浏览器的 Downloads 窗口或文件浏览器中,双击 .dmg 文件以启动安装文件。

  1. 此时将显示 Finder 窗口,其中包含打开框的图标和 .pkg 文件的名称。
  2. 双击软件包图标以启动安装应用,然后按照显示的提示进行操作。
  3. 您可能需要输入管理员密码才能继续。
  4. 安装完成后,您可以随时删除 .dmg 文件以节省空间。

第 3 步:安装 JDK 和 JRE(适用于 Windows)

  1. 运行下载的安装程序(例如,jdk-12_windows-x64_bin.exe),这会同时安装 JDK 和 JRE。默认情况下,JDK 安装在 C:\Program Files\Java\jdk-12 目录中。JRE 安装在 C:\Program Files\Java\jre1.8.0_x 中,其中 x 表示版本号。
  2. 接受默认值,然后按照屏幕上的说明安装 JDK。

第 4 步:将 JDK 和 JRE 安装目录添加到 PATH(仅适用于 Windows)

Windows 会在当前目录和 PATH 环境变量(系统变量)中列出的目录中搜索可执行程序。

  1. 依次打开控制面板 > 系统 > 高级系统设置 > 环境变量
  2. 系统变量下,点击新建,然后添加名为 JAVA_HOME 的变量和 JRE' 目录,并向其中添加值。例如 C:\Program Files\Java\jre1.8.0_x,其中 x 是版本号。
  3. 系统变量下,向下滚动以选择路径,然后点击修改
  4. 将 JRE's bin 目录添加到 Path 的开头,后跟一个分号:%JAVA_HOME%\bin;
  5. 将 JDK' 的 bin 目录附加到 Path 的末尾,后跟一个英文分号。例如 ;C:\Program Files\Java\jdk-12\bin

第 5 步:验证 JDK 安装

  1. 如需验证 JDK 是否已正确安装,请在终端窗口中输入以下命令:
java -version
javac -version

第 1 步:下载并安装 IntelliJ IDEA

为您的操作系统下载 IntelliJ IDEA

Windows

  1. 运行您下载的 ideaIC.exe 文件。
  2. 按照安装向导中的说明操作。

Mac

  1. 如需装载 macOS 磁盘映像,请双击您下载的 ideaIC.dmg 文件。
  2. IntelliJ IDEA 复制到 Applications 文件夹。

Linux

  1. 请参阅下载的 .tar.gz 文件中的 Install-Linux-tar.txt

如需详细了解如何安装和设置 IntelliJ IDEA,请参阅安装 IntelliJ IDEA

第 2 步:验证 IntelliJ IDEA 安装

  1. 启动 IntelliJ IDEA。
  2. 安装系统提示您安装的所有更新和其他内容。
  3. 选择配置 &gt 检查更新,直到没有可用的更新为止。

创建一个 Kotlin 项目,以便 IntelliJ IDEA 知道您正在使用 Kotlin。

  1. Welcome to IntelliJ IDEA 窗口中,点击 Create New Project
  2. New Project 窗格中,选择左侧导航栏中的 Kotlin
  3. 在右侧面板中选择 Kotlin/JVM,然后点击 Next
  4. 将项目命名为 Hello Kotlin
  5. 点击 Finish

现在,您可以访问 Kotlin 的交互式 shell 的 REPL(读取-求值-输出循环)。一旦您按 Control+Enter(在 Mac 上,按 Command+Enter),系统就会解析您在 REPL 中输入的命令。

  1. 依次选择 Tools > Kotlin > Kotlin REPL 以打开 REPL。
  1. 将以下代码输入或粘贴到 REPL 中。
fun printHello() {
    println("Hello World")
}

printHello()
  1. Control+Enter(在 Mac 上,按 Command+Enter)。您应该会看到 Hello World,如下所示。
  1. 快速了解一下此 Kotlin 代码。fun 关键字会指定一个函数,后跟函数名称。与其他编程语言一样,圆括号用于函数参数(如果有),大括号用于括住函数的代码。不存在返回类型,因为函数不返回任何内容。另请注意,行尾没有分号。

恭喜!您已编写了您的第一个 Kotlin 程序。

  • Kotlin 与其他面向对象的编程语言类似。
  • 为您的操作系统安装最新版本的 JDK 以使用 Kotlin。
  • 安装 IntelliJ IDEA 以与 Kotlin 配合使用。
  • 在 IntelliJ IDEA 中,启动 Kotlin REPL (Tools > Kotlin > Kotlin REPL),以在交互式 shell 中练习。
  • 输入代码,然后按 Control+Enter(在 Mac 上,按 Command+Enter)运行此代码。
  • 以下是用 Kotlin 编写的“Hello World”:
fun printHello() {
    println ("Hello World")
}

printHello()

Kotlin 文档

如果您想详细了解本课程中的任何主题,或者遇到问题,最好访问 https://kotlinlang.org

Kotlin 教程

https://try.kotlinlang.org 网站包含丰富的名为 Kotlin Koans 的教程,一种基于网络的解释器,以及一套完整的示例参考文档。

Udacity 课程

如需查看有关此主题的 Udacity 课程,请参阅面向编程人员的 Kotlin 训练营

IntelliJ IDEA

您可以在 JetBrains 网站上找到 IntelliJ IDEA 文档

此部分列出了在由讲师主导的课程中,学生学习此 Codelab 后可能需要完成的家庭作业。讲师自行决定是否执行以下操作:

  • 根据需要布置作业。
  • 告知学生如何提交家庭作业。
  • 给家庭作业评分。

讲师可以酌情采纳这些建议,并且可以自由布置自己认为合适的任何其他家庭作业。

如果您是在自学此 Codelab,可随时通过这些家庭作业来检测您的知识掌握情况。

回答以下问题

问题 1

以下哪一项不是使用 Kotlin 语言的优势?

▢ Kotlin 区分可为 null 的数据类型和不可为 null 的数据类型。

▢ Kotlin 是构建 Android 应用支持的语言。

▢ Kotlin 旨在减少编写错误,减少编写错误的代码。

▢ 在 Kotlin 中,您的代码编译速度更快。

问题 2

如何启动 Kotlin REPL?

▢ 在命令行中输入 repl

▢ 在 IntelliJ IDEA 中创建 Kotlin 项目,然后选择 Run > Kotlin REPL

▢ 打开 IntelliJ IDEA,然后选择 File > Kotlin REPL

▢ 在 IntelliJ IDEA 中创建 Kotlin 项目,然后选择 Tools > Kotlin > Kotlin REPL

问题 3

在以下关于 Kotlin 和 Java 代码的表述中,哪一项是不正确的?

▢ Kotlin 代码和 Java 代码可以并排运行。

▢ 您可以将 Kotlin 代码添加到现有 Java 程序中。

▢ 您可以将现有的 Java 代码迁移到 Kotlin。

▢ Kotlin 代码的运行速度快于 Java 代码。

继续学习下一课:2. Kotlin 基础知识

如需大致了解本课程(包括指向其他 Codelab 的链接),请参阅面向编程人员的 Kotlin 训练营:欢迎学习本课程