Kotlin 空降“上位”已满月,有对你带来变化吗?
自从5.18 Google IO 大会到现在,Kotlin 已实打实的“上位”一个月。不知道你自己或者身边有没有人开始学习和使用 Kotlin 呢? Kotlin 有对你带来什么变化吗?欢迎回复讨论。
Kotlin 的空降似乎让许多人措手不及,在此之前国内关于 Kotlin 的资料十分稀少。即使到现在,也有不少人对 Kotlin 不甚了解。有一些 Kotlin 相关的公众号曾整理和解答过一些常见的问题,或许对大家有所帮助:
Kotlin 是什么?
我刚刚接触 Kotlin 是在两年前,那会儿的 Kotlin 更像是 A Better Java,它能做 Java 能做的任何事情,而且还要更出色。那时候我们还经常称 Kotlin 是一门 Jvm 上的静态语言,尽管 Kotlin-js 也在实验当中;而现在,我们只好称 Kotlin 是一门全栈的静态语言了,因为小伙儿长壮实了,不仅通吃 Jvm,Android 和前端,连 Native(注意不是 Jni)也要搞搞,真是前景一片大好。
说白了,它就是一门编程语言而已,在 Android 上被 Google 钦点,就像 Swift 之于 iOS,并不是什么洪水猛兽,不应该觉得害怕和恐慌。
没有 Java 基础,我应该学 Kotlin 吗?
应该学,作为一个有追求的程序员,你不仅要学 Kotlin,而且要了解各类型的语言,这跟你什么基础没有关系,大家都有过一个什么都不会的曾经。
但是,现阶段,Kotlin 跟 Java 关系实在密切,只要你希望用 Kotlin 开发 Jvm、Android 相关的应用程序,Java 你就必须学会,而且要学好,因为它太重要了,除了大量的 Jdk、Sdk 源码都是 Java 的以及大量的资料都是 Java 的 之外,Java 更是 Java 系语言的标杆,你需要学习掌握它,了解这一族语言的应用思路,和开发习惯,甚至了解 Java 的弊病来真正明白为什么会有 Kotlin、Groovy、Scala 这样的语言诞生。
一句话,Java 不牢,地动山摇。
不学 Java 可以直接搞 Android 开发吗?
可以,做了很多年 Android 开发的我们居然会惊讶的发现,可以用来开发 Android 语言好多,Java 系的 Groovy、Scala 就不提了,连 C# 都可以,真是条条大路通罗马。
但是,主流语言仍然是 Java,这将是在短期内无法动摇的,加之 Kotlin 与 Java 一脉相承,关系密切,所以无论如何你都逃不过 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 靠谱不靠谱,我告诉你,非常靠谱。
但是。。。怎么每个问题都有个但是。。。如果你想要将 Kotlin 应用于到你们的项目中,那么请你先与你的领导或者同事沟通好,以免造成不必要的麻烦。
本文来自开源中国社区 [http://www.oschina.net]

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Switch 差点运行 Android 系统:任天堂曾找 CM 定制
任天堂公司曾经固执的表态称自己对移动平台不感兴趣,但近来《精灵宝可梦》、《超级马里奥RUN》先后登陆iOS和Android并大获成功让任天堂的手游野心显露无遗。 事实上,任天堂与Android之间还有着更加深刻的联系。 2015年6月Switch主机首次曝光时就有消息称其将运行Android系统,虽然这一传言最终被打破,但最新消息表明任天堂至少曾经尝试过为Switch安装一款定制版Android系统。 知名第三方Android定制系统团队CyanogenMod的执行主席Kirt McMaster在社交媒体上爆料称,任天堂曾找上门,要求为Switch主机开发一款定制版的Android系统。 同时,Kirt McMaster还强调,虽然Switch最终的操作系统并不算是Android,但可以肯定的是其某些组件的开发借鉴了Android的经验。 本文来自开源中国社区 [http://www.oschina.net]
- 下一篇
使用 React Native 一年后的感受
当我在面试Discord的时候,技术主管Stanislav跟我说: React Native代表着未来。等它一发布,我们就会用它从零构建iOS应用。 作为一名原生iOS开发者,基于先前使用PhoneGap的经验,我非常怀疑使用Web技术构建移动应用的这种方式。但是当我学习并使用React Native一段时间之后,我非常庆幸我们做了这个决定。 开发效率 虽然iOS“团队”只有我自己一个人,但是iOS应用开发依然可以赶上Web和桌面应用开发闪电般的速度。Apple公司已经允许开发者使用JavaScriptCore进行应用的升级,而无需等待App Store的审核流程。这对于那些缺乏专业的iOS QA(质量保障)团队的小公司来说是非常便利的,因为iOS团队可以在发布新功能之后进行热更新。 使用React Native一年之后,我们的iOS开发周期明显变快了,这得益于很高的开发效率。比如: 基于现有的前端架构,我们在两周之内就发布了V1.0的版本。 相比于Auto Layout,基于Flexbox的样式可以节省一半的代码,并且更容易理解。 使用Flux设计模式,iOS和Web应用共享了sto...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Mario游戏-低调大师作品
- Hadoop3单机部署,实现最简伪集群
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS8安装Docker,最新的服务器搭配容器使用