Java vs Kotlin,开发人员应该首选哪种语言?

点击“开发者技术前线”,选择“星标????”

让一部分开发者看到未来

作者:老白

自 Google 于 2017 年宣布 Kotlin 成为 Google IO 的 Android 开发官方语言以来,想要成为Android开发人员的程序员正陷入两难境地。

在讨论这个问题前,我首先要明确一点,千万不要陷入编程语言战争,不要进行语言之间的鄙视,只要能让赚钱的编程语言就是好语言。

2020,Java 程序员薪资不再垫底,Python 被 TypeScript 击败!第一语言你绝对想不到! 其实吧 ,Kotlin是一门小众语言,意味着得java者得永生,但是Android并不是寒冬, 技术菜的人,同样 iOS冬天来了,PHP冬天来了,Python冬天来了,每年都是冬季,哪有春天可言?人工智能来了,是不是程序员都要去死了

博主作为一名程序员,深知 Android的发展并不像 在2012 移动风口时那么热门, 但是Android开发也不是寒冬,天天网上唱衰这语言,助兴那语言,真的没必要瞎操这个心,这是Google等语言解释者操心的事。只有找不到工作的人,没有找不到工作的语言。

放在我们面前真实的一个大问题, 毕业要(或者入门在职2年内)学习什么?怎样提高技术?说难听点就是怎样尽可能的多赚钱(待遇跑赢房价涨幅),对于这个话题 ,确切说是后端开发是应该学习Kotlin还是Java?

如果你是一个想要学习Android开发的编程初学者,那么我建议先学习Java,如果你是一个想要进入Android App开发目前待遇不错的Java开发人员,那么我建议是Kotlin。今天解释下面两个问题。

1 为什么Android 初学者应该先从学习Java开始?

2 为什么Java开发人员应该在开始学习Kotlin?

当我说初学者应该从学习Java开始的时候,你可能会想:“为什么?Kotlin更加高效,代码更简洁,并且也是Android开发的官方语言,而且这个人建议学习Java。并不是唱衰Kotlin....."

那么,作为一名Android开发,我的观点可能有点偏见,。

Android开发初学者应该先从学习Java开始

作为一名程序员,我知道我的粉丝前期大都是搞Android开发的,后期大部分是后端了,但如果你是做Java开发的,你的职业瓶颈相对较高,这意味着你有更广,更高薪的就业机会。

其次,目前Java也拥有自己强大的开源社区,当你遇到问题就能通过这些找到答案。

作为初学者,会遇到很多技术问题,当我们在Google搜索问题时,肯定会得到答案;

相对Kotlin来说,还是一种新的编程语言,很多开源项目还未成熟,并且也相对稀少。

此外,还有很多关于Android开发的教程,书籍和课程,包括免费和付费的,这些教程可以让你先用java语言开始入门Android开发之路,但对于Kotlin来说这块资料并不多,特别是在Android上的免费资源,在国外很多关于kotlin的进阶教程大都收费的。

随着越来越多的程序员开始使用Kotlin开发,情况肯定会有所改善,但我怀疑它并不会撼动Java编程语言的主流使用的地位。

但是,这不是一条硬性的建议,如果你更喜欢学习Kotlin,并且主要想或者已经从事Android开发多年,并且想一直深耕下去,那么肯定是从Kotlin开始学习,目前Android Studio已经支持kotlin开发,目前也有一些公司采用kotlin开发项目。

但是,一旦你熟悉Java语言,你的Kotlin之旅也将变得简单和顺利,因为Kotlin完全与Java互相支持调用。它依然编译成Java字节码并在JVM上运行。

值得一提的是

 Android和iOS学习的关键不在于对kotlin和Swift 掌握有多神化,目前环境技术已经成熟的背景下,学习的关键就在于对整个技术横向的衍生。

比如:一套代码是不是能兼容多个端,做一个监控系统,如何追踪三端用户轨迹等等!做一个测试工具是不是覆盖所有场景等!

实际上比直接研究语法和api高很多,未来市场也需要偏策略性的编程工程师,无需大量造轮子的工程师,目前很多公司业务稳定,项目已经有了自己的架构设计,新人进去需要的并不是将技术突破,而是将业务代码写的优秀的,策略写的精简点!节约公司人力成本。

Java程序员应该懂Kotlin

对Java开发人员来说,我认为最好学习下 Kotlin,因为它确实提高了开发效率。

一个在Java中使用50行代码的类可以在Kotlin中只写一行。

它可以帮助你避免所有的火车代码(说了一大堆不知道写的是什么),例如你不需要指定getter和setter,equals(),hashCode()或toString()方法。Kotlin可以自己生成所有这些。我对Kotlin和Java在开发编写生产力和编写类似代码的代码方面进行了比较:

如果你不知道Kotlin是由JetBrains开发的,后者也是最流行的Java IDE之一IntelliJ IDEA的后台。

他们是一家Java 工具开发商,正在开发像IntelliJ IDEA,PyCharm和ReSharper这样的IDE,所有这些都是用Java编写的,并且构建了Kotlin来提高他们的工作效率,但同时他们不能在Kotlin中重写所有的代码,所以这就是为什么他们让Kotlin与Java完全互通。

因为Kotlin生成Java字节码,所以可以在Kotlin中使用你最喜欢的Java

框架和三方库,并且其他Java开发人员也可以使用你开发的Kotlin框架。

即使是Spring, 有个主要的Java框架 已经开始从Spring5.0 开始支持Kotlin了, 可见对于java 人员,Kotlin的未来还是可期的。

最后

首先学习哪种编程语言并不重要,重要的是在通过编程思维来不断提高自身的技能,从而提高职业生涯长度。其次,说难听点还是那句话尽可能的多赚钱(待遇涨幅跑赢房价涨幅)当然这只是最理想的状态。但它未必不是一个影响你学习哪种语言的原因。

— 完 —

前线推出学习交流群一定要备注:研究/工作方向+地点+学校/公司+昵称(如目标java+上海+上交+可可),根据格式备注,可更快被通过且邀请进群

扫码加我微信进群,内推和技术交流,大佬们零距离

END

点个在看吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值