时间:Jul, 11, 2017
原文链接:https://antonioleiva.com/reasons-kotlin-android/
这组文章已到最后了,它们是非常实用的。今天我想谈谈为什么我认为学习Kotlin是非常有趣的。
虽然, Kotlin现在已是官方支持的开发Android APP的编程语言,而你仍可能觉得没有足够的理由进行改变。在这些年以来,Java已经证明其能力,为什么要改变?
这是我认为转换到Kotlin不是一个冒险的赌注,而是你可以做的最好的事情之一。
Tweet 上的相关文章:
Here are my reasons why I think that moving to #Kotlin is one of the best things you can do.
1. 语言及开发环境成熟
与其他开发语言不同(如:Swift),Kotlin发行版历经了许多阶段,然后才发布最终的1.0版本。
这就意味着在使用Kotlin时几乎没有任何问题,一切都符合你的期望。
IDE的Kotlin插件运行顺畅,并且允许你使用Java以及你的喜欢许多Java特性。因此,在这个层面上说,使用Kotlin是非常棒的。
了解其最终版本之前的历程很有趣。它的Alpha和Beta版用了几年的时间。即使在Beta版本出来之前,已有开发者在实际项目中使用它了。
Tweet 上的相关文章:
2.它使Android开发更容易
如果你一直在阅读这一系列关于Kotlin的文章,那么你已经非常清楚这一点。
Kotlin融入了许多简单的能力,如果你是从Java转来,就有种进入一个新的世界。这在Java中,你是不能想象到道。
老实说这是替代用Java开发Android优秀应用程序的唯一可行的方案。而其他替代产品(如:Scala)都非常沉重,且在编译时间和工具方面都无法与其比拟。
今天Kotlin的编译时间已经和Java类似了(在某些测试中它视乎更快),用Kotlin编写应用程序所需的库非常小,所以不会增加你的方法数量。
Tweet 上的相关文章:
3.它与Android Studio无缝集成
这听起来可能傻乎乎的,但是从第一分钟开始,一切都工作的很好,这是一个很大的优势。
您已经读过,若尝试建立一个Kotlin项目,不用10分钟就能完成了,即使你不了解Kotlin。
Tweet 上的相关文章:
You can have a project set up and ready to work in less than 10 minutes in your first use of #Kotlin
若使用Android 2.3,你只需要安装一个插件,而在3.0中,整个过程是无缝集成。
(译者注:这里Android 2.3 和 3.0 应该是指 Android Studio。)
从此所有的工作就如同使用Java一样:你能IDE运行,调试是否有问题,做重构,使用即时运行等等… 你能够想到的一切都可以使用。
4. 它的演变得到很好的覆盖
Kotlin背后是Jetbrains公司,他们在自己的项目中使用它,所以他们会更积极开发它。
另外,关于Android,它是由Google支持的,有两个大公司共同合作,能为我们提供最好的开发语言和工具。
从特性(如:Kotlin Android Extensions)到库(如:Anko),持续对库大小和构建时间的优化,都表明Jetbrains正在向Android投入大量精力。
5.如果你是Android开发人员,则需要不断学习
让我们来面对它:继续使用Java 6使我们成为“过时”的程序员。
直到我开始学习Kotlin才明白了。一旦你使用现代开发语言,你就会开始以不同的方式思考。
即使你不改变开发语言,也应该将这些新知识应用到你的代码中。在Java中,现在我以不同的方式解决问题,这只是因为我在学习它们之前,我已经学到了许多以前不知道的概念。
此外,你会变得更加多才多艺。后来,我看过(甚至使用)了Swift,Groovy,Ruby等一些语言,由于它们都使用非常相似的概念,因此更容易理解它们。
诸如lambdas、扩展函数、集合函数操作、密封类、数据类等概念虽然可能有不同的名称,但是你可以在大多数现代语言中找到它们。这样在思考中,你只需要将一种语言的转换映射到另一种语言,你可以轻松地切换开发语言了。
虽然我们喜欢Android,如果准备转换到另一种语言或平台,则会为我们这类开发人员带来巨大的价值。
Tweet 上相关文章:
If you are an #AndroidDev, you need to recycle: Java 6 makes us obsolete programmers
6. 它比Java更安全
你不能想象在处理Java中的NullPointerException,我有多么累了。其实每当看到我一个人时,我觉得真的很沮丧,因为这是语言设计的一个主要的问题。
我不否认如今我们有一些工具,如注释或设计模式,可以帮助我们避免其中一部分工作。但是,像以往一样,需要额外的工作量是需要时间和资金的问题。
然而,我们不能仅谈论null。我们要全部的Kotlin代码能够:
- 较少的错误:如果代码较少,则代码出差的几率就小,因此更加稳定。
- 在编译时,编译器帮助你检测到错误,它们就不会在运行时发生(这是真实地显而易见)
- 代码可读性更高、更容易理解,更难出现新的错误。
- 因为我们避免了任何只能克服语言不足的样板,代码功能的更清晰(而不是如何)。
而且,它能够用更少的时间完成更多的工作、且更加稳定、修复Bug时间更短。
Tweet 上相关文章:
#Kotlin features translate into more work done in less time, and less time spent in fixing bugs.
7. 已有知名公司使用它开发其产品
例如,Pinterest已经在Android应用的新功能中使用它了。你可以听Christina Lee谈论,她在Pinterest上使用它的经验。
另一个是Basecamp,它们Android应用程序已经100%的Kotlin编写了。Dan Kim写道:
Kotlin的一些技巧,是(不相信我可以这么说)100%ANDROID的正式开发语言。— Dan Kim (@dankim) May 17, 2017
Trello的代码也包括一些Kotlin代码:
数据点(对Kotlin好奇的Android开发人员):@trello现在很高兴地在开发中使用@kotlin。— Dan Lew (@danlew42) December 14, 2016
在Kotlin网站上,你可以查看到已经有越来越多的公司在其产品中使用Kotlin来开发,且没有遇到麻烦。
8. 各家公司在其提供工作机会中正要求会使用Kotlin
不仅仅已有公司使用Kotlin,而且开发开始对Kotlin很感兴趣了。我已经在西班牙培训了一些大公司,兴趣不断增长。
企业在员工Kotlin培训方面增加资金,这是个好兆头。
9. Kotlin是多平台的
你学习Kotlin不只是为了编写Android应用程序。 Kotlin首先创建在JVM中,所以它可以在任何可以运行JVM的设备上使用。
但在Kotlin 1.1中,Kotlin JS(那时只是实验性的)终于被发布,所以你也可以使用Kotlin进行前端开发。
但是它并不止于此,由于感谢Gradle的支持,你将能够在Kotlin中编写你的Gradle文件,并且多亏Kotlin Native,未来它将是开放平台。
编写Android应用程序只是冰山一角。
Tweet 上相关文章:
With #Kotlin, you can write #AndroidDev, server, frontend, Gradle scripts and even native Apps.
10. “微小众(Micro-niches)”是非常有利可图
尽管在大多数公司中并没有采纳Kotlin,但已经有一些人正在使用它。如果这些公司要成长,他们将需要Kotlin专家。
有些人掌握了几乎没有使用过的超级奇怪的语言,但是由于他们是世界上少数语言专家之一,所以他们赚了很多钱。
在Google公布后,Kotlin将不久便成为微小众,但你要脱颖而出还有一段时间。
11. 它很容易学习
Kotlin的一大优点是,Java开发人员即使没有编写过一行Kotlin代码,也能理解大多数代码。
这是因为Jetbrains人非常关注由Java过渡简单性,其语言非常类似你已知的。
由于语言的简单性和IDE及编译器的帮助,你可以很快地处理语言的基础知识。
而唯一较复杂的部分是了解Java缺少的概念,而不是Kotlin语法本身。
我不认为任何人需要两个多星期的时间就能感受用Kotlin编写代码的舒适性。
Tweet 上相关文章:
An #AndroiDev can understand most of the code without ever having written a line of #Kotlin
12. 使用起来非常有趣
总之(虽然这有些主观),但我发现Kotlin真的很有趣。
对我来说,因为Java的特征限制,它的样板,和设计问题导致的错误等等,它越来越多麻烦。
然而,Kotlin为你的创意开辟了一个可能的新世界,让你以非常不同的方式解决相同的问题。
我在电脑前找到了几个小时,寻找方法来简化Android开发中的日常任务,并在此过程中享受很多。
Tweet 上相关文章:
#Kotlin opens up a new world of possibilities for you to be creative in #AndroidDev
结论
在我看来,Kotlin的开始非常友好,真的很有趣,它会扩展你的思路,让你以不同的方式思考,最重要的是,它已经准备好用于产品开发。
它现在是Android开发的官方语言!
这是30篇文章的最后一篇,为向Android开发人员介绍Kotlin,我已经发布了最近7个月了。
自那之后,发生很多事情(Kotlin 1.1和Google公布等),希望它们成为人们开始学习Kotlin并提升学习的一个很好的工具。
但是,如果您想要更快速地学习,请通过示例学习,我建议你获取书籍:Kotlin for Android Developers,通过这本书你可以学习到用Kotlin如何从头开始创建一个完整的应用程序过程。
当然,我会继续写关于Kotlin和Android的更多文章。请以保持联系!