Kotlin学习之路(1)环境介绍及安装

2021-04-07 15:07:53 浏览数 (1)

最近发现很多公司对于Android开发者都要求又提升了一些,比如熟悉Kotlin的开发,会使用React Native,会使用Flutter开发语言,要么就会对前端有一定的基础小程序 Vue等等。。。 在众多知识中我选择学习Kotlin,其原因Kotlin作为谷歌霸霸主推的语言,而且它是一种兼容Java的语言,还有就是看到很多Android开发者都在使用Kotlin写项目。在大环境的驱使下,我选择学习这门新语言。

【Kotlin语言的简介】

1)Kotlin语言的介绍

Kotlin是一种基于JVM的新型编程语言,它完全兼容Java语言,Kotlin代码可以完全编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行,与Java语言相比Kot具备一下几点优势 ● Kotlin更简洁,完成相同的业务功能Kotlin代码通常只有Java代码的三分之一 ● Kotlin更安全,在编码阶段就能自动检出常见的空指针问题 ● Kotin更强大,它提供了拓展函数 默认参数 接口委托 属性代理等,但是Java不具备这些高级特性,从而Kotlin可以完成更复杂的业务逻辑。

2)Android官方语言

(百度的资料)

Kotlin很早就被运用到Android开发中,之前一直作为Android Studio的插件提供下载

2017年5月谷歌宣布将Kotlin纳入Android Studio开发的官方语言,这就意味着Android Studio对Kotlin的编译支持会大大增强。

2017年10月 Android Studio推出正式版3.0,从3.0版本开始Android Studio自动集成Kotlin插件,在安装Android Studio3.0时候就连带着配置了Kotlin的开发环境

2017年11月Kotlin推出了1.2的发布版,该版本具有更好的阔平台性,编译性能也远远大于1.1版本,同时更好的支持Android开发。

【Kotlin开发工具】

Kotlin开发工具去Kotlin语言中文站上发现有一下几个 https://www.kotlincn.net/

我这里所使用的则Android Studio3.2

操作流程一样,跟使用Android Studio新建Java项目一样,只不过要选择Ktolin

【Kotlin简单配置】

1)Kotlin配置

Android Studio虽然插件中带有kotlin的配置,但需要在build.gradle中配置

apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ 在文件的末尾dependencies中增加对Kotlin插件库的编译声明 implementation”org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version”

要想使用Anlo库得自行依赖一下

代码语言:javascript复制
    implementation "org.jetbrains.anko:anko-sqlite:$ankoVersion"
    implementation "org.jetbrains.anko:anko-sdk15:$ankoVersion"
    implementation "org.jetbrains.anko:anko-sdk15-listeners:$ankoVersion"
    implementation "org.jetbrains.anko:anko-design:$ankoVersion"
    implementation "org.jetbrains.anko:anko-design-listeners:$ankoVersion"
    implementation "org.jetbrains.anko:anko-appcompat-v7-listeners:$ankoVersion"

简单的使用

最后贴出我的build.gradle配置文件

代码语言:javascript复制
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext.kotlin_version = '1.2.61'
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.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 {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

app文件下的build.gradle配置文件

代码语言:javascript复制
apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.xiaya.mykotlin"
        minSdkVersion 17
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation "org.jetbrains.anko:anko-sdk15:0.9.1" // So here it's 15 too
    implementation "org.jetbrains.anko:anko-appcompat-v7:0.9.1"
    implementation "org.jetbrains.anko:anko-design:0.9.1"
    implementation "org.jetbrains.anko:anko-recyclerview-v7:0.9.1"
}

2)Kotlin简单使用

以前开发者想要操作控件的时候,必须findViewById。但是使用Kotlin语言的时候,只需要在所处的Activitity添加一行

代码语言:javascript复制
import kotlinx.android.synthetic.main.activity_main.*

Kotlin的控件变量就会自动映射,无需findViewById

代码语言:javascript复制
  tv.text = "你好哈"
  btn.setOnClickListener { toast("点了一下") }

这里的toast方法是Anko库中的方法,使用者需要依赖即可使用。

小结

通过这次学习应该要掌握的技能 (1) 了解Kotlin的简介以及所使用的开发工具 (2) 可以使用Android Studio运行成功一个Kotlin项目 (3) 使用Kotlin进行一些简单操作

0 人点赞