参考资料和站点

http://kotlinlang.org/ 官方网站

https://github.com/JetBrains/kotlin/releases/tag/v1.0.6 下载compiler,如果IDEA已经安装了,不需要安装即可直接使用

http://kotlinlang.org/docs/reference/

http://kotlinlang.org/docs/kotlin-docs.pdf 这个参考很全面

http://kotlinlang.org/api/latest/jvm/stdlib/index.html 标准库

http://kotlinlang.org/docs/reference/idioms.html 惯用法

https://github.com/Kotlin/kotlin-koans 例子练习

https://blog.jetbrains.com/kotlin 官方blog

https://blog.jetbrains.com/kotlin/category/releases/ 发布历史

https://github.com/JetBrains/kotlin-examples 例子

https://github.com/JetBrains/kotlin-benchmarks 和JAVA的性能比较

http://www.println.net/ 国内的短视频

Kotlin Benchmarks

https://github.com/JetBrains/kotlin-benchmarks

报告结果拷贝到本机的IIS上,并能够获取Google等Javascript CDN,才可看到报告【这里有个很好的性能测试工具使用参考JMH org.openjdk.jmh】

Comparison with Baseline

For multicolumn search separate subqueries with semicolon: "IntListBenchmark;manual;1000"

Difference is current score minus baseline score. Positive values are regressions, negative are gains.

Switch to comparison with Java

Search:

Benchmark ▲

Size ▲

Average Time

Unit

Error

Difference

% Difference

ClassArrayBenchmark.copy

10

0.05

us/op

± 2.60% (0.00)

   

ClassArrayBenchmark.copy

1000

5.92

us/op

± 0.53% (0.03)

-0.26

-4.23%

ClassArrayBenchmark.copy

100000

634.74

us/op

± 7.90% (50.16)

   

ClassArrayBenchmark.copyManual

10

0.06

us/op

± 2.92% (0.00)

   

ClassArrayBenchmark.copyManual

1000

8.03

us/op

± 1.82% (0.15)

+0.16

+2.06%

ClassArrayBenchmark.copyManual

100000

802.06

us/op

± 0.71% (5.70)

   

ClassArrayBenchmark.countFiltered

10

0.40

us/op

± 1.12% (0.00)

   

ClassArrayBenchmark.countFiltered

1000

46.94

us/op

± 3.07% (1.44)

   

ClassArrayBenchmark.countFiltered

100000

5670.62

us/op

± 3.57% (202.40)

   

ClassArrayBenchmark.countFilteredLocal

10

0.39

us/op

± 0.84% (0.00)

-0.01

-2.21%

ClassArrayBenchmark.countFilteredLocal

1000

46.44

us/op

± 1.99% (0.92)

   

ClassArrayBenchmark.countFilteredLocal

100000

5599.66

us/op

± 1.20% (67.01)

-125.05

-2.18%

ClassArrayBenchmark.countFilteredManual

10

0.39

us/op

± 1.93% (0.01)

   

ClassArrayBenchmark.countFilteredManual

1000

46.28

us/op

± 1.07% (0.50)

   

ClassArrayBenchmark.countFilteredManual

100000

5638.10

us/op

± 1.20% (67.56)

   

Kotlin Compiler

Jetbrains Idea下的默认kotlin安装

独立的compiler包下载解压的结果

E:\tool\kotlin\kotlinc 的目录

[.]         [..]        [bin]       build.txt   [lib]       [license]

1 个文件              5 字节

E:\tool\kotlin\kotlinc\bin 的目录

[.]               [..]              kotlin            kotlin.bat        kotlinc           kotlinc-js        kotlinc-js.bat    kotlinc-jvm

kotlinc-jvm.bat   kotlinc.bat

8 个文件          7,900 字节

E:\tool\kotlin\kotlinc\lib 的目录

[.]                                [..]                               allopen-compiler-plugin.jar        android-extensions-compiler.jar

kotlin-annotation-processing.jar   kotlin-ant.jar                     kotlin-build-common-test.jar       kotlin-build-common.jar

kotlin-compiler.jar                kotlin-daemon-client.jar           kotlin-jslib-sources.jar           kotlin-jslib.jar

kotlin-preloader.jar               kotlin-reflect.jar                 kotlin-runner.jar                  kotlin-runtime-sources.jar

kotlin-runtime.jar                 kotlin-test.jar                    noarg-compiler-plugin.jar

17 个文件     25,843,381 字节

E:\tool\kotlin\kotlinc\license 的目录

[.]           [..]          LICENSE.txt   NOTICE.txt    [third_party]

2 个文件          1,083 字节

E:\tool\kotlin\kotlinc\license\third_party 的目录

[.]                            [..]                           args4j_LICENSE.txt             asm_license.txt                closure-compiler_LICENSE.txt

dart_LICENSE.txt               jshashtable_license.txt        json_LICENSE.txt               maven_LICENSE.txt              pcollections_LICENSE.txt

prototype_license.txt          rhino_LICENSE.txt

10 个文件         78,237 字节

2者是一样的,因此如果安装了idea的话,kotlin的环境默认就是可用的

if "%_KOTLIN_COMPILER%"=="" set _KOTLIN_COMPILER=org.jetbrains.kotlin.cli.jvm.K2JVMCompiler

if not "%JAVA_HOME%"=="" (

if exist "%JAVA_HOME%\bin\java.exe" set "_JAVACMD=%JAVA_HOME%\bin\java.exe"

)

if "%_JAVACMD%"=="" set _JAVACMD=java

rem We use the value of the JAVA_OPTS environment variable if defined

set _JAVA_OPTS=-Xmx256M -Xms32M

if not "%_KOTLIN_RUNNER%"=="" (

"%_JAVACMD%" %_JAVA_OPTS% "-Dkotlin.home=%_KOTLIN_HOME%" -cp "%_KOTLIN_HOME%\lib\kotlin-runner.jar" ^

org.jetbrains.kotlin.runner.Main %*

) else (

"%_JAVACMD%" %_JAVA_OPTS% -noverify -cp "%_KOTLIN_HOME%\lib\kotlin-preloader.jar" ^

org.jetbrains.kotlin.preloading.Preloader -cp "%_KOTLIN_HOME%\lib\kotlin-compiler.jar" ^

%_KOTLIN_COMPILER% %*

)

直接从命令行运行kotlin,最终的结果是转换成JAVA字节码的

kotlinc HelloWorld.kt -include-runtime -d HelloWorld.jar

$ java -jar HelloWorld.jar

kotlinc HelloWorld.kt -d HelloWorld.jar

java -cp $KOTLIN_HOME/lib/kotlin-runtime.jar:HelloWorld.jar HelloWorldKt

脚本方式执行

$ kotlinc-jvm -cp joda-time-2.9.4/joda-time-2.9.4.jar
Welcome to Kotlin version 1.1-M04 (JRE 1.8.0_66-internal-b17)
Type :help for help, :quit for quit
>>> import org.joda.time.DateTime
>>> DateTime.now()

kotlin-docs

http://kotlinlang.org/docs/kotlin-docs.pdf 152页,这个参考比较全

Kotlin For Android

《Kotlin for android Developers》 中文翻译 关于在android下的开发,使用kotlin可以大幅度的简化代码的编写

Kotlin的参考资料的更多相关文章

  1. 用Kotlin语言重新编写Plaid APP:经验教训(II)

    原文标题:Converting Plaid to Kotlin: Lessons learned (Part 2) 原文链接:http://antonioleiva.com/plaid-kotlin- ...

  2. Kotlin(一)

    Kotlin(一) 写在前面: 参考资料: <Kotlin官方文档><Kotlin for Android 开源中文版> 准备工作: Android-Studio2.x:添加K ...

  3. Kotlin 语言下设计模式的不同实现

    偶然在 Github 上看到 dbacinski 写的 Kotlin 语言下设计模式的不同实现(这里的不同是相对于 Java 语言的),有些实现非常好,但是有些实现的例子不是很赞同.所以自己写了 Ko ...

  4. Kotlin学习入门笔记

    参考资料 官网:https://kotlinlang.org/ 官方文档:https://kotlinlang.org/docs/reference/ Kotlin 源码:https://github ...

  5. 【从零开始撸一个App】Kotlin

    工欲善其事必先利其器.像我们从零开始撸一个App的话,选择最合适的语言是首要任务.如果你跟我一样对Java蹒跚的步态和僵硬的语法颇感无奈,那么Kotlin在很大程度上不会令你失望.虽然为了符合JVM规 ...

  6. 深入分析 Java、Kotlin、Go 的线程和协程

    前言 协程是什么 协程的好处 进程 进程是什么 进程组成 进程特征 线程 线程是什么 线程组成 任务调度 进程与线程的区别 线程的实现模型 一对一模型 多对一模型 多对多模型 线程的"并发& ...

  7. Android Kotlin Jetpack Compose UI框架 完全解析

    前言 Q1的时候公司列了个培训计划,部分人作为讲师要上报培训课题.那时候刚从好几个Android项目里抽离出来,正好看到Jetpack发布了新玩意儿--Compose,我被它的快速实时打包给吸引住了, ...

  8. Kotlin协程解析系列(上):协程调度与挂起

    vivo 互联网客户端团队- Ruan Wen 本文是Kotlin协程解析系列文章的开篇,主要介绍Kotlin协程的创建.协程调度与协程挂起相关的内容 一.协程引入 Kotlin 中引入 Corout ...

  9. ViewBinding 与 Kotlin 委托双剑合璧

    请点赞关注,你的支持对我意义重大. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭 ...

随机推荐

  1. ubuntu16.04 离线安装nginx

    场景描述: 客户生产环境服务器,内网隔离无法访问互联网,需要准备好相应的安装包,离线部署. 服务器&软件包版本: 环境: ubunt16.04 gcc-4.8.4 包: nginx-1.8.1 ...

  2. asp.net MVC 上传文件 System.Web.HttpException: 超过了最大请求长度

    APS.NET MVC 上传文件出现  System.Web.HttpException: 超过了最大请求长度 这个问题 原因是 默认最大上传文件大小为4096,而我提交的文件太大了. 解决方案:修改 ...

  3. Android--UI之ImageSwitcher

    前言 这篇博客来聊一聊AndroidUI开发中ImageSwitcher控件的使用.ImageSwitcher控件与ImageView类似,都可以用于显示图片,但是ImageSwitcher通过名字可 ...

  4. 知其然而所以然:Operating System 概述和学习图

    大神绕道,鄙人初入 OS . 一.想知OS,先知计算机系统概述 #图解 #基本指令和中断周期 #直接内存存取(Direct Memory Access,DMA) I/O模块对存储器发出读命令或者写命令 ...

  5. for循环输出菱形的形状【java】

    使用for循环语句输出以下“菱形”效果: * *** ***** ******* ********* ******* ***** *** * 代码 /* * *** ***** ******* *** ...

  6. kafka配置项host.name advertised.host.name

    遇到的问题: 在本机或者其他机器telnet IP 9092,通,使用域名也通,telnet 127.0.0.1 9092不通 host.name:按配置文件说明,是Kafka绑定的interface ...

  7. jdk中的简单并发,需要掌握

    前言 开心一刻 小时候有一次爸爸带我去偷村头别人家的梨子,我上树摘,爸爸在下面放风,正摘着主人来了,爸爸指着我破口大骂:臭小子,赶紧给我滚下来,敢偷吃别人家梨子,看我不打死你.主人家赶紧说:没事没事, ...

  8. 使用Pyinstaller转换.py文件为.exe可执行程序

    pyinstaller能够在Windows.Linux等操作系统下将Python脚本打包成可直接运行程序.使Python脚本可以在没有安装Python的环境中直接运行,方便共享. 测试环境 pytho ...

  9. shell脚本动画小工具

    shell脚本动画小工具 看gif图: shell脚本版 脚本内容如下: #!/usr/bin/env bash ## ---------------------------------------- ...

  10. μC/OS-II 信号量集

    简介 在实际应用中,任务常常需要与多个事件同步,即要根据多个信号量组合作用的结果来决定任务的运行方式.μC/OS-II 为了实现多个信号量组合的功能定义了一种特殊的数据结构--信号量集. 信号量集所能 ...