2017年5月17号,google android团队正式发文宣布支持kotlin语言。 并且在正式发布的文章里说了kotlin的种种好处。 其中重点说明支持kotlin是响应的众多开发者的强烈要求。 并在官方的文章中,引用了一位资深开发者android使用kotlin语言的体验和评价。 为了满足我的好奇心,我全文翻译了一下。
原文链接如下:
https://m.signalvnoise.com/how-i-fell-in-love-with-a-programming-language-8933d5e749ed
我是怎样爱上一种编程语言的?
用了一个月的kotlin后,我终于明白hell DHH这些年一直说的关于Ruby语言的那些话了!
如果你只知道一件关于 DHH的事,那应该就是他挚爱着Rudy编程语言。不止是喜欢,是爱!
我一直很赞同他的观点,但是我不能真的去全部认同他的观点。
别误会我的意思。 他完美的表达了Rudy语言的伟大。 我没有写过太多的Rudy代码, 但是我明白为什么那么多人喜欢它。 它 漂亮,表达精确,干净。 还有那么多伟大的特性。
只是当David说Rudy的时候,他不会重复上面事实,他会重点讨论情感,讨论它是怎样深深激励人们的。
当然,他也会提到一些语言的特性,但是更多的是会兴奋的谈论Rudy的美,是怎么让他发自内心的感到高兴,和怎么改变他的生活的。他的激情和热情胜过任何的特性。对他来说,Ruby是一种特殊而深刻的东西。他爱它!
每当这个时候,我都会问我自己," 他在说些什么?"
我不能全部理解David的那些发自内心的感慨,对Rudy的那些感情的原因是因为 <gulp>. 我是一个做了15年以上的java工程师。
我知道这不是什么值得炫耀的事,但是工作这些年,java 用着还不错。 作为android的本地语言,真的是因祸得福。 谁知道这些年有多少槽糕的 web开发者 变成了 杰出的移动开发者呢?
但是,我从来没有对java本身有特别强烈的感觉,我喜欢它的一些特点,也讨厌一些特点。 无论如果,它做了那些工作,做的不错。
这些年我的看法很简单,我不需要去爱上java(或者任何一种编程语言)去把我的工作变好。
这些在几个月以前全部改变了。
因为我crime的android同事jay的提议,我们开始认真的关注Kotlin. 关注了一段时间后。 当它发布1.0后,我们走出了第一步。
Jay和我开始了第一次的实验,但我没有想过太多,我继续用着使用java语言特性的方式使用它。
大概1个月后,我写了自己的第一个Kotlin的类。
那是一个只有86行的Popup adpter (其中有17行是用来导包的)。当时我没太理解它有多简洁,明确。 我只发现我写了很少的代码,它工作了。
这种感觉持续了一会。但是突然的, 我发现了不同。 不是那些语言的特性,不是FAQ的内容。
而是一种感觉。
那真的很有趣,我发现我自己在笑,我发现我自己在说"holy shit", 我一遍一遍的读这些代码。 我不敢相信我竟然用如此少的代码就完成了工作,我不敢相信它竟然这样的明确。
接下来的几天,我不停的写Kotlin. 我写了我的第一个extension. 然后我转换了一个已经写好的helper类变成了94行。 我想要写的更多!
我惊讶,兴奋,特别开心。 我也对这种奇怪的感觉感到有些紧张。
接下来的几周,这个感觉越来越强。
每当我去写java代码的时候,我感觉很痛苦。感觉就像是自己犯了一个愚蠢的错误。因为我有更重要的Kotlin代码要写。
但是当前我打开Kotlin文件时,我向在家一样自由,轻松。这些代码美丽和整洁。简单却能量十足,我开始不停的找各种方式来写的更少,更整洁。 我乐此不彼。
总之,我感到了David的感觉,我终于明白hell在说些什么了。
这就是我坠入爱河的故事,现在说这话还为时较早,谁知道这只是一时的迷恋还是真爱。也需这种感觉会奔溃。
但是,无论如何。 我学到这个非常有价值教训(只用了15年以上)。
没有人能够真正的告诉你一个语言有多么伟大,没有那么多经验会帮助你用指尖感受一个语言的伟大。 他们可以尝试,但是不可能是全部。 你必须自己去体验。
如果你现在是一个程序员,但是不爱你现在写的语言,我建议你去尝试一下这些有声望的语言。 Ruby, Kotlin,Swift, Or Coffeescript. 不要只阅读那个文档,看一看指南。 去做一点真正的尝试。
记住:
祝你好运,希望在你的旅程中找到真爱!
我们一直很努力的在 Basecamp3工作,它的android app做到了他们能够做到的最好。 去体验他们吧。 希望你们喜欢。
如果你有任何回复,我很愿意去听他们。 邮件给我或者在witter上@我。