Kotlin让Android更简单~

来源:互联网 发布:sftp 默认端口号 编辑:程序博客网 时间:2024/05/29 13:57

kotlin在android的应用,参考kotlin文档

Kotlin 非常适合开发 Android 应用程序,将现代语言的所有优势带入 Android 平台而不会引入任何新的限制:

  • 兼容性:Kotlin 与 JDK 6 完全兼容,保障了 Kotlin 应用程序可以在较旧的 Android 设备上运行而无任何问题。Kotlin 工具在 Android Studio 中会完全支持,并且兼容 Android 构建系统。
  • 性能:由于非常相似的字节码结构,Kotlin 应用程序的运行速度与 Java 类似。 随着 Kotlin 对内联函数的支持,使用 lambda 表达式的代码通常比用 Java 写的代码运行得更快。
  • 互操作性:Kotlin 可与 Java 进行 100% 的互操作,允许在 Kotlin 应用程序中使用所有现有的 Android 库 。这包括注解处理,所以数据绑定和 Dagger 也是一样。
  • 占用:Kotlin 具有非常紧凑的运行时库,可以通过使用 ProGuard 进一步减少。 在实际应用程序中,Kotlin 运行时 只增加几百个方法以及 .apk 文件不到 100K 大小。
  • 编译时长:Kotlin 支持高效的增量编译,所以对于 清理构建会有额外的开销,增量构建通常与 Java 一样快或者更快。
  • 学习曲线:对于 Java 开发人员,Kotlin 入门很容易。包含在 Kotlin 插件中的自动 Java 到 Kotlin 的转换器 有助于迈出第一步。Kotlin 心印 通过一系列互动练习提供了语言主要功能的指南。

kotlin用于Android的案例学习

Kotlin 已被一些大公司成功采用,其中一些公司分享了他们的经验:

  • Pinterest 已经成功地将 Kotlin 引入了他们的应用程序中,每个月有 1 亿 5 千万人使用。
  • Basecamp 的 Android 应用程序是 100% Kotlin 代码,他们报告了程序员幸福的 巨大差异,以及工作质量和速度的巨大改善。
  • Keepsafe 的 App Lock 应用程序也已转换为 100% Kotlin, 使源代码行数减少 30%、方法数减少 10%。

用于 Android 开发的工具

Kotlin 团队为 Android 开发提供了一套超越标准语言功能的工具:

  • Kotlin Android 扩展是一个编译器扩展, 可以让你摆脱代码中的 findViewById() 调用,并将其替换为合成的编译器生成的 属性。
  • Anko 是一个提供围绕 Android API 的 Kotlin 友好的包装器的库 ,以及一个可以用 Kotlin 代码替换布局 .xml 文件的 DSL。

参考网上的资料以及亲身使用,使用kotlin开发android得到的好处有很多,大大的简化了开发的过程,减少代码量。kotlin简单,易用,代码量少。kotlin最主要特点:

  1. 无缝对接java,可以java代码和kotlin代码互相调用
  2. 一键java转kotlin,如果你有遗留的java代码,可以一键转换
  3. 函数扩展功能,再也不知道啥叫继承

在这之后我将讲一下如何在自己的android项目中使用Kotlin,让我们能摆脱findviewbyid:

创建Kotlin项目

1.首先我们创建一个空项目,然后在setting->plugins中找到Kotlin并下载。




2.在app的gradle下加入如下代码

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



3.在project的gradle下加入如下代码

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.0.4"


最后在Code里面把java代码转化为Kotlin代码就可以了,转化后发现代码出现变化 快捷键ctrl+shift+Alt+K

class MainActivity : AppCompatActivity() {    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)}

代码变成了这个样子,运行起来发现程序正常。之后在进行最简单的hello world操作,像这样

textView.text = "hello kotlin"  //textView就是id

发现代码比以前少了,不需要再麻烦的findviewbyid,但是需要引入一个

import kotlinx.android.synthetic.main.activity_main.*  这样我们使用代码设置控件的属性就不需要在findview啦

运行程序,这样就能改变text的值


这样就完成了第一个kotlin的安卓程序,代码确实比以前少了很多!

4.接下来测试一下另一项控件,button的点击事件,如果不使用kotlin的话,曾今的代码是这样的

Button button = findviewbyid(R.id.button)button.setOnClickListener(new View.OnClickListener() {@Override public void onClick(View v) {Toast.makeText(this,"hello world",Toast.LENGTH_SHORT);}});

而现在,使用了kotlin以后,只需要简单的一段话就能搞定

butt.setOnClickListener {    Toast.makeText(this,"hello lambda",Toast.LENGTH_SHORT).show()}

 这样就能轻松完成点击弹出文字提示的效果,效果如图:


如果这样还是觉得代码有点复杂的话,还可以更加简便,kotlin还有一个功能,函数拓展,因为toast在很多地方都会用到,所以我们直接封装一个函数,新建一个kt文件,写上以下代码:

fun Context.toast(message:String,length : Int = Toast.LENGTH_SHORT){Toast.makeText(this,message,length)}

现在就可以让button的点击事件达到最简便

butt.setOnclickListener {toast("hello kotlin")}

只需要简单的一句话就能完成目的,使用kotlin的好处有很多,我这里就谈到一些最简单最基本的,讲了怎么摆脱以往的findview,kotlin具体有哪些好处以及使用还需要上网进一步的查询,我这里只讲一些简单的用法,可以查看后面给的学习链接。两个简单的实例,可以看到我们使用kotlin确实简化了android的开发过程,原本繁琐的代码变得更加简洁,这对开发android有莫大的帮助,这种变化显而易见,希望能得到帮助!

最后附上一些学习kotlin的链接:

使用Kotlin进行Android开发

Android开发必备知识:为什么说Kotlin值得一试

这本书适合你吗?

Kotlin Primer·第一章·启程

技术小黑屋


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 四线锁边机跳线怎么办 引流管伤口洞红怎么办 甘蔗卡在喉咙里怎么办 棉花被子生虫了怎么办 绗缝羽绒服钻毛怎么办 宝珠笔没墨水了怎么办 衣服上画的笔印怎么办 黑笔芯弄衣服上怎么办 圆珠笔油在皮上怎么办 不小心吞了水银怎么办 小孩吃了洗发露怎么办? 脸上被铅笔戳了怎么办 小孩吃了铅笔芯怎么办 小孩把橡皮吃了怎么办 用棉签掏耳朵里面疼怎么办 棉签头掉耳朵里怎么办 黑裤子老是粘毛怎么办 新买的裤子掉色怎么办 黑裤子容易粘毛怎么办 裤子粘了全部毛怎么办 纯棉裤子粘毛了怎么办 裤子粘毛怎么办怎么洗 黑裤子洗白了怎么办 新买床单有味道怎么办 新买的床单扎人怎么办 刚买的衣服皱了怎么办 橘子沾到衣服上怎么办 橘子水掉衣服上怎么办 菜汁滴在衣服上怎么办 饺子面和硬了怎么办 化纤衣服烫亮了怎么办 衣服穿久了发亮怎么办 买的毛衣长了怎么办 买的毛衣袖子长怎么办 新买的毛衣扎人怎么办 玻璃光纤线断了怎么办 家里光纤线断了怎么办 光纤线断了怎么办 找谁 光纤入户线断了怎么办 哈衣连体衣小了怎么办 毛巾用久了发硬怎么办