Kotlin学习探索-1
前言: 今天是2018年10月24日,也就是1024节,在这里首先祝福大家节日快乐,祝福各位研发朋友开心快乐、身体健康 1024节日快乐 本篇文章是《Kotlin学习探索》系列的第一篇,本篇文章主要学习的知识点有: Kotlin在Android Studio上的环境搭建 Kotlin在Android Studio上的应用和可视化直观对比 Kotlin在Android Studio上的环境搭建: Android Studio 从 3.0(preview)新版本开始就已经内置安装了 Kotlin 插件。如果没有的话,可以在studio上依次点开:File - Settings(可以直接快捷键:ctrl+ALT+s) - Plugins - Browse Repositories,接着,搜索关键字:Kotlin,然后点击右上角的install,下载完毕之后会重启Android Studio。这是已经安装成功的参考图,如下: Kotlin配置界面 插件下载完毕以后,我们开始创建一个Kotlin的新项目,跟传统创建方式不一样的地方是,需要在创建项目的时候,勾选: Include kotlin support选项,如下图红色矩形: 勾选Kotlin配置 勾选完毕以后,设置相对应的Application name、Company name、Project location、Package name等基本信息之后,后续的步骤跟传统构建新项目的时候一样,然后耐心等待工具构建新项目即可。 这样,Kotlin在Android Studio上的环境搭建以及第一个Kotlin项目就已经完成了。 Kotlin在Android Studio上的应用和可视化直观对比: 既然是Kotlin项目,我们先抛开语法基础这些,首先直观感受一下跟传统项目的差异,究竟有那些不一样。为了区分差异,这里规定:红色代表Kotlin项目,蓝色代表传统Java项目 首先对比下2个项目的Project的build.gradle(对比一) 通过截图可以看到,Kotlin项目的Project-build.gradle比传统项目的Project-build.gradle,在dependencies这个标签下多了一个value,也就是classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:kotlin_version",这里的$kotlin_version是占位符,具体的属性值是指向的是1.1.51,至于repositories和allprojects这2个标签倒是没有变化(因为都是指定远程依赖库) 对比一 在对比下2个项目的Module:app的build.gradle(对比二) 通过截图可以看到,Kotlin项目的Module:app-build.gradle比传统项目的Module:app-build.gradle多了2个apply plugin,分别是 apply plugin: 'kotlin-android'以及 apply plugin: 'kotlin-android-extensions' 试想,当我们原来区分一个Module是App还是library的时候,都是根据 apply plugin: 'com.android.application\library'这个标签属性来区分的,因此新增的两个标签也就从侧面反映了这是一个Kotlin项目。 对比二 接着对比下2个项目的Activity的代码(对比三): 毕竟Activity的代码才是我们最需要关注的。通过截图最直接感受的就是有如下差异: 首先,传统的类修饰符以及方法修饰符(public protect)没有了; 然后,extends关键字没有了,Kotlin取而代之的是 :这个分号; override注解没有了,Kotlin取而代之的是override fun写在一行; Java方法上的参数顺序是: 数据类型在前 数据名在后,Kotlin却是反过来的,数据名在前 数据类型在后; Kotlin的分号没有了 对比三 综上,以上对比可以看出Kotlin在语法上和写法上跟Java有较大的差异。语法算不上很简洁,可能需要进一步学习才能体会到Kotlin的优势。 总结: 本篇文章我们主要学习了:Kotlin在Android Studio上的环境搭建、Kotlin在Android Studio上的应用和可视化直观对比。总的来说,第一篇文章内容不是很多,主要是初步了解Kotlin的基本构建以及Kotlin项目的初体验、对比传统项目的差异。 如果这篇文章对你有帮助,希望各位看官留下宝贵的star,谢谢。 Ps:著作权归作者所有,转载请注明作者, 商业转载请联系作者获得授权,非商业转载请注明出处(开头或结尾请添加转载出处,添加原文url地址),文章请勿滥用,也希望大家尊重笔者的劳动成果