我看 Kotlin

原创 2017年11月07日 11:37:48

前几天,Kotlin 官方在旧金山举办了第一届的 KotlinConf 大会,大会上公布了 Kotlin 相关的一些进展,其中,宣布了一条重大消息:Kotlin 支持 iOS 和 Web 开发。

一时间,各大 IT 媒体的头条类似「重磅」、「重大消息」等均被 Kotlin 占领,再加上 Kotlin 很早就支持 Android,很多程序员们也大呼,学完 Kotlin 可以直接全栈了,但是,我不得要给这部分人泼盆冷水。

从 JetBrains 的角度,可以理解他们的策略,他们当然希望 Kotlin 可以跨平台发展,这样可以覆盖的面更广,一旦成功之后,将会极大的提升开发效率,减少企业的开发成本,也会让越来越多的领域接受使用 Kotlin。

但是这条路很难走,超级难。要知道以跨平台著称的 Java 直到现在,也没法完全的跨平台,Java 的跨平台也只限于 PC 端,无论你是 Windows、Mac 还是 Linux 都可以直接运行 Java 程序,现在虽然 Java 也可以用来开发 Android,但是涉及到移动端,这不是真正的跨平台,Android 开发只是使用了 Java 语言而已,其内在的底层架构和开发方式跟传统的 Java 程序开发差异很大。

移动互联网时代,其实很多编程语言都在探索跨平台开发,可能有些人不知道,Ruby 领域有个产品叫做 RubyMotion,这个产品可以让你使用 Ruby 语言开发原生 Android、iOS 以及 OSX 应用,而且得到了 Ruby 创始人 Matz 的支持,但是 RubyMotion 自 2012 年创立以来,至今 5 年时间,没有多少人了解使用这款产品,甚至如果我不提,我估计不少人甚至听都没听过,现如今使用 Ruby 编程语言的大部分开发者还都是用 Rails 来进行 Web 开发,因为 Rails 这个框架开发 Web 最大的优势是用你喜欢的 Ruby 语言可以很快速的开发 Web 网站。

前两年,Facebook 推出了 React Native,旨在解决移动端跨平台的问题,一经推出,引起无数开发者的关注与支持,然而即使这种「富二代」的跨平台框架,从项目开源到现在至今也有 2 年多时间,而背后 Facebook 花费的研究时间更是远超 2 年,目前 React Native 依然还不成熟,还存在各种各样的问题,现今的 App 开发主流仍然是原生开发,甚至很长一段时间依然会是这样。

Kotlin 的跨平台梦是挺好的,做成了确实牛逼,但是往往理想终究抵不住现实,一旦 Kotlin 定位跨平台策略,那么所涉及的技术复杂度、工作重心都会发生变化,更何况,想要跨平台到 iOS,是很难得到苹果的支持的,要知道苹果有个「亲儿子」Swift,在对待 Kotlin 的态度上是断不会像 Google 那样的开放,更何况 Swift 也一波三折,连 Swift 创始人都远走他乡,足以说明,一门新的语言让开发者拥抱有多么困难。

所以,从我个人的角度,因为 Google 与 Oracle Java 的版权问题,Google 对 Kotlin 的态度非常支持,在今年的 Google IO 2017 大会上明确宣布 Kotlin 成为 Android 开发的官方语言,最新发布的 Android Studio 3.0 更是内置了对 Kotlin 的支持,Google 的支持加上 Kotlin 本身语法的优势,我很看好 Kotlin 在 Android 领域的发展,我认为 Kotlin 官方应该抓住机会,先从 Android 领域着手,把主要精力放在 Android 开发上,争取让大部分 Android 开发者接受、使用 Kotlin,之后再慢慢的扩散到其他领域,如果一开始精力就放在跨平台上,结果可能会适得其反。

我之前写过一些未来很有潜力的编程语言,很多读者问我怎么没提到 Kotlin?虽然 Kotlin 语言可以做很多事,比如写脚本、开发 Android、与 js 交互等,但我个人觉得 Kotlin 目前的机会还在 Android 上,Google 的支持以及大量的 Android 开发者的基数,如果 Kotlin 能抓住机会,抓住众多 Android 开发者的用户,那么才算是有潜力,在其他领域的应用,目前来看很难让别的开发者接受并使用。

当然了,Kotlin 官方也可能只是拿跨平台造个势而已,但是无论是造势还是真的下注在跨平台,这都是一个漫长而艰难的道路,如果是出于兴趣,想多了解下 Kotlin,那么是支持的,而那些抱着学好 Kotlin 就可以变身全栈工程师的开发者们,建议还是洗洗睡吧。

PS:想要学习 Kotlin 的可以在公众号「googdev」回复关键字「kotlin」 获取相关学习资料,觉得写的不错可以点赞、帮转下,谢谢。

版权声明:本文已在我的公众号 stormzhang 原创首发,转载请务必注明出处!

相关文章推荐

Kotlin,来自初学者的心声

Kotlin一出,有的人亮了,有的人惊了 支持的人觉得:这就好像农民插秧,从手工插秧换成了插秧机(的确比Java简单了一些,可读性很强)。 不支持的人,觉得这都是下策,完全是被Oracle逼的。 在网...

Kotlin官方文档中文版

  • 2017年11月09日 15:05
  • 1.86MB
  • 下载

Kotlin for android developers

  • 2017年11月09日 09:57
  • 269KB
  • 下载

(新) Kotlin搞起来 —— 4.类与对象

(新) Kotlin搞起来 —— 4.类与对象 1.Any类 2.类定义与对象实例化 3.构造器(构造方法) 主构造器 辅助构造器 私有主构造器 4.继承 5.接口 6.抽象类 7.内部类,匿名内部类...

Kotlin 极简教程 清晰电子版.pdf下载

  • 2017年10月27日 23:52
  • 14.93MB
  • 下载

kotlin docs

  • 2017年10月25日 15:50
  • 1.46MB
  • 下载

使用Kotlin编写Android项目示例

Kotlin简介: Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设...
  • fuckluy
  • fuckluy
  • 2017年05月19日 18:01
  • 1997

Kotlin官方参考文档(中文版)

  • 2017年10月30日 09:39
  • 2.05MB
  • 下载

kotlin-for-android-developers-zh

  • 2017年11月17日 14:51
  • 1MB
  • 下载

Kotlin 第二弹:Android 中 PDF 创建与渲染实践

这是 Kotlin 练习的的第二篇。这一篇的由来是因为刚刚在 Android 开发者官网查看 API 的时候,偶然看到了角落里面的 pdf 相关。 我仔细看看了详细文档,发现这个还蛮有意思的,关...
  • briblue
  • briblue
  • 2017年05月27日 10:31
  • 4275
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:我看 Kotlin
举报原因:
原因补充:

(最多只允许输入30个字)