即刻开始使用Kotlin开发Android的12个原因(KAD 30)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了即刻开始使用Kotlin开发Android的12个原因(KAD 30)相关的知识,希望对你有一定的参考价值。

作者:Antonio Leiva

时间: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时几乎没有任何问题,一切都符合你的期望。

 

IDEKotlin插件运行顺畅,并且允许你使用Java以及你的喜欢许多Java特性。因此,在这个层面上说,使用Kotlin是非常棒的。

 

 

了解其最终版本之前的历程很有趣。它的AlphaBeta版用了几年的时间。即使在Beta版本出来之前,已有开发者在实际项目中使用它了。

 

 

 

Tweet 上的相关文章:

 

#Kotlin is a mature language, been through several years of alphas and betas until its final release.

 

 

 

2.它使Android开发更容易

 

 

 

如果你一直在阅读这一系列关于Kotlin的文章,那么你已经非常清楚这一点。

 

Kotlin融入了许多简单的能力,如果你是从Java转来,就有种进入一个新的世界。这在Java中,你是不能想象到道。

 

 

老实说这是替代用Java开发Android优秀应用程序的唯一可行的方案。而其他替代产品(如:Scala)都非常沉重,且在编译时间和工具方面都无法与其比拟。

 

 

今天Kotlin的编译时间已经和Java类似了(在某些测试中它视乎更快),用Kotlin编写应用程序所需的库非常小,所以不会增加你的方法数量。

 

 

 

Tweet 上的相关文章:

 

#Kotlin is simplicity mixed with power. You have a new world of possibilities if you‘re coming from Java

 

 

 

 

 

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中,现在我以不同的方式解决问题,这只是因为我在学习它们之前,我已经学到了许多以前不知道的概念。

 

此外,你会变得更加多才多艺。后来,我看过(甚至使用)了SwiftGroovyRuby等一些语言,由于它们都使用非常相似的概念,因此更容易理解它们。

 

 

诸如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的一些技巧,(不相信我可以这么说)100ANDROID的正式开发语言— Dan Kim (@dankim) May 17, 2017

 

 

 

你还可以在这几篇文章中阅读他们的经验:文章1文章2

 

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.1Google公布等),希望它们成为人们开始学习Kotlin并提升学习的一个很好的工具。

 

但是,如果您想要更快速地学习,请通过示例学习,我建议你获取书籍:Kotlin for Android Developers,通过这本书你可以学习到用Kotlin如何从头开始创建一个完整的应用程序过程。

 

当然,我会继续写关于KotlinAndroid的更多文章。请以保持联系!

 

以上是关于即刻开始使用Kotlin开发Android的12个原因(KAD 30)的主要内容,如果未能解决你的问题,请参考以下文章

即刻体验 | Android 14 开发者预览版 2

(转)只需五分钟,开始使用Kotlin开发Android

开始迁移到 Kotlin | Kotlin 迁移指南 (中篇)

Kotlin开发基础从0开始

连载 | 使用Kotlin开发Android

从Kotlin的类开始说起