Android 10 Kotlin编程通俗演义
上QQ阅读APP看书,第一时间看更新

1.1 开发环境配置

开发环境的配置仅需两步:安装JDK;安装IDE。

1.1.1 安装JDK

在地址“https://www.oracle.com/technetwork/java/javase/downloads/index.html”中选择要下载的JDK,见图1-1。

单击图1-1箭头所指图标,进入新页面,在最下面能看到图1-2所示的内容。

图1-1

图1-2

注意一定要选择“Accept License Agreement(同意许可协议)”,才可以用鼠标单击下面的文件链接。

如果是Windows,建议选择可执行文件(它是安装包,可以自动设置很多配置),并且在安装过程中不要改变默认安装路径,这样不会引起不必要的麻烦。

需要注意的是,JDK安装到的路径中不能有中文,否则会引起莫名其妙的问题。默认安装位置一般是“系统盘:\Program files”。

1.1.2 安装IDE

仅有JDK虽然可以开发软件,但是要手动维护一切,可以借助开发工具来提高编程效率。Kotlin是JetBrains开发出来的,而JetBrains的主业为开发工具,所以选择JetBrains家的IDEA。

IDEA可以说是Java编程的首选IDE,当然也是Kotlin的首选,它的官网地址是“https://www.jetbrains.com/idea/”。下载IDEA很简单,在页面中单击图1-3所指的“DOWNLOAD”图标即可。进入下载页面,如图1-4所示。

图1-3

图1-4

有两个版本可供选择:Ultimate(旗舰版)和Community(社区版)。旗舰版功能强大,但是要收费;社区版功能少,是免费的。选择社区版来学习Kotlin就足够了。

下载的文件是一个安装包,运行它即可安装IDEA。安装过程最好保持默认设置,安装完就可以用。

跟JDK一样,注意IDEA所安装到的路径中不能有中文,否则亦会引起莫名其妙的问题,它的默认安装位置一般是“系统盘:\Program files”。

1.1.3 创建第一个Kotlin工程

其实Android的IDE Android Studio就是IDEA。Google为IDEA开发了Android插件,把它和IDEA绑定在一起(取名为Android Studio)供我们下载,所以Android Studio的界面与IDEA的界面是一样的。

第一次运行IDEA,会出现如图1-5所示的页面。

IDEA的功能项有“创建新工程”(Create New Project)“引入工程”(Import Project)“打开已有工程”(Open)“从版本控制系统导入工程”(Check out from Version Control)。要创建新工程,选择第一项之后出现创建工程向导,如图1-6所示。

图1-5

图1-6

可以创建多种类型的工程,仅Kotlin工程就有多种形式,那么选择哪一种呢?推荐创建基于Gradle的Kotlin/JVM工程。Gradle是当前如日中天的工程管理软件之一(另一个与它齐名的是Maven),主要用于管理Java工程,但是Kotlin与Java是同一“种族”,所以也适合使用Gradle管理。使用Kotlin可以开发多种程序:

  • Kotlin/JS表示用Kotlin开发JavaScript程序,其实是把Kotlin代码翻译成JavaScript代码,然后才能在浏览器或Node.js环境中执行。
  • Kotlin/JVM表示用Kotlin开发基于JVM的程序,也就是基于Java虚拟机运行的程序,其实就是以Kotlin代替Java编写代码,编译出的就是class文件。

建议选择Kotlin/JVM类型的工程,因为Kotlin对此类型支持得最好,在此类型的工程中可以使用Kotlin的所有特性。选好后单击Next(下一步)按钮,出现如图1-7所示的内容。

在图1-7中可以设置程序的名字,在GroupId(组名)中一般填入的是颠倒的域名,这里主要用于区分不同组织发布的程序,因为域名肯定是唯一的,所以都填写域名。本例中填的是“com.niuedu”,随手写的,只是为了演示一下。

ArtifactId(产品名)指的是程序名,默认与工程同名,所以最好不要用中文,中间也不能用空格等非常规字符,比如取名“HelloKotlin”就合乎规则和习惯。填完后,单击Next按钮,进入图1-8所示的页面。

图1-7

图1-8

可以修改工程的名字和工程所保存到的路径,这里就用默认的路径,单击Finish(完成)按钮,Gradle会根据配置自动生成一个工程,同时IDEA会进入编辑模式,如图1-9所示。

图1-9

整个工作区的构成非常主流化,左边是工程目录,右边是内容编辑区(现在没有打开任何文件)。注意下面的状态栏,左边这个小图标是切换左右竖向工具条的开关,初用者如果不小心点,就会找不着某些窗口。右边是进度条,要十分注意这个地方,如果此处有进度条或文字出现,则表示IDEA正在忙着做什么事,此时最好不要动工程中的文件,等IDEA忙完了,再编辑文件。尤其是第一次创建工程,可能需要很长时间,因为Gradle工程会严重依赖网络,自动下载很多文件,包括管理工程的插件以及工程所依赖的库,如果网速慢(这是很可能的,因为文件仓库服务器在国外),就可能需要漫长的等待。如果工程创建不成功,十有八九是因为网络问题导致某些文件没有下载成功,这时就需要重试(IDEA会提示重试)下载。

下面了解一下工程的组织结构。

1.1.4 工程组织结构

当工程创建成功后,可以看到图1-10这样的目录结构。

稍微解释一下:.gradle、.idea、gradle这三个文件夹是IDEA自己产生的,用于工程管理,我们不用它们。

src下是工程源码和非源码文件的保存地,但是不能随便放这些文件,src/main下存放的是源码,java下存放的是Java源码,kotlin下存放的是kotlin源码,resources下存放的是非源码文件,比如图片、配置文件等。test与main的目录结构相同,test起什么作用呢?它下面存放的是单元测试代码。

图1-10

注意!这种目录结构是固定的,不要试想通过一些配置来改变目录的名字或作用,这种理念名曰“约定大于配置”。

根目录下的build.gradle文件是整个工程管理的核心文件,因为它是工程的配置文件,当前它的内容是这样的:

这些代码是用Groovy语言编写的,配置了工程的一些工具或参数,比如工程管理所需插件(Plugins)、源码兼容性(Source Compatibility)、仓库(Repositories)、依赖的库(Dependencies)等。改动比较多的是依赖库。

至于根目录下的其他文件,都是与Gradle相关的配置文件或脚本工具,也是自动生成的,我们不需要关心。

虽然工程下有这么多文件,但是这个工程是空工程,因为没有实质的程序代码,下面就来添加代码完成第一个程序。

1.1.5 添加代码

与Java相似,先创建一个包,在包下再创建文件,与Java不同,main函数不用写在类中,直接作为全局函数即可。

首先创建一个包,见图1-11。

图1-11

用鼠标右击“kotlin”目录,在弹出的快捷菜单中选择“New”→“Package”,出现图1-12所示的界面。在这里填上包名,单击“OK”按钮,会在main/java下创建com.niuedu包,在包上右击,弹出如图1-13所示的快捷菜单。

图1-12

图1-13

选择“Kotlin File/Class”之后,出现图1-14所示的界面。

接下来选择所创建文件的类型,填入文件名“HelloApp”,选择“File”并双击,会在main/kotlin/com.niuedu下添加文件HelloApp.kt。编辑此文件,最终内容如下:

     package com.niuedu
     fun main() {
          println("Hello world!")
     }

图1-14

Main()函数很简单,其内容是打印一条文本。代码有了,如何运行呢?请看下节讲解。

1.1.6 运行程序

与Java工程一样,需要先配置运行方式。单击图1-15所示的位置,进入配置页面。

图1-15

图1-16是运行方式的配置页面。

图1-16

单击左上角的“+”图标,添加一条运行方式。选择正确的方式,这里应选“Kotlin”,如图1-17所示。

图1-17

选择后则会出现如图1-18所示的界面。

将运行方式取名为“app”。在“Main class”字段填入的类名对应着HelloApp.kt文件,虽然main函数是全局函数,但是因为Kotlin代码最终要转成class,所以它必然会有一个主类,从这里的类名可以看出Kotlin文件是如何与Java类对应的。

最后要注意的是,“Use classpath of module”字段需选择“HelloKotlin.main”,否则找不到HelloAppKt类。完成后单击“OK”按钮,回到主页面,此时可以看到运行方式旁边的图标变成绿色了,如图1-19所示。

图1-18

此时可以单击此图标以运行程序,程序的运行结果就是在控制台窗口中输出一行文本,如图1-20所示。

图1-19

图1-20

至此,第一个程序运行成功,下面就快速学习一下Kotlin的语法。