kotlin和java开发android哪个好

2025-04-13 20:58:05
推荐回答(2个)
回答1:

初级工程师,2周Kotlin经验来分享我的视角:1.无缝的Java互调保证了不会出现什么绕不过的坑正式使用Kotlin之前尝试过Kotlin与DataBinding同用,但是在.kt文件中import DataBinding相关的类会编译报错,最后把所有与DataBinding相关的代码都放到.java中,在.kt中去调用。不了解Kotlin的反射与Java反射的差异,但是问题大概就是出在这里。2.Extension 带来的语法糖,甜过初恋举个栗子,各种system service再也不用强制类型转换了,只需写一个context的extension即可。事实上Anko库已经提供了大量的写好的extension。再也不用为了获取一个简单的service对象需要强制类型转换而换行了。。。我吧一些application wide的东西都存为application的property,让后给context一个extension,以后任何context来获取这些service就是一个简单的读property了。3.Lambda衍生出来的Builder,最碉堡的是Anko库可以用Kotlin像写xml一样写洁面了,还有DSL preview插件帮你。。。这样写出来的洁面不但加载速度快(少了xml解析时间),配置各种view也是很方便的。但是使用lambda也是有坑的,有些以回调为key的方法是不可以使用匿名对象的,否则没法取消。例如蓝牙低功耗扫描时startLeScan(callback: LeScanCallback)stopLeScan(callback: LeScanCallback) 这种,开始和结束是要同一个object的,所以不要使用lambda。其实这个很好理解,lambda很像匿名Runnable,只不过现在是一个获得了一等公民身份的方法。4.更多新一代语言的语法写起来很爽的,不多表5.工具链相对完整有个JetBrains的爹,插件更新紧跟语言版本。各路大神的加持,JakeWharton的好几个库都有Kotlin特别适配版,rx里面都有Kotlin版本了。。(事实上正在用RxKotlin,第一次使用rx)更多还在探索中。。。

回答2:

个人觉得android比较好,想学android开发,可以到磨砺营