
课程咨询: 400-996-5531
投诉建议: 400-111-8989
认真做教育 专心促就业
IT培训学校:JetBrains的Kotlin语言忽然成了热门话题。国内传言说,Kotlin取代了Java,成为了Android的“钦定语言”,很多人听了之后热血沸腾。
对于这种评价言语的请求,我一般都不予理睬的。作为一个专业的言语研究者,我的职责不应该是去评价他人设计的言语。但是浏览了Kotlin的文档之后,我发现Kotlin的设计者误解了一个主要的问题——关于是否需要checked exception。
初学者们也开始注意到Kotlin,问出各种“傻问题”,很“功利”的问题,比如“现在学Kotlin是不是太早了一点?”结果导致一些Kotlin老鸟们的鄙视。当然也有人来信,请求我评价Kotlin。
对于的是checked exception,而不是Kotlin,因为相同的问题也存在于C#和其它一些言语。
在进入主题之前,我想先纠正一些人的误解,让他们冷静下来。我们首先应该搞明白的是,Kotlin并不是像有些国内媒体传言的那样,要“替代Java成为Android的官方言语”。准确的说,Kotlin只是得到了Android的“官方支撑”,所以你可以用Kotlin开发Android程序,而不需要绕过很多限制。可以说Kotlin跟Java一样,都是Android的官方言语,但Kotlin不会替代Java,它们是一种并存关系。
看理解了吗?不是“替代了Java”,而只是给了我们另一个“挑选”。我发现国内的技术小编们好像很喜欢把“挑选”歪曲成“替代”。前段时间这些小编们也有相似的谣传,说斯坦福大学把入门编程课的言语“换成了JavaScript”,而其实他人只是另外“增加”了一门课,使用JavaScript作为主要编程言语,原来以Java为主的入门课并没有被去掉。我希望我们在看到此类报道的时候多长个心眼,要分明白“挑选”和“替代”,不要盲目的信任一个事物会立即替代另一个。
这里我不得不批评一下有些国内技术媒体,他们似乎很喜欢片面报道和歪曲夸大事实,把一个平常的事情吹得天翻地覆。如果你看看国外媒体对Kotlin的报道,就会发现他们用词的迥然不同:
Google’s Java-centric Android mobile development platform is adding the Kotlin language as an officially supported development language, and will include it in the Android Studio 3.0 IDE.
译文:Google的以Java为核心的Android移动开发平台,加入了Kotlin作为官方支持的开发语言。它会被包含到Android Studio 3.0 IDE里面。