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的语言。
编译速度至少同Java一样快
比Java更安全 、能够静态检测常见的陷阱(如:开发最常见头疼的——引用空指针)。比最成熟的竞争者Scala还易于使用
- 比Java语法更简洁,更通俗易懂,额外提供更多的特性(高阶函数、操作符重载、字符串模板)。
- 与Java高度可互操作,可以同时用在一个项目中
- 最新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社区,及时了解最新相关动态资讯!
- Kotlin对比Java——高效Android开发语言,值得一探究竟......
- Android Support 包一探究竟
- Android开发必备知识:为什么说Kotlin值得一试
- Android开发必备知识:为什么说Kotlin值得一试
- Android第一开发语言—初探Kotlin
- 一探究竟之PullZoomView
- Android 开发一级语言——Kotlin 语法大揭秘
- Kotlin开发Android系列文章(一)——初识Kotlin
- FromHandle临时对象一探究竟
- Expedition 10.1是什么东东? 一探究竟
- Kotlin-------------Android 开发一级语言
- Android开发官方语言-Kotlin
- Kotlin-Android中取代java的一种开发语言
- Kotlin 将超越 Java 成为 Android 开发的第一语言?
- Kotlin 将超越 Java 成为 Android 开发的第一语言?
- Kotlin开发之旅《一》— 初学者Kotlin基础必备
- Kotlin开发Android入门(一)
- Android Activity生命周期一探究竟 及 主Activity里带Thread跳转时的注意事项
- py-faster-rcnn流程(2)——训练RPN网络一阶段
- 关于凸优化
- 嵌入式软件开发--03ad
- SearchLookUpEdit和 GridLookUpEdit
- 网站静态化处理—前后端分离—上(6)
- Kotlin对比Java——高效Android开发语言,值得一探究竟......
- CodeForces149D-Coloring Brackets
- TensorFlow-10-基于 LSTM 建立一个语言模型
- 如何用初级的JavaWeb知识写一个较简单的网站(三)
- Codeforces Round #418 (Div. 2) Codeforces 814A-D
- 【动态规划12】codeforces813D Two Melodies(官方题解翻译)
- iscsi
- 算法学习----给定入栈的顺序,判断另一个顺序是否为该入栈顺序的一个弹出顺序
- TensorFlow-11-策略网络