Kotlin之路-环境搭建

最近在看关于JAVA的一些资料,无意中看到了关于JVM语言的讨论,其中有说到Java、Kotlin、Scalar和Groovy,Groovy接触过一段时间,但是现在印象不是很深了,让我比较刚兴趣的是Jetbrains公司开发的Kotlin语言,查阅了相关的资料才知道原来这个家伙在Android开发领域应用的挺火的,相比传统的Java,它写法简洁明了,仅用少量的代码就能写出安全的逻辑。

关于Kotlin和其他JVM语言的比较我就不说,还是动手实践搭建一个Kotlin的开发环境吧。

虽说Kotlin是Jetbrains公司开发的,自然在自己的IDE中支持,但是Eclispe也是可以支持的,只需要下载插件就可以了。

安装插件

环境

  • Windows 10
  • eclipse mars
  • IntelliJ IDEA 2016.1.1
  • JDK 8

在eclipse的主界面中菜单栏下的Help - Eclipse Marketplace...打开Eclipse软件市场,搜索Kotlin关键字,可以得出相关的搜索结果。在搜索的结果中选择Kotlin Plugin for Eclipse插件,点击Install进行安装。安装的过程中需要同意相关的安装协议,安装完成后需要重启Eclipse才能生效。

安装Kotlin插件

新建Kotlin项目

跟新建java项目的步骤一样,新建一个Project,找到Kotlin目录,选择Kotlin Project,Next之后填写项目的存放路径Finish即可。新建出来的项目跟普通的java项目结构差不多。

新建Kotlin项目

代码测试

新建一个Kotlin文件,保持优良传统,输出一个helloworld,如下代码:

新建Kotlin文件

1
2
3
4
5
6
7
package com.oopsguy.main

fun main(args : Array<String>) {

print("Hello World");

}

跟java的main函数是一样的,但Kotlin的入口方法不必放在类中:

1
2
3
4
5
6
7
8
9
10
11
package com.oopsguy.main;

public class Entry {

public static void main(String[] args) {

System.out.println("Hello World");

}

}

hello world

在Kotlin工程中,是可以编写普通的java代码,然后用kotlin代码调用,其实他们都可以互相调用:

java代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package com.oopsguy.bean;

public class User {

private String username;

public User() {

}

public void setUsername(String username) {
this.username = username;
}

public String getUsername() {
return this.username;
}

}
Kotlin调用java类
1
2
3
4
5
6
7
8
9
package com.oopsguy.main;

fun main(args : Array<String>) {

var user = User();
user.username = "Oopsguy";
print("Hello " + user.username);

}

在JetBrains的IDEA中开发模式也差不多,安装步骤几乎没有,默认安装了就支持Kotlin了,在新建项目时选择项目类型为Kotlin就可以了。

IDEA中新建Kotlin项目

同样写个单元测试测试一些代码:

1
2
3
4
5
6
7
8
9
10
11
12
package com.oopsguy.model

import java.io.Serializable

data class User(
var id: Long?,
var userName: String?,
var password: String?
) : Serializable {


}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package test

import org.junit.Test
import com.oopsguy.model.User;
import java.util.*

class Test {

@Test
fun test() {

var user = User(
id = 100L,
userName = "Oopsguy",
password = UUID.randomUUID().toString()
);

println(user.userName);
println(user);

}

}

IDEA中单元测试运行结果

感觉上面的例子有点low,哈哈,不过还是要务实的好,慢慢来,慢慢学习,这也是作为本人学习之路上的点滴记录!