1. 程式人生 > >kotlin開發思想入門

kotlin開發思想入門

失去的才是永恆的。 ——《泰坦尼克號》


文章目錄

什麼是kotlin?

kotlin的由來是Kotlina,那 Kotlina又是什麼? Kotlina是一個地名,該語言的發明者在Kotlina旅遊的時候,想到了如何改進現在的java語言呢,是的這玩意兒和java有關係,所以他發明的語言就叫做kotlin了。嗯,和java的命名一樣隨意。

總的來說,Kotlin 是一種在 Java 虛擬機器上執行的靜態型別程式語言,被稱之為Android 世界的Swift,由 JetBrains 設計開發並開源。Kotlin 可以編譯成Java位元組碼,也可以編譯成 JavaScript,方便在沒有 JVM 的裝置上執行。

在Google I/O 2017中,Google 宣佈 Kotlin 成為 Android 官方開發語言。
kotlin

kotlin和java有什麼區別?

  • 首先我們得認得kotlin的檔案,他就是以.kt為結尾的檔案,例如hello.kt
  • 和java相比較,句子的結尾再也不用寫分號“;”了
  • kotlin原始檔不需要相匹配的目錄和包,原始檔可以放在任何檔案目錄
  • 函式定義使用關鍵字 fun,引數格式為:引數 : 型別,例如:
fun sum(a: Int, b: Int): Int {   // Int 引數,返回值 Int
    return a + b
}

、、、、、、等等,其他的語法我在此不再贅述。如有需要可在下方留言

那麼kotlin到底改進了什麼?有什麼優點呢?

  • 易表現
    在Java中,如果我們要典型的資料類,我們需要去編寫(至
    少生成)這些程式碼:
public class Artist {
	private long id;
	private String name;
	private String url;
	private String mbid;
	
	public long getId() {
		return id;
	}
	public void setId(long id) {
		this.id = id;
	}
	public String getName(
) { return name; } public void setName(String name) { this.name = name; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public String getMbid() { return mbid; } public void setMbid(String mbid) { this.mbid = mbid; } @Override public String toString() { return "Artist{" + "id=" + id + ", name='" + name + '\'' + ", url='" + url + '\'' + ", mbid='" + mbid + '\'' + '}'; } }

如果我們使用kotlin,那麼我們只需要下面程式碼:

data class Artist(
	var id: Long,
	var name: String,
	var url: String,
	var mbid: String)
}

這個資料類,它會自動生成所有屬性和它們的訪問器,以及一些有用的方法

  • 空安全(空指標異常)
    在java開發中,我們如果想要程式可以正常執行,那麼它必須是空安全的,也就是說,當程式遇到空指標異常,並且沒有做空判斷的時候,那麼程式就會崩潰,這是我們最頭疼的事。
    但是kotlin是空安全的,因為我們需要通過一個 安全呼叫操作符 ( ? 或 !!)來明確地指定一個物件是否能為空。如果該物件可能為空,但是卻沒有加上安全呼叫操作符,那該程式就編譯不過。例如:
// 這裡不能通過編譯. Artist 不能是null
var notNullArtist: Artist = null
// Artist 可以是 null
var artist: Artist? = null

、、、、、、等等


這篇kotlin開發思想入門到此就結束了,可能有人就會問,“上面什麼也沒寫嘛,只有一些簡單的例子”,當然了,我的目的只是向大家介紹kotlin這個語言和java的區別和主要優點,讓大家能產生對kotlin的興趣,一篇博文也不可能能像一本書一樣介紹的那麼詳細。

畢竟2017年穀歌才開始推廣kotlin,國內的普及率還不是很高,大家看到這篇文章能夠知道kotlin也是好的,不過國內某些大公司已經開始用kotlin來開發安卓應用,之前拆包注意到百度網盤安卓版就是用kotlin寫的。

說實話國內現在的kotlin教程還沒有,都是一些零散的教程,但是有興趣的話,給大家推薦一本書《Kotlin for android Developers》。