使用kotlin来提高安卓开发效率

l_o_s · · 92 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Kotlin教程和Android开发环境搭建
传送门:http://www.runoob.com/kotlin/otlin-android-setup.html

这篇博文主要是介绍如何通过使用Kotlin,来提高我们开发安卓的效率,比如简化代码,提高运行效率等等。当然,事物总会有两面性,使用Kotlin也有一些劣势,比如编译时间“略长”于使用java。官方说是as faster as than java。但是keepsafe有一篇对二者进行编译时速度的测试文章,如其文所示,确实也是相差”无几”,但这个无几的意思是说速度慢了一点点。
好了,牛皮不多吹,官方性质的话也不多说,咱们还是说点有用的。接下来,我们就分几个步骤,来详细的讲解,如何在安卓开中,应用Kotlin来提高开发效率。

一、小试牛刀,优化findViewById。

作为安卓开发者,我们对findViewById()这个方法都很熟悉。我想大部分人,都会对大量的findview感到恶心。于是,有不少人,有如博主,就用了annotation(注解)来简化findView的步骤。但用注解findView有明显的缺陷:

1、注解本身的缺陷。对注解有所了解的朋友,都知道。注解采用反射机制,是在运行时,才对view进行findview。那么,就会导致运行时性能的开销,特别是影响到打开activity或其它view的速度,虽然可能感觉不出来,可能是理论上和数据上的性能优化。但只要是优势,我们就得说出来。
2、代码的行数增多(影响美观和可阅读性、想阅读性)。如果activity的view比较多,activity声明这些view的行数也会相应增加,导致打开activity,首先看到的是一整排长长的都是声明,多的可能达几十行。

既然我列出了这两个缺陷,那么Kotlin肯定是能解决这两个问题。如果解决不了,我也不会故意就讲这两个缺陷,我可能会讲更多的,比如方法名真JB长,比如findview后还得cast。至于怎么解决:

1、第一个问题,Kotlin官网只说了有这个优化,至于为什么和数据型证据是没给出来了,自己去做测试,也是有些难度和繁琐,我们只能相信店大不欺客了。
2、第二个问题,我就用代码+注释方式来解答。

// 这是xml文件里的TextView,注意一下id是helloTv
<TextView
   android:id="@+id/helloTv"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="Hello World!" />

// 这是xxx.java里面的代码
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : Activity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        // 直接用view的id,当成员变量使用,这里要注意import导入的是xml。
        helloTv.text = getString(R.string.app_name)
    }

}

通过对上文的了解,是不是开始对kotlin有一定的兴趣了?不,没兴趣,那么,Alt+F4。有,有兴趣。那么,咱们接着继续看。

本文来自:CSDN博客

感谢作者:l_o_s

查看原文:使用kotlin来提高安卓开发效率

92 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet