前言: 今日新聞:谷歌宣佈,將Kotlin語言作為安卓開發的一級編程語言。 Kotlin由JetBrains公司開發,與Java 100%互通,並具備諸多Java尚不支持的新特性。 谷歌稱還將與JetBrains公司合作,為Kotlin設立一個非盈利基金會。 一、簡介: Kotlin 是一個基於 J ...
前言:
今日新聞:谷歌宣佈,將Kotlin語言作為安卓開發的一級編程語言。
Kotlin由JetBrains公司開發,與Java 100%互通,並具備諸多Java尚不支持的新特性。
谷歌稱還將與JetBrains公司合作,為Kotlin設立一個非盈利基金會。
一、簡介:
Kotlin 是一個基於 JVM 的新的編程語言,由 JetBrains 開發。JetBrains,作為目前廣受歡迎的 Java IDE IntelliJ 的提供商,在 Apache 許可下已經開源其Kotlin 編程語言。
可以理解為類似於iOS的Swift。
二、特性:
- 輕量級:
- 這一點對於Android來說非常重要。項目所需要的庫應該儘可能的小。Android對於方法數量有嚴格的限制,Kotlin只額外增加了大約6000個方法。
- 互操作:
- Kotlin可與Java語言無縫通信。這意味著我們可以在Kotlin代碼中使用任何已有的Java庫;因此,即便這門語言還很年輕,但卻已經可以使用成百上千的庫了。除此之外,Kotlin代碼還可以為Java代碼所用,這意味著我們可以使用這兩種語言來構建軟體。你可以使用 Kotlin開發新特性,同時使用Java實現代碼基的其他部分。
- 強類型:
- 我們很少需要在代碼中指定類型,因為編譯器可以在絕大多數情況下推斷出變數或是函數返回值的類型。這樣就能獲得兩個好處:簡潔與安全。
- Null安全:
- Java最大的一個問題就是null。如果沒有對變數或是參數進行null判斷,那麼程式當中就有可能拋出大量的 NullPointerException,然而在編碼時這些又是難以檢測到的。Kotlin使用了顯式的null,這會強制我們在必要時進行null檢查。
三、Android Studio中的配置
註意:
Android Studio是Intellij IDEA的插件實現,Intellij IDEA是由JetBrains開發,Kotlin 就是JetBrains創造的。所以,要想使用Kotlin,你必須先使用起來Android Stduio。
1、安裝插件 選擇這裡的Kotlin相關的插件安裝,有些文檔中介紹有2個插件,其實目前這一個包含另一個了,所以安裝一個就行,安裝完之後會要求你重新打開Android Studio。
2、重啟完Android Studio之後在任意一個包下右鍵New , 會發現多了一個"Kotlin File/Class" 和 "Kotlin Activity"
3、"Kotlin File/Class"即 Kotlin類或者文件
"Kotlin Activity"即 Kotlin的Activity類
4、試著建一個"Kotlin File/Class" 文件
發現右上角有一個配置選項“Configure” , 預設第一次使用都需要配置一下
選擇對所有modules配置還是對指定的配置
選擇OK後,會跳到build.gradle文件下,你會發現app下的build.gradle和根目錄下的build.gradle文件都會出現變化
註意黃色背景部分,沒有的自己手動添加上去。
根目錄下的build.gradle:
buildscript { ext.kotlin_version = '1.1.2-4' ext.support_version = '23.1.1' ext.anko_version = '0.8.2' repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir }
app目錄下的build.gradle:
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 25 buildToolsVersion "25.0.3" defaultConfig { applicationId "com.xqx.xautoviewgroup" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } lintOptions { abortOnError false } buildTypes { debug { // 顯示Log buildConfigField "boolean", "LOG_DEBUG", "true" versionNameSuffix "-debug" minifyEnabled false zipAlignEnabled false shrinkResources false signingConfig signingConfigs.debug } release { // 不顯示Log buildConfigField "boolean", "LOG_DEBUG", "false" //混淆 minifyEnabled true //Zipalign優化 zipAlignEnabled true // 移除無用的resource文件 shrinkResources true //前一部分代表系統預設的android程式的混淆文件,該文件已經包含了基本的混淆聲明,後一個文件是自己的定義混淆文件 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } sourceSets { main.java.srcDirs += 'src/main/kotlin' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:25.3.1' compile 'com.android.support:design:25.3.1' compile 'com.android.support:support-v4:25.3.1' compile 'com.github.bumptech.glide:glide:3.6.1' compile 'com.jph.takephoto:takephoto_library:4.0.3' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.anko:anko-common:$anko_version" } repositories { mavenCentral() }
接下來就可以進行Kotlin的編碼實戰了。
淺談Kotlin(一):簡介及Android Studio中配置