首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Kotlin 1.2 新增特性

转自:开源中国 www.oschina.net/translate/whats-new-in-kotlin-12 平台项目 (实验性) 平台项目是 Kotlin 1.2 中一个新实验性功能,允许你在...KotlinJVM, JavaScript 和(将来)Native 上所支持目标平台之间重用代码。...在平台目中,你有三种模块: 一个通用(common)模块 —— 包含非特定于任何平台代码,以及不附带依赖于平台 API 实现声明。...:运行 Kotlin 1.2.0 版本 JVM 而且,现在允许在 lambda 中进行智能强制转换,这些局部变量只在 lambda 之前被修改: 6 目标平台:运行 Kotlin 1.2.0 版本...Items filled with 5: [5, 5, 5, 5, 5] 目标平台:运行 Kotlin 1.2.0 版本 JVM kotlin-stdlib 中数学运算 为满足用户长期以来需求,Kotlin

2.8K70

Kotlin 1.2 新增了哪些特性?

平台项目 (实验性) 平台项目是 Kotlin 1.2 中一个新实验性功能,允许你在 KotlinJVM, JavaScript 和(将来)Native 上所支持目标平台之间重用代码。...在平台目中,你有三种模块: 一个通用(common)模块 —— 包含非特定于任何平台代码,以及不附带依赖于平台 API 实现声明。...在 JVM 平台中,代码如下所示: ? 详细信息请参考此文档,并按照步骤构建平台项目。...6 目标平台:运行 Kotlin 1.2.0 版本 JVM 支持 ::foo 作为 this::foo 缩写 现在可以使用 ::foo 替代 this::foo,写入一个绑定可调用引用,而不用明确接收器...弃用:枚举嵌套类型 在枚举中,由于初始化逻辑中问题,定义一个不是内部类嵌套类型功能已经被弃用。在 Kotlin 1.2 中这将会引起警告,并将在 Kotlin 1.3 中报错。

2.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

Android平台Swift—Kotlin

基于Kotlin/Native一款游戏源码:https://github.com/jetbrains/kotlinconf-spinner --------- 二、开发平台项目 Kotlin 平台项目允许你将相同代码编译到多个目标平台...目前支持目标平台JVM 与 JS,即将增加 Native。 目前还是1.2新版本一个实验性功能。...[40.png] 平台项目由三种类型模块组成: ● 公共模块 公用模块只包含与平台无关Kotlin代码以及Kotlin公共标准库代码。同时还包含不含实现平台接口声明。...● 平台模块 平台模块可以依赖在指定平台上可用任何模块与库 (包括对于 Kotlin/JVM 平台 Java 库与 Kotlin/JS 平台 JS 库)。...如果之后Kotlin平台等实验室特性上有所突破的话,绝对会吸引更多开发者。

3.4K90

Kotlin十周年:Kotlin 1.5稳定版发布——2021年第一个大版本更新有何亮点?

Web 应用程序 Kotlin for JavaScript(Kotlin/JS)以及用于 Java 平台 Kotlin for JVMKotlin/JVM)。...Kotlin 1.5.0 还提供了对 JVM 记录支持,以确保作为不可变数据透明载体记录 与 Java 特性互操作性。...Kotlin/Native 获得了对 linuxX64 和 iosArm64 目标的调试模式下编译器缓存支持。它还停用了内置内存泄漏检查器,以避免可能导致应用程序崩溃问题。...免费在线课程,而且开源了 gRPC-Kotlin/JVM,开发者可以在 Kotlin目中更方便地使用 gRPC,以更简单方式构建可靠网络连接服务。...gRPC-Kotlin/JVM 构建在 gRPC Java API 之上,提供了对 Kotlin 友好 gRPC ,支持 Kotlin 协程。

81230

KMM跨平台开发入门,看这一篇就够了~

他们成就主要都是在UI上跨平台,当然Flutter虽然可以处理一些公共业务逻辑,但目前在业务较重情况下仍然需要各自处理。  ...上面官方描述说了这么,简单来说就是KMM注重业务逻辑跨平台,和Flutter、Compose完全相反。即使如此,在这个都想着跨别人年代,KMM也称自己并没有说过不会做UI平台......源集是一个 Gradle 概念,用于逻辑上组合在一起多个文件,其中每个组都有自己依赖。 在 Kotlin Multiplatform 中,共享模块中不同源集可以针对不同平台。 ...支持多个目标平台库,可以在公共源集 commonMain 中使用。例如 Koin、Apollo 和 Okio。 android和iOSMain, 这些是来自相关生态系统常规库。...可以使用 CocoaPods 或其他依赖管理器原生 iOS 项目和使用 Gradle Android 项目中使用。

4.3K20

Kotlin极简教程》第一章 Kotlin简介100% interoperable with Java™

这是kotlin官网首页重点强调: 100% interoperable with Java™ 这意味着什么呢?或者换个问法:我什么时候可以开始在我目中引入kotlin呢?...把 JVM 作为目标平台意味着大量性能优化工作可以「外包」给 JVM 来做,大大缩减了 Guest 语言开发预算。...它同样提供了纯粹面向对象实现,闭包等等,而且JRuby跟Ruby自身相比多了很多基于Java库 可以调用,虽然Ruby也有很多库,但是在数量以及广泛性上是无法跟Java标准库相比。...虽然Clojure也能被直接编译成Java字节码,但是无法使用动态语言特性以及直 接调用Java库。与其他JVM脚本语言不一样,Clojure并不算是面向对象。...Fantom Fantom能够在运行时为JVM以及.NET或者JavaScript平台生成字节码,Fantom是与Groovy以及JRuby差不多一样面向对 象编程语言,但是悲剧是Fantom无法使用

74620

Kotlin 推出新功能:无需同时了解 Kotlin 和 JavaScript

整理 | 褚杏娟、核子可乐 近日,JetBrains 发布了 Kotlin 1.8.20 beta 版本,其中包括一名为“Kotlin/Wasm”实验性功能,明确将 WebAssembly 设为编译目标...作为一种 JVM 语言,Kotlin 具备垃圾收集机制,但此前 Wasm 一直无法原生支持垃圾收集,这就要求各垃圾收集语言自行提供解决方案。...而 Kotlin 社区也紧跟着这样趋势发展,出现了愈来愈多库、框架来支持平台,如 Arrow、Okio、Apollo 等在新版本中都支持了平台开发。...如果 Compose for Web(Android 上使用平台版 Jetpack Compose)能够用 Kotlin/Wasm 代替 Kotlin/JS 来完美执行基于 Canvas 像素渲染...有趣是,只需要提供 WASI 平台特定部分,就能使用 Kotlin 平台库(例如 kotlinx-datetime 或 Okio)。

1.4K20

认识 Kotlin 语言

Kotlin 背景 Kotlin 是一门基于 JVM 且与 JAVA 可 100% 互通编程语言,用 JetBrains 的话来说 Kotlin 是更『现代化、更强大』编程语言。...JetBrains 对 Kotlin 愿景是:用同一种语言,桥接平台不同应用端对端开发。包括全栈 Web 应用、Android 和 iOS 客户端、嵌入式/物联网等等。...AS 会添加 Kotlin 依赖,然后把 Java 代码转成同等功能 Kotlin 代码。 Kotlin 易于上手,可以逐步引入到现有项目中。...还是 JavaScript 目标平台,都可用 Kotlin 写代码然后部署到你想要地方 import kotlin.browser.window fun onLoad() { window.document.body...---- Koltin 前景 目前移动端依然把持流量入口,热度不减,市场依旧很大,Kotlin 也已成为 Google 新儿子,是 Android 官方支持首选开发语言,BAT 等国内外一线互联网公司都已在线上项目中积极使用

94120

JetBrains 发布了 Kotlin Multiplatform 首个稳定版本

Kotlin 是由 JetBrains 开发一种 JVM(Java 虚拟机)语言,并被谷歌(Google)用作 Android 开发首选语言。...既然 Java 已经是为跨平台代码而设计了,那么 Kotlin Multiplatform 又增加了什么呢?答案是 Kotlin 不仅仅是一种 JVM 语言。...它解决了代码共享两个常见问题,即对于所有目标平台一个子集,仅需部分共享某些代码需求,以及需要访问特定于平台 API。...2022 年调查显示,Kotlin Multiplatform 应用程序代码共享率高达 63% Kotlin Multiplatform 适用于非 GUI 代码,但有一个相关项目 Compose...去年,谷歌通过 引入 其他一些 Jetpack 库“实验预览”,表达了对 Kotlin Multiplatform 一些支持,这些库不是用于生产,而是用于“在针对 Android 和 iOS 应用程序平台目中使用这些

15820

Kotlin 1.4-M1 现已发布!

可调用引用智能转换 在 Kotlin 1.3 中,您无法访问智能转换类型成员引用。...现在,它仅包含可以在所有三个目标平台JVM、JS、Native)上使用成员,这样您就可以确保同一代码可以用于任何一个平台。 use() 和时间测量函数新协定 我们将在标准库中扩大协定使用。...Kotlin/JVM 从 1.3.70 版起,Kotlin 可以在 JVM 字节码(目标版本 1.8+)中生成类型注解,以便它们在运行时可用。...会在 build/libs 文件夹中生成一个 klib 文件,此文件可以在其他 Kotlin/JS 项目中使用,或在同一目中用作依赖。...这有助于确保仍在使用默认后端用户不会受影响——假定他们已经将项目升级到 1.4-M1。 请注意,如果依赖和您项目使用 both 模式构建,仍然存在会导致 IDE 无法正常解析库引用问题。

3.4K20

Kotlin Vocabulary | 类型别名 typealias

这种情况下,可以使用 Kotlin 特别针对这个问题提供特性: Typealias (本文下称 "类型别名")。类型别名可以使您在不增加新类型情况下,为现有或函数类型提供替代名称。...由于类型别名需要在外部声明,所以使用时您需要考虑约束它们可见性。...在平台工程中使用类型别名 在使用 Kotlin 开发平台工程时,您可以在公共代码 (common code) 中写一个接口,并在相应平台代码中实现这个接口。...在公共代码中声明接口为预期声明,使用 expect 关键字;在相应平台代码中扩展为实际声明,使用 actual 关键字。...如果平台代码中已经实现了公共代码中某个接口,并且所有期望方法签名一致时,您可以使用类型别名将实际声明类型名称映射到期望类型上: expect annotation class Test actual

68610

今天Kotlin 1.3正式发布:支持协程和平台组件Kotlin 开发者社区

,此外,Kotlin 平台功能将为 Android 和 iOS 应用程序等组件之间共享业务逻辑,服务器也可以与 Web 和移动客户端共享逻辑,而且平台库让日常开发变得便捷。...Kotlin 生态现状 今年以来,Kotlin 使用率有了很大增长,自今年 1 月份以来,约有 150 万开发者使用了 Kolin 编程,是去年同期两倍,来自 Stack Overflow 问卷调查显示...目标,但达成这个目标的前提是,得先在平台间实现代码共享,通过支持 JVM、Android、JavaScript 和 Native,Kotlin 现在已经可以处理现代应用程序任何组件。...虽然 Kotlin 平台功能仍处于试验阶段,但 1.3 版本算是向前迈出了一大步。 Kotlin 1.3 还附带了一组平台库,涵盖了 HTTP、序列化和协同管理等日常任务。...编写平台代码最简单方法是依赖这些库,你还可以创建自己平台库,将特定平台依赖包装到通用 API 中。

1.3K20

是时候使用Kotlin编程了

使用Kotlin进行Android或者Java服务端开发,可以导入任意Java库。...跨平台开发 平台支持 Kotlin不仅仅用于Java,还可以使用它进行web js和iOS开发,所以市面上之前说Kotlin是一款基于JVM语言是不准确。...Kotlin Native Kotlin Native是一种将Kotlin源码编译成不需要任何VM支持目标平台二进制数据技术,编译后二进制数据可以直接运行在目标平台上,它主要包含一个基于LLVM后端编译器和一个...设计Kotlin Native目的是为了支持在非JVM环境下进行编程,如在嵌入式平台和iOS环境下,如此一来,Kotlin就可以运行在非JVM平台环境下。...平台支持 2.3.2 平台环境搭建 2.3.3 特定平台申明 2.3.4 标准库支持 2.3.5 JVM特性 2.3.6 JavaScript特性支持 2.4小结 第3章 Kotlin快速入门 3.1

3.2K10

为什么除了 Flutter 之外,我们还需要另一个跨平台开发框架?

但是对于具体小部件集合与排列方式,Web 版与桌面版之间确实无法互通。” 说到这里,为什么要把 Compose for Android 扩展到多种其他平台之上?...“Compose 目标受众主要分为三。...;第三则是那些不太熟悉 Kotlin 或者 Compose,但又希望开发出精美 UI 用户,我们希望能为他们提供实现目标的工具。”...我们目标是为原有框架选项满足不了用户提供新解决方案。” 写在最后 那么,为什么除了 Flutter 之外,我们还需要另一个跨平台框架?...不过,根据 StackOverflow 最新调查,Flutter 使用语言为 Dart;尽管 Dart 语言的人气正在增长(正是受到 Flutter 推动),但仍然无法Kotlin 相提并论。

1.6K40
领券