欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Kotlin
来自开放百科 - 灰狐
(版本间的差异)
小 (→为什么) |
小 (→用户) |
||
(未显示1个用户的12个中间版本) | |||
第2行: | 第2行: | ||
Kotlin | Kotlin | ||
+ | |||
+ | [[文件:kotlin-logo.png|right|Kotlin]] | ||
==简介== | ==简介== | ||
第9行: | 第11行: | ||
==基金会== | ==基金会== | ||
− | [https:// | + | [https://kotlinfoundation.org/ Kotlin 基金会] |
==新闻== | ==新闻== | ||
+ | *[https://blog.jetbrains.com/zh-hans/kotlin/ The Kotlin Blog] | ||
*[https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/ Google IO 2017 宣布了 Kotlin 成为 Android 官方开发语言。] (2017.5) [https://www.zhihu.com/question/59988655 如何看待 Google 宣布 Kotlin 正式成为 Android 的开发语言?] | *[https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/ Google IO 2017 宣布了 Kotlin 成为 Android 官方开发语言。] (2017.5) [https://www.zhihu.com/question/59988655 如何看待 Google 宣布 Kotlin 正式成为 Android 的开发语言?] | ||
第17行: | 第20行: | ||
==为什么== | ==为什么== | ||
+ | [[文件:android-kotlin.png|right|Android use Kotlin]] | ||
为什么选择 Kotlin | 为什么选择 Kotlin | ||
*因为 [[Kotlin ecosystem]] | *因为 [[Kotlin ecosystem]] | ||
第50行: | 第54行: | ||
==DSL== | ==DSL== | ||
− | + | [[文件:Exposed-logo.png|right|Exposed]] | |
+ | DSL 有内部和外部之分,内部 DSL 是通用编程语言编写的程序的一部分,使用了和通用编程语言完全一致的语法。而外部 DSL,如 SQL,则使用的是另一种语法。 | ||
− | + | 领域特定语言(DSL)为 Kotlin 类设计更有表现力、更符合语言习惯的API,如: | |
*构建HTML页面的内部DSL:[https://github.com/Kotlin/kotlinx.html kotlin.html] | *构建HTML页面的内部DSL:[https://github.com/Kotlin/kotlinx.html kotlin.html] | ||
*提供单元测试的内部DSL:[https://github.com/kotlintest/kotlintest kotlintest] | *提供单元测试的内部DSL:[https://github.com/kotlintest/kotlintest kotlintest] | ||
*提供数据库操作的内部DSL:[https://github.com/JetBrains/Exposed exposed] | *提供数据库操作的内部DSL:[https://github.com/JetBrains/Exposed exposed] | ||
*提供Android UI布局的内部DSL:[https://github.com/Kotlin/anko anko] | *提供Android UI布局的内部DSL:[https://github.com/Kotlin/anko anko] | ||
+ | *[https://developer.android.com/jetpack/compose Jetpack Compose] A reactive View DSL for Kotlin | ||
==KMM== | ==KMM== | ||
第62行: | 第68行: | ||
==项目== | ==项目== | ||
+ | [[文件:ktor-framework.png|right|Ktor framework]] | ||
[[文件:awesome.png]] [https://github.com/KotlinBy/awesome-kotlin Awesome Kotlin] | [[文件:awesome.png]] [https://github.com/KotlinBy/awesome-kotlin Awesome Kotlin] | ||
+ | [[文件:Tachiyomi-logo.png|right|Tachiyomi]] | ||
+ | *[https://github.com/tachiyomiorg Tachiyomi] reader 有良好的插件设计和丰富的[https://tachiyomi.org/extensions/ 扩展资源] | ||
*[https://github.com/ktorio/ktor Ktor] Web application framework | *[https://github.com/ktorio/ktor Ktor] Web application framework | ||
*[https://github.com/JetBrains/kotlin-native/ Kotlin/Native] | *[https://github.com/JetBrains/kotlin-native/ Kotlin/Native] | ||
第70行: | 第79行: | ||
*[https://github.com/LRH1993/Eyepetizer-in-Kotlin 使用Kotlin撸一款Eyepetizer,学习Kotlin语言] | *[https://github.com/LRH1993/Eyepetizer-in-Kotlin 使用Kotlin撸一款Eyepetizer,学习Kotlin语言] | ||
*[https://github.com/EasyKotlin EasyKotlin] | *[https://github.com/EasyKotlin EasyKotlin] | ||
+ | *[https://github.com/google/ksp Kotlin Symbol Processing (KSP) API] 由 [[Google]] 创建,用于开发轻量级编译器插件。 | ||
+ | |||
+ | ==用户== | ||
+ | *[https://kotlinlang.org/lp/mobile/case-studies/ Multiplatform Mobile Case Studies] | ||
+ | *[https://netflixtechblog.com/netflix-android-and-ios-studio-apps-kotlin-multiplatform-d6d4d8d25d23 Netflix Android and iOS Studio Apps — now powered by Kotlin Multiplatform] | ||
+ | *[https://blog.jetbrains.com/zh-hans/kotlin/2021/12/compose-multiplatform-toolbox-case-study/ JetBrains Toolbox 案例研究:将 100 万用户迁移到 Kotlin 和 Compose Multiplatform] | ||
+ | *[https://blog.jetbrains.com/zh-hans/kotlin/2021/03/cash-app-case-study/ Cash App 案例研究:在舒适区中从 KMM 受益] | ||
==文档== | ==文档== | ||
第79行: | 第95行: | ||
image:kotlin-anywhere.png|Kotlin Anywhere | image:kotlin-anywhere.png|Kotlin Anywhere | ||
image:kotlin-multiplatform.png|多平台 | image:kotlin-multiplatform.png|多平台 | ||
+ | image:kotlin-multiplatofrm-hierarchical-structure.png|多平台分层结构 | ||
image:mobileui-unified-codebase.png|MobileUI | image:mobileui-unified-codebase.png|MobileUI | ||
image:codename-one-architecture.jpg|Codename One | image:codename-one-architecture.jpg|Codename One | ||
第98行: | 第115行: | ||
[[category:JVM]] | [[category:JVM]] | ||
[[category:android]] | [[category:android]] | ||
+ | [[category:iOS]] | ||
[[category:huihoo]] | [[category:huihoo]] |
2022年5月1日 (日) 04:17的最后版本
您可以在Wikipedia上了解到此条目的英文信息 Kotlin Thanks, Wikipedia. |
Kotlin
目录 |
[编辑] 简介
使用 Kotlin 更快地编写更出色的 Android 应用。Kotlin 是一种新型的静态类型编程语言,有超过 60% 的专业 Android 开发者在使用,它有助于提高工作效率、开发者满意度和代码安全性。
Kotlin 是一种在 Java 虚拟机上执行的静态型编程语言,它也可以被编译成为 JavaScript 源代码。它主要是由俄罗斯圣彼得堡的 JetBrains 开发团队所发展出来的编程语言,其名称来自于圣彼得堡附近的科特林岛,主要面向 Android 和 浏览器应用,采用 Apache v2 许可协议。
[编辑] 基金会
[编辑] 新闻
- The Kotlin Blog
- Google IO 2017 宣布了 Kotlin 成为 Android 官方开发语言。 (2017.5) 如何看待 Google 宣布 Kotlin 正式成为 Android 的开发语言?
[编辑] 版本
[编辑] 为什么
为什么选择 Kotlin
- 因为 Kotlin ecosystem
- 因为 Kotlin Anywhere 和 Kotlin/Native
- 因为 Android
- 因为 Kotlin Multiplatform Mobile (KMM) for iOS
- 因为 Lambda 编程
- 因为 DSL
- 因为 from Swift to Kotlin
- 因为区块链应用 Corda
[编辑] 功能
[编辑] 指南
$ brew update $ brew install kotlin
或者
$ curl -s https://get.sdkman.io | bash $ source "$HOME/.sdkman/bin/sdkman-init.sh" $ sdk help $ vim ~/.sdkman/etc/config sdkman_beta_channel=true $ sdk selfupdate force $ sdk install kotlin $ kotlinc -help $ kotlinc
[编辑] 例子
fun main(args: Array<String>) { println("Hello, world!") }
[编辑] DSL
DSL 有内部和外部之分,内部 DSL 是通用编程语言编写的程序的一部分,使用了和通用编程语言完全一致的语法。而外部 DSL,如 SQL,则使用的是另一种语法。
领域特定语言(DSL)为 Kotlin 类设计更有表现力、更符合语言习惯的API,如:
- 构建HTML页面的内部DSL:kotlin.html
- 提供单元测试的内部DSL:kotlintest
- 提供数据库操作的内部DSL:exposed
- 提供Android UI布局的内部DSL:anko
- Jetpack Compose A reactive View DSL for Kotlin
[编辑] KMM
[编辑] 项目
- Tachiyomi reader 有良好的插件设计和丰富的扩展资源
- Ktor Web application framework
- Kotlin/Native
- Anko Android应用开发基础库
- Corda 是Kotlin开发的开源(Apache v2)分布式总账平台。
- Android River Android Rivers:用Kotlin语言写出的新闻应用
- 使用Kotlin撸一款Eyepetizer,学习Kotlin语言
- EasyKotlin
- Kotlin Symbol Processing (KSP) API 由 Google 创建,用于开发轻量级编译器插件。
[编辑] 用户
- Multiplatform Mobile Case Studies
- Netflix Android and iOS Studio Apps — now powered by Kotlin Multiplatform
- JetBrains Toolbox 案例研究:将 100 万用户迁移到 Kotlin 和 Compose Multiplatform
- Cash App 案例研究:在舒适区中从 KMM 受益
[编辑] 文档
[编辑] 图集
- Kotlin-Koans.png
Kotlin Koans
[编辑] 链接
分享您的观点