Kotlin 语言作为Android新的官方语言
苹果用 swift 作为官方语言替代 object-c ; 谷歌 刚开完io大会 也宣布 用 kotlin 作为官方语言 替代java。工具还是xcode ,android studio。
来自于著名的 IDE IntelliJ IDEA(Android Studio 基于此开发) 软件开发公司 JetBrains(位于东欧捷克)起源来自 JetBrains 的圣彼得堡团队,名称取自圣彼得堡附近的一个小岛 (Kotlin Island)。
介绍:
Kotlin 这是一种基于 JVM 的静态类型编程语言,拥有实用与高效等特征,由 JetBrains 开发。
Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。
JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。
Kotlin已正式成为Android官方开发语言。
语法及特点:
类似ES6, 用类似java语法 和 前端技术语法 来开发。。。。
(React Native和Weex和ionic3 都是这样混合开发)
Kotlin 支持类型推断,没有 Java 那样的啰嗦。
另外用 var 表示变量,val 表示常量更加的简洁
方法也很简单,连 function 都缩写成了 fun,平添了几分双关之意。
类的继承和实现很简单,使用:即可
Kotlin 每个句子都不需要加分号 (;)
在 Kotlin 中空指针异常得到了很好的解决。
支持方法扩展 this
Lambda, 高阶函数,Streams API, 函数式编程支持
所谓的高阶函数就是:可以接受函数作为参数也可以返回函数作为结果
字符串模板
与 Java 交互性好(Kotlin 和 Java 都属于基于 JVM 的编程语言)
(Kotlin 和 Java 的交互性很好,可以说是无缝连接。这表现在:
Kotlin 可以自由的引用 Java 的代码,反之亦然。
Kotlin 可以现有的全部的 Java 框架和库
Java 文件可以很轻松的借助 IntelliJ 的插件转成 kotlin
Kotlin 应用广泛:
Kotlin 对 Android 应用开发支持广泛,诸多工具,比如 kotterknife(ButterKnife Kotlin 版),RxKotlin,Anko 等等,当然还有已经存在的很多 Java 的库都是可以使用的。
除此之外,Kotlin 也可以编译成 Javascript。最近使用 Kotlin 写了一段抓取 proxy 的代码,实现起来非常快捷。甚至比纯 JavaScript 实现起来要快很多。)
性能:
Kotlin 的执行效率和 Java 代码的执行效率理论上一致的。有时候 Kotlin 可能会显得高一些,比如 Kotlin 提供了方法的 inline 设置,可以设置某些高频方法进行 inline 操作,减少了运行时的进栈出栈和保存状态的开销。
它简洁的语法,汇集诸多特性,高效率实现等等,已经在国外风生水起,国外的 Pintereset, Square, Flipboard 等公司已经开始应用到生产中。
关于转向 Kotlin:
是不是选择了 Kotlin 就意味着放弃 Java 呢,冷静下来想一想,其实并不 是那么回事,因为 Kotlin 与 Java 语法太相近,以及在 Kotlin 中无时无 刻不在和 Java 相关的东西打交道,所以这点顾虑不是问题的。

Kotlin 语言作为Android新的官方语言的更多相关文章
- 认识一下Kotlin语言,Android平台的Swift
今天在CSDN首页偶然看到一个贴子JetBrains正式公布Kotlin 1.0:JVM和Android上更好用的语言 看完后,感觉Kotlin语法非常简洁,有一系列动态语言的特点,Lambda表达式 ...
- kotlin, 一种新的android平台一级开发语言
最近看到一则科技新闻, 大致内容是google将kotlin语言作为android应用开发的一级语言, 与java并驾齐驱, 这是一个开发界的大事件大新闻, 连google的亲儿子go语言也没有这种待 ...
- 用Kotlin语言重新编写Plaid APP:经验教训(I)
原文标题:Converting Plaid to Kotlin: Lessons learned (Part 1) 原文链接:http://antonioleiva.com/plaid-kotlin- ...
- 安卓开发(2)—— Kotlin语言概述
安卓开发(2)-- Kotlin语言概述 Android的官方文档都优先采用Kotlin语言了,学它来进行Android开发已经是一种大势所趋了. 这里只讲解部分的语法. 如何运行Kotlin代码 这 ...
- Android Kotlin —— 语言结合
2017 Google I/O 大会开始就宣布,将Kotlin语言作为安卓开发的一级编程语言. Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发. Ko ...
- 释放Android的函数式能量(I):Kotlin语言的Lambda表达式
原文标题:Unleash functional power on Android (I): Kotlin lambdas 原文链接:http://antonioleiva.com/operator-o ...
- Kotlin 语言高级安卓开发入门
过去一年,使用 Kotlin 来为安卓开发的人越来越多.即使那些现在还没有使用这个语言的开发者,也会对这个语言的精髓产生共鸣,它给现在 Java 开发增加了简单并且强大的范式.Jake Wharton ...
- Kotlin 语言下设计模式的不同实现
偶然在 Github 上看到 dbacinski 写的 Kotlin 语言下设计模式的不同实现(这里的不同是相对于 Java 语言的),有些实现非常好,但是有些实现的例子不是很赞同.所以自己写了 Ko ...
- 为什么推荐你用 Kotlin语言?
谷歌大牛说:为什么 Kotlin 比你们用的那些垃圾语言都好 原标题:谷歌大牛说:为什么 Kotlin 比你们用的那些垃圾语言都好 编译:伯乐在线/黄小非 [伯乐在线/程序员的那些事 导读]:5月18 ...
随机推荐
- ip route 解释
[root@localhost ~]# ip route default via 172.16.0.1 dev ens192 proto static metric 100 172.16.0.0/16 ...
- 引用限定符(c++11)
1.概念 1)下面这种情况将对一个右值调用成员函数.对右值赋值 string s1 = "abc", s2 = "def"; auto n = (s1 + s2 ...
- Everything的简单使用
1.Everythings下载地址: http://www.voidtools.com/ 下载完后直接解压,运行everything.exe即可打开使用: 2.基本设置 (1)去除不需要搜索的文件夹: ...
- IntelliJ IDEA 2017版 spring-boot2.0.2 搭建 JPA springboot DataSource JPA环境搭建,JPA实现非字符型设置长度
1.在github上已有配置环境,如下链接,(需要环境JDK1.8及以上版本,Tomcat1.8及以上版本,搭建maven库,使用编译器IntellJ IDEA) https://github.com ...
- 如何在CentOS7上安装Python3及对应问题
首先一般来说安装好的CentOS是会自带python2.7,但是是没有安装python3的环境的 [root@host bin]# pwd /usr/bin [root@host bin]# ls p ...
- python科学计算模块NumPy
NumPy是Numerical Python的简称,是高性能科学计算和数据分析的基础包.其实NumPy 本身并并没有提供太多的高级的数据分析功能, 但是理解NumPy数组以及面向数组的计算将有利于你更 ...
- 1.8.1suspend与resume方法使用
暂停线程意味着线程还能恢复运行 suspend()方法暂停线程.resume()恢复线程 测试如下 package com.cky.thread; /** * Created by edison on ...
- 20155326 2006-2007-2 《Java程序设计》第4周学习总结
20155326 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承共同行为 (1)继承基本上就是避免多个类间重复定义共同行为,关键词为extends. ( ...
- CentOS6.5分区与文件系统
1 分区介绍 inux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a—d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a—z)),硬盘主分区最 ...
- 我最常用的7个Web在线工具
为什么要用Web在线工具呢?有两个原因,第一,它不受限于物理平台,我既可以在自己的电脑上使用,也可以在公司或亲戚朋友的电脑上使用(不管对方的操作系统是什么,只要能上网):第二,可以解放硬盘,减少PC端 ...