Kotlin对比Java——高效Android开发语言,值得一探究竟......

来源:互联网 发布:教务办公平台软件 编辑:程序博客网 时间:2024/05/16 05:36

这里写图片描述从谷歌 I/O 2017宣布将支持它作为Android开发的首推语言来看,引发了不少业界程序员的广泛关注。本博客从三方面讲解这个后起新秀。

什么是kotlin:

一门与Swift类似的基于 JVM(Java虚拟机,英文名:Java Virtual Machine) 的新编程语言,由 JetBrains(一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是Java编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA) 设计开发并开源。Kotlin既可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。它与Java具有很高的互通性和IDE对其良好的支持 。
JetBrains中国官网:http://www.jetbrains.com.cn/
Kotlin官网 :http://kotlinlang.org
kotlin_gitHub地址:https://github.com/JetBrains/kotlin

这里写图片描述

为什么使用Kotlin:

按照多年Java平台开发经验JetBrains的说法,他们认为Java编程语言有一定的局限性,由于开发平台需要向后兼容,它们不可能或很难得到解决。因此,他们创建了Kotlin————兼容Java的语言。
  1. 编译速度至少同Java一样快
    比Java更安全 、能够静态检测常见的陷阱(如:开发最常见头疼的——引用空指针)。

  2. 比最成熟的竞争者Scala还易于使用

  3. 比Java语法更简洁,更通俗易懂,额外提供更多的特性(高阶函数、操作符重载、字符串模板)。
  4. 与Java高度可互操作,可以同时用在一个项目中
  5. 最新Kotlin 1.1.2-4提升了对 JavaScript 的编译,以及在 JVM, Android 和 JavaScript 上的协程(Coroutines)

Kotlin支持使用Eclipse、AndroidStudio开发,这里为大家讲解在AndroidStudio中的使用:

最新Kotlin开发环境配置

1、启动AndroidStudio,使用默认快捷键(Ctrl+Alt+S)打开搜索plugin,打开插件界面,点击BrowseRepository,搜索Kotlin,双击安装Kotlin
注意:考虑到网络延迟,以及翻墙等问题,小白提供福利,供大家下载安装使用————(http://needisk.com/fs/bj1u0s1t1g7o082886/) 。
2、以前配置繁琐,容易引起版本冲突,插件配好后,依旧不能正常使用,现在可以用AS一键配置了,我们选择最新的1.1.2-4版本 !
点击Tool->Kotlin->Configure Kotlin in Project
3、点击确定,接下来等待AndroidStudio下载相关配置(能翻墙的建议翻墙,速度很快哦!),编译完成以后,我们就可以运行这个Android应用了。
build.gradle会产生几行代码:

buildscript {ext.kotlin_version = '1.1.0'----------------------------    repositories {        jcenter()    }    dependencies {        classpath 'com.android.tools.build:gradle:2.3.2'        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"    }}apply plugin: 'kotlin-android'dependencies {     compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"}

点击Code->Convert Java File To Kotlin File

class MainActivity : AppCompatActivity(), View.OnClickListener {    private var tv: TextView? = null    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)        //控件        tv = findViewById(R.id.tv) as TextView        //监听        tv!!.setOnClickListener(this)    }    override fun onClick(v: View) {    }}

转换好以后我们会发现我们原本的java类起了一些变化,观察文件的扩展名,可以看到已经从.java变成了.kt文件,分号没有了继承变为了‘:’定义变量变为了 JavaScript中的Var
欢迎关注:Kotlin社区,及时了解最新相关动态资讯!

阅读全文
0 0
原创粉丝点击