Kotlin实战(1)-Kotlin简介
前言
Kotlin已经出了有一段时间了,Android studio也到了3.0+版本,接下来我会开始学习Kotlin并写成一系列的文章分享给大家。希望可以和大家一起进步!
什么是Kotlin
1.定义
Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。
Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。
JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。
2.特点
-
简洁
-
务实
-
安全
-
互操作性
Kotlin的主要特征
1.目标平台:
服务器端,Android以及任何Java运行的地方
Kotlin的首要目标是提供一种更简洁,更高效,更安全的替代Java的语言,并且适用于现在所有的Java环境。Kotlin最长见的应用场景有:
-
编写服务器端代码
-
创建Android设备上运行的移动应用
除了Java之外,Kotlin还可以编译成JavaScript,允许你在浏览器中运行Kotlin代码。Kotlin的目标平台是相当广泛的。
2.静态类型
Kotlin和Java一样是一种静态类型的编程语言。这意味着所有表达式的类型在编译期已经确定了,而编译器就能验证对象是否包含了你想访问的方法或者字段。
3.函数式与面向对象
作为一个Java开发者,你一定对面向对象编程的核心概念烂熟于胸,但函数式编程对你来说却可能很新鲜。函数式编程的核心概念如下:
-
头等函数---把函数(一小段行为)当作值使用,可以用变量保存它,把它当参数传递,或者当作其他函数的返回值。
-
不可变性---使用不可变对象,这保证了它们的状态在其创建之后不再变化。
-
无副作用---使用的是纯函数。此函数在输入相同时会产生同样的结果,并且不会修改其他对象的状态,也不会和外面的世界交互。
函数式编程风格的代码能给你带来什么好处?首先,简洁。函数式风格的代码比相应的命令式风格的代码更优雅,更简练。因为把函数当作值可以让你获得更强大的抽线的能力,从而避免重复代码。
4.免费并开源
可直接在github上搜索到。
Kotlin应用及使用工具
1.应用
-
服务器端的Kotlin
-
Android上的Kotlin
2.工具
(1).IntelliJ IDEA 和 Android Studio 插件
IntelliJ IDEA的Kotlin插件和语言同步开发的,它是Kotlin可用的功能最全面的开发环境。它成熟且稳定,提供了Kotlin开发所需的全套工具。IntelliJ IDEA 15及其后续版本不需要额外的设置,Kotlin插件就可以开箱即用。可以选择免费开源的IntelliJ IDEA Community版,也可以选择IntelliJ IDEA Ultiamte。在“New Project”(新建项目)对话框中选择“Kotlin”,然后就可以开始工作了。如果你用的是Android Studio,可以从“plug-in manager”(插件管理器)中安装Kotlin插件。打开“Settings”(设置)对话框,选择“Plugins”(插件),单击“Install JetBrains Plugin”(安装JetBrains插件)按钮,然后从列表中选择“Kotlin”。
(2).交互式shell
如果你想快速地尝试小段的Kotlin代码,可以使用交互式shell(也叫REPL3)。在REPL中,可以逐行地输入Kotlin代码并立即看到其执行结果,可以使用不带任何参数的kotlinc命令启动REPL,也可以从IntelliJ IDEA的“Kotlin”菜单中选择启动REPL。
(3).Eclipse插件
如果你是Eclipse用户,同样可以选择在你的IDE中使用Kotlin。Kotlin的Eclipse插件提供了必要的IDE功能,如导航和代码补全。该插件可以在Eclispe Marketplace 中找到。要安装它,请选择“Help>Eclipse Markerplace”菜单项,然后在列表中搜索“Kotlin”。
(4).在线playground
尝试Kotlin的最简单的方式,是不需要任何安装和配置。可以在http://try.kotl.in找到在线的playground,可以在上面编写,编译及运行Kotlin的小程序。Playground上还展示了Kotlin特性的代码示例,其中包括了本书所有例子。还有一系列交互式学习Kotlin的练习。
此文部分内容借鉴:《Kotlin实战》
推荐阅读
上一篇: 六大设计原则详解(1)-单一职责原则
下一篇: 对 HTTP 304 的理解
推荐阅读
-
Kotlin入门实战:2、 Android 创建一个简单的 Kotlin 应用程序
-
Kotlin实战(2)-AS上配置Kotlin
-
Kotlin实战(1)-Kotlin简介
-
HTML5实战与剖析之媒体元素(1、video标签和audio标签简介)
-
一个简洁漂亮的聊天界面:界面编写实战-android-kotlin
-
Kotlin实战案例:带你实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表和网格效果)
-
Kotlin实战(二): 实现RecyclerView多种Item布局
-
Kotlin从入门到夺门而出(1) - 开坑篇
-
Kotlin笔记1-变量和流程控制
-
kotlin入门——1.定义变量,方法