目录:
谷歌在2017年谷歌I / O上宣布支持Android中的Kotlin。它强化了Kotlin在2018年再次开发应用程序的重要性,但我们很多人都不确定发生了什么或者我们为什么要关心。 当然,我们知道它适合应用程序开发人员,他们 喜欢 它,但为什么他们喜欢它? 究竟是什么?
首先,您需要了解Kotlin只是Google为使Android应用开发“更好”所做的工作的一部分。 我在这里说得更好,因为这些工具不仅使它更容易或更快,它们允许开发人员做更多事情并构建更好的应用程序。 “更好”工作的应用看起来“更好”,并且“更好”地处理资源。 回到Kotlin - 它可能只是Google开发人员工具包的一部分,但它是最重要的部分,因为它比任何其他新功能更能使应用程序及其开发“更好”。
我喜欢这个视频。 我知道我们中的很多人都不会理解它(我自己也不理解这一点,这里没有羞耻)但是你可以说主持人 - 切特·哈泽和罗曼·盖伊真的很兴奋地展示这些工具观众中的开发者也很高兴听到他们的消息。 我们还看到谷歌如何不仅支持Kotlin,而且将其与扩展相结合,这将使“更好”的应用程序“更好”。
那什么是Kotlin?
Kotlin是JetBrains的一种编程和开发语言,它是Android Studio基于IntelliJ Java IDE(一种与Microsoft Office一起工作的开发工具和应用程序套件)背后的公司。 但Kotlin本身并不是一种编程语言; 这是编写使用Java运行的代码的新方法。
Java是您可能听说过的。 它是一种编程语言,可以构建在任何硬件上几乎任何操作系统上运行的应用程序。 它功能强大,这意味着您可以使用Java编写可以执行 许多 不同操作的程序,例如游戏或实用程序或硬件控制或其他任何东西。 它也是几乎所有Android应用程序编写的编程语言,以及Android本身的部分内容,如您的家庭应用程序或电话拨号器应用程序。
Kotlin可以构建在Java上运行的应用程序,并且减少了很多麻烦。
编写Java也非常麻烦。因为它非常强大并且是跨平台的(您使用的设备可能有Java应用程序框架和运行时安装),所以它很复杂。 Java是一种支持面向对象编程的多范式编程语言。 您使用对象(变量或函数或几乎任何类型的数据集)编写代码,并使用类来定义对象内的类型和初始数据。 哦,你必须确保包含允许类定义对象的正确库。 当我说复杂时,看看我的意思? 而且我甚至遗漏了 大量 关于面向对象编程如何工作的信息,只是给出了一个基本的概述。
Kotlin把那些繁琐的东西带走了。 您仍然需要在运行使用Kotlin编写的应用程序的设备上安装Java,因为它创建的应用程序就像在“常规”Java中编写的那样运行。 但使用它编写应用程序要容易得多! Kotlin是一种编程语言,Android开发人员可以使用它来构建非常棒的应用程序,同时花费更少的时间来确定硬件和调试测试版本。 你会得到很棒的应用程序,开发人员可以更轻松地编写它们。
是什么让Kotlin变得更好?
我曾经谈过的开发人员喜欢Kotlin的很多东西,但是它带来了三件事,每个人都会提到。
-
Kotlin使用积极的类型推断。 这意味着它可以根据代码的其余部分以及如何使用它来判断函数正在使用哪种类型的数据。 这意味着开发人员不必花时间在代码中声明表达式和值的类型,除非他们在框外做了一些事情。 这节省了大量时间,因为声明数据类型可能很乏味,而且代码必须完美。
-
Kotlin允许开发人员定义静态对象和函数,而无需使用冗余类。 开发人员可以在一个地方定义对象及其功能,因此更容易阅读和理解,这使得调试更容易。 并且它们不必包含不应该需要的代码,因为它复制了它们刚刚键入的内容。 Java强制这样做,因为它的语法是如何工作的。 Kotlin更放松,就像在C中编写代码一样,在这种情况下,它更容易,更有意义。
-
Kotlin的语法并不荒谬复杂。 Java的语法是。 这就是为什么成为一名专业的Java开发人员需要花费数年的时间 - 你需要在确切的位置包含诸如分号和括号和括号之类的内容,因此编译器(将代码转换为应用程序的工具)知道该怎么做。 Kotlin的语法使用了之前存在的编程语言的最佳思想,编写代码更简单。 这也意味着阅读和理解代码更容易,调试时间更短。
最重要的三件事有一个共同点,这就是为什么开发人员如此喜欢Kotlin - 代码更友好。 编写代码比使用Java更快,更宽容,更简单,阅读您或其他人编写的代码更有意义。 它看起来仍然像代码,但并非所有代码都同样复杂。 最后,您仍然可以获得一个应用程序,它几乎可以完成开发人员梦寐以求的任何事情,但让它更少涉及头痛。
Java被淘汰了吗?
不! 如果有的话,使用最新版本的Android和Android Studio,Java将变得越来越强大。
我听说Kotlin定义为“Java light”。 这是描述它的好方法和坏方法,但它得到了消息--Kotlin几乎与Java相同,使用设备中的Java机器来运行完成的应用程序,但却没有那么令人沮丧的因素。 Kotlin 需要 在手机或计算机上安装Java,或者设备的未来运行。 它完全可以互操作,甚至可以在应用程序中同时使用Kotlin和Java。
Kotlin还让平台开发人员(想想那些“制造”Android的人)添加了支持工具,使编写代码变得更加容易。 我们在Google I / O 2018上看到了Kotlin的扩展,这可以作为一种快捷方式来写出开发人员需要反复做的所有代码。
而不是“Java Light”,Kotlin被更好地描述为“Java ++”,因为它是语言的自然演变,可以用更少的挫折来做同样的事情。
应用程序会更好还是看起来不同?
也许,但是由于使用Kotlin的副作用而不是语言本身的特征。
编程语言与应用程序的外观或工作方式几乎没有关系。 这只是开发人员如何告诉您的手机做某事,然后以某种方式向您显示结果。 如果开发人员可以花更少的时间编写使您的手机能够做到这一点并告诉您的复杂代码,那么他们就有更多时间来添加更好的功能或构建更好的设计。
开发任何应用涉及几个主要步骤。 编写代码并不比构建优秀的设计和用户界面或确保应用程序执行人们希望它做的事情更重要。 编写代码 可能 需要更多时间,并且释放时间可以让其他阶段变得更好。 Kotlin释放了一部分开发时间。
我在哪里可以了解更多关于Kotlin的信息或开始使用它?
访问JetBrains的Kotlin网站,了解入门所需的一切。 从那里,您可以在更技术层面上获得Kotlin的基础知识和概述。 对于Android开发,请访问以下页面:
- Kotlin在Android Developer页面上
- Android Kotlin扩展程序
- Kotlin风格指南
- Kotlin互操作性指南
您可以使用Android Studio,Eclipse,IntelliJ IDEA或独立编译器为Android或Web浏览器构建Kotlin应用程序。 甚至还有很棒的教程可以让你指出正确的方向!
这并不困难。 如果您从未进行过任何类型的开发,那么就会有一个学习曲线,但这很有趣。 不要害怕尝试尽可能多地学习!
更新,2018年5月11日 :本文已经完全重写,以反映自Kotlin于2017年加入Android后所做的更改。