初探kotlin:创建第一个kotlin应用

2016年3月2日12:39:11 发表评论 14 views

使用kotlin开发Android创建Kotlin工程!

写在前面:

Kotlin是一种在 Java虚拟机上执行的静态型别编程语言,它主要是由俄罗斯圣彼得堡的JetBrains开发团队所发展出来的编程语言。该语言有几个优势

  1. 简洁
    它大大减少你需要写的样板代码的数量。
  2. 安全
    避免空指针异常等整个类的错误。
  3. 通用
    构建服务器端程序、Android 应用程序或者在浏览器中运行的前端程序。
  4. 互操作性
    通过 100% Java 互操作性,利用 JVM 既有框架和库。

Flipboard中国的Android项目确定了正式将Kotlin作为项目开发语言,这就意味着新增的代码文件将以Kotlin代码格式出现,而且同时旧的Java代码也将会陆陆续续翻译成Kotlin代码。使用Kotlin的开发者都会被它的简洁,高效,快捷等等特点震撼,这篇文章的目的主要是讲一下如何使用Androidstudio 创建一个kotlin应用。

1. 为Android Studio安装kotlin插件

在Android Studio中打开Settings->Plugins->Browse Repositories,输入kotlin搜索

初探kotlin:创建第一个kotlin应用

2. 创建Android项目

在Android Studio新建一个Android 工程kotlinTest,跟普通Android工程创建一样。打开File->New Projects->Application Name,输入”kotlinTest”。

初探kotlin:创建第一个kotlin应用

3. 配置工程

在工程的build.gradle中添加kotlin版本以及依赖:
初探kotlin:创建第一个kotlin应用

buildscript {
    ext.kotlin_version = '1.0.4' //kotlin版本
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0'
        //kotlin依赖
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

在module中的build.gradle文件中使用kotlin插件以及kotlin依赖:app的gradle下加入如下代码,

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

初探kotlin:创建第一个kotlin应用

4. 将Java代码转换成Kotlin

kotlinTest工程中默认MainActivity.java代码如下:

package edu.fjnu.cse.kotlintest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

打开该文件,使用快捷键Ctrl+Shift+Alt+K即可将该Java代码转换为Kotlin代码,也可以在Android Studio的菜单中使用Code->Convert Java File to Kotlin File进行转换。转换后的Kotlin代码如下:

package edu.fjnu.cse.kotlintest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
class MainActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
  }
}

分析语法变化:

  1. extends 变成 :
  2. 函数定义关键字变为了fun
  3. 分号消失
  4. 变量名称写在类型之前
  • yiisaa
  • 这是我的微信扫一扫
  • weinxin
  • zhengweiqiangcom
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: