短期不看好 KotLin 原因

简介: Google IO 2017 上宣布,将Kotlin语言作为安卓开发的官方语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。谷歌称还将与JetBrains公司合作,为Kotlin设立一个非盈利基金会。

Google IO 2017 上宣布,将Kotlin语言作为安卓开发的官方语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。谷歌称还将与JetBrains公司合作,为Kotlin设立一个非盈利基金会。

Kotlin 是一个基于 JVM 的静态类型编程语言Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行(是不是因为这一特性谷歌选择它,最终代替Java和JVM?现在只是猜想)

Kotlin的第一个Issues在2011年,相比Java的1995它还太年轻,但由于Google的选择,它会更快速的成长。就从Google IO 2017 以来这两天,Kotlin的文章数量,就可窥见一般。


CSDN随即推出最新一期观点:Android 新推出的官方语言 Kotlin 会取代 Java 么?


我们看到,正方观点的文章有很多,可反方投票的人很多,文章却没有一个;

这让我这个不懂Kotlin的人也想写点什么!

下面我们就来看一看有哪些不被看好的原因:

1、相比Java,它还太年轻

这意味着社区还不成熟,很多问题还没有暴露出来,你在网上也不容易找到解决方案;

你去提问,由于会的人少,也很难及时得到正确的解答;

成熟的框架少,当然Spring可能正在使用Kotlin来重写;

但是,如果你喜欢尝鲜,喜欢踩坑,这是一个好选择;

当然,现在不学,等什么都OK了再学就错过风口了;

2、想吃语法糖,还是需要剥皮的

它的语法也不是完美到无可挑剔,有些语法糖还是让人感觉多此一举。

var currentVersionName : String = "1.0" //显式标明类型
这种语法也不够简洁,既然显示标明还不如直接用
String str = "1.0";

为了兼容Java,也做了一定的牺牲,例如语句结束符分号;你到底是写还是不写呢?

解决空指针异常的方法是后面加问号,这是学习了Freemarker的语法吗?

fun main(args: Array<String>) {
    val person: Person? = null
    String abc = "123";
    person?.name = "John"
    println("hello world" + person?.name )
}

百分百兼容Java,你在Kotlin文件中写一句Java代码试试!上面这段加了“

String abc = "123";

”就异常满天飞了。

所以说,所谓的兼容只是允许同时使用两种语言编写各自的文件,而不是允许你在一个文件中用两种语言。

你能理解这些异常是神马意思吗?

另外有文章提到使用扩展的方式取代Util类,完全不能理解。

有些语法上也确实挺简洁的,可以参考:http://blog.csdn.net/sergeycao/article/details/54984108

3、各大招聘网站招聘Kotlin职位的数量用手指可以数过来

感兴趣的可以去自己知道的招聘网站搜索一下看看。

这就有一个很严重的问题,你学了可以没有公司用,短期只能是知识储备,当然有一名话说的好:机会是给有准备的人的;

4、排名太低

通过 https://www.tiobe.com/tiobe-index/ 可以看出,kotlin 还没有进入前 50 名;从排名可以看出它目前的认可程度还比较低。

小结

这里只是列举了几个短期不看好 KotLin 原因,长期来说,Google选择了它,你认为Google错了的机率有多大呢?

如果你预见它比较有潜力,有发展,如果现在还不快点开始学习它的话,等到上面几个原因都消失的时候,那就为时已晚了。

======================文档信息===========================

版权声明:非商用自由转载-保持署名-注明出处

署名(BY) :testcs_dn(微wx笑)

文章出处:[无知人生,记录点滴](http://blog.csdn.NET/testcs_dn)

==============本文首发于个人微信订阅号(微wx笑)============


目录
相关文章
|
7月前
|
Java Kotlin
kotlin不容忽视的小细节
kotlin不容忽视的小细节
24 0
|
2月前
|
Rust 安全 Java
为什么 Rust 备受开发者青睐?
【2月更文挑战第1天】为什么 Rust 备受开发者青睐?
|
3月前
|
Java 编译器 API
告别KAPT!使用 KSP 为 Kotlin 编译提速
告别KAPT!使用 KSP 为 Kotlin 编译提速
116 0
|
安全 Java 大数据
带你踏入Kotlin大门(一)|kotlin初识
作为一名 Java 使用者,相信大家对 Java 的各种规范已经深入了解,这些规范是一种行业标准,它使得 Java 具有了更好的兼容性。但随着函数式编程的兴盛,这些规范又开始束缚了开发者的创造,成为了拖累 Java 的因素。
|
人工智能 Rust 机器人
马斯克:我是 Rust 粉丝,但为了性能会选择 C
马斯克:我是 Rust 粉丝,但为了性能会选择 C
188 0
马斯克:我是 Rust 粉丝,但为了性能会选择 C
|
Java
工作几年后再来总结下Java泛型
泛型是 Java 的高级特性之一,如果想写出优雅而高扩展性的代码,或是想读得懂一些优秀的源码,泛型是绕不开的槛。
86 0
|
安全 前端开发 程序员
Kotlin可能带来的一个深坑,终局之战
Kotlin可能带来的一个深坑,终局之战
Kotlin可能带来的一个深坑,终局之战
DHL
|
XML 缓存 算法
Kotlin 插件的落幕,ViewBinding 的崛起
我们看一下如何在项目中使用 DataBinding 和 ViewBinding,因文章篇幅原因,这里仅仅演示在 Activity 中使用,更多用法可以查看 Binding 库的示例。
DHL
403 0
Kotlin 插件的落幕,ViewBinding 的崛起
|
Rust 安全 数据可视化
Rust Lang 2024 年路线图:拉平学习曲线、扩大规模
注意:这篇博文是https://lang-team.rust-lang.org/roadmaps/roadmap-2024.html上路线图的快照,原版本中可能会有后续更改,但在这篇博文中不会。请访问该页获取最新版本。
828 0
|
Rust JavaScript Dubbo
该不该在 Rust 上做点投资?
问题不是“该不该”,而是“怎么来”?
1525 0
该不该在 Rust 上做点投资?