你应该学 Kotlin 吗?
作者: bennyhuo 链接:http://www.imooc.com/article/18195 来源:慕课网
自从5.18 Google IO 大会以来,关注 Kotlin 或者说想要搞清楚 Kotlin 是什么的人越来越多了。有不少朋友表示在这之前自己都没有听说过 Kotlin,现在突然 Google 空降一个干儿子,你是不是就慌了呢?
下面我列举几个常见的问题,希望能为大家解惑~
Kotlin 是什么?
我刚刚接触 Kotlin 是在两年前,那会儿的 Kotlin 更像是 A Better Java,它能做 Java 能做的任何事情,而且还要更出色。那时候我们还经常称 Kotlin 是一门 Jvm 语言,尽管 Kotlin-js 也在实验当中;而现在,我们只好称 Kotlin 是一门全栈的静态语言了,因为小伙儿长壮实了,不仅通吃 Jvm,Android 和前端,连 Native(注意不是 Jni)也要搞搞,真是前景一片大好。
说白了,它就是一门编程语言而已,在 Android 上被 Google 钦点,就像 Swift 之于 Objective-C,并不是什么洪水猛兽,不应该觉得害怕和恐慌。
没有 Java 基础,我应该学 Kotlin 吗?
应该学,作为一个有追求的程序员,你不仅要学 Kotlin,而且要了解各类型的语言,这跟你什么基础没有关系,大家都有过一个什么都不会的曾经。
当然,现阶段,Kotlin 跟 Java 关系实在密切,只要你希望用 Kotlin 开发 Jvm、Android 相关的应用程序,Java 你就必须学会,而且要学好,因为它太重要了,除了大量的 Jdk、Sdk 源码都是 Java 的以及大量的资料都是 Java 的 之外,Java 更是 Java 系语言的标杆,你需要学习掌握它,了解这一族语言的应用思路,和开发习惯,甚至了解 Java 的弊病来真正明白为什么会有 Kotlin、Groovy、Scala 这样的语言诞生。
不学 Java 可以直接搞 Android 开发吗?
可以,做了很多年 Android 开发的我们居然会惊讶的发现,可以用来开发 Android 语言好多,Java 系的 Groovy、Scala 就不提了,连 C# 都可以,真是条条大路通罗马。
当然,主流语言仍然是 Java,这将是在短期内无法动摇的,加之 Kotlin 与 Java 一脉相承,关系密切,随着 Google 的强力推荐,你应该逐渐学习 Kotlin 与 Java 并适应二者共存的状态。
Kotlin 会不会慢慢把 Java 取代了?
短期内不会,但会 Kotlin 的开发会把不会 Kotlin 的开发慢慢取代倒是极有可能。
Java 短期内其地位是无法被撼动的,为什么?一方面自然有积重难返的原因,毕竟 Java 的积累很多,完全清空转向新生的 Kotlin 或者其他语言不是一件容易的事,而且也没有必要,用 Java 写的应用不是仍然好好的在应用商店躺着吗,老板凭什么要为 Google 的钦点额外付费?
那么后面的发展可能是怎样的呢?公司老板慢慢发现 Kotlin 比 Java 的开发效率高,可以节省人力,于是尝试逐渐过渡,进入 Java 和 Kotlin 混合开发阶段,不过他接着发现,掌握 Kotlin 的程序员的成本要高一些,于是他开始盘算到底是招 10 个 Java 合适还是招 7 个 Java & Kotlin 合适。等到掌握 Kotlin 的人越来越多,大家会普遍倾向于认为 Kotlin 是一门必备技能,不会 Kotlin 的话就会被淘汰,这时候老板就只会招 Java & Kotlin 了。
现在用 Kotlin 开发 Android 靠谱吗?
额。。看到这个问题的时候其实我好难过,然后瞬间又不难过了,因为难过的应该是 Google——你看,人家都不相信你呀。
我从两年前开始接触 Kotlin,大概在一年半以前开始所有个人开发的应用都直接使用 Kotlin 开发,接着在公司项目中小范围尝试了 Kotlin,单从编程语言层面来看,Koltin 几乎没有任何问题,Google 也通过这次 IO 大会试图在告诉我们这一点。坚定支持 Kotlin 的还有 Square.Inc 的 Jake 大神,如果你不知道他的话,我建议你的领导开除你。国内使用 Kotlin 的公司比较有名的有魅族、沪江、英语流利说等,他们都有了比较长的使用历史,一些创业公司也发现 Kotlin 能为他们的团地带来活力,让兄弟不至于很辛苦,比如北京的快乐迭代。
所以,如果你为 Kotlin 开发 Android 靠谱不靠谱,我告诉你,非常靠谱,只要你的同事不反对你就可以啦 ps: 现在谁反对谁就是政治不正确 :) 逃
我该什么时候学 Kotlin ?
这几天在看《那年那兔那些事儿》,用动漫的形式把中国从耻辱的近代到现代再到现在的故事讲述了一遍。其中有一段,讲我们国家的代表去美国参观,见识到美国强大的军事实力时候,感慨,什么时候我们也能有这么大的航母?接着坚定的说:不管怎么样,今天开始学一定比明天开始学早一天学会。
技术在变,身边的人在变,环境在变,整个世界都在变,你不得不集中精力往前冲,你以为你跑到前面了吗?不是的,你胆敢停下来一秒,就会被多少人超过。
这显然不是什么时候学习 Kotlin 的问题,如果你觉得某个东西有用,不要犹豫,现在立刻马上赶紧去学!