KotlinConf2017概要

KotlinConf2017概要

kotlin1.2 RC

主题演讲的第一个重要声明是发布Kotlin 1.2 Release Candidate。此版本中的新功能包括对多平台项目的实验支持,允许您在面向JVM和JavaScript的模块之间共享代码,以及多种语言改进,包括对注解中的数组字面值的支持。有关1.2中的新功能的更多信息,请查看Kotlin 1.2 Beta公告博客文章。

现在编译器拒绝使用早期版本的Kotlin 1.2编译的二进制文件; 您将需要使用此版本重新编译它们。使用Kotlin 1.0.x或1.1.x编译的代码当然与本版本的编译器完全兼容。

尽管协程仍被标记为实验功能,但我们想澄清这种状态的确切含义。协程完全可以在生产环境中使用,我们在自己的开发中使用它们,并且我们没有遇到任何重大问题。我们保持实验状态的原因是它使我们有能力迭代设计。请注意,即使我们对API进行了更改,当前的API仍将被支持,即使它被标记为已被弃用,我们将提供必要的迁移工具。根据我们目前的计划,在kotlin1.3中将删除协程的实验状态。

现在是我们要求你帮忙的时候了。尽管我们在内部和JetBrains的其他团队进行了大量的测试,但现实世界的范围远远大于我们所能接触到的。因此,请给Kotlin 1.2 RC一个尝试你自己的项目,让我们知道如果你遇到任何问题。您的帮助对于确保顺利的最终发布至关重要。 告诉大家去试试看

Kotlin / Native iOS支持

我们宣布的下一个大新闻是支持使用Kotlin / Native的iOS开发,作为Kotlin / Native 0.4的一部分发布。这个支持还处于早期阶段,但它仍然在这里,这是我们在所有平台上启用Kotlin开发的重要一步。

为了显示可能的事情,我们写了两个应用程序并发布到App Store:

spinner示例应用GitHub)是使用OpenGL构建了一个简单的游戏。它在iOS和Android(play store)上运行,大多数代码在两个版本之间共享。iOS版本有几个附加功能,如游戏中心集成。 该KotlinConf appstore(GitHub上)展示了本次会议的日程安排,与UIKit的内置全机iOS UI。 这两个示例应用都是开源的,您可以使用它们作为模板,在纯Kotlin中构建自己的跨平台移动应用。

Kotlin / Native IDE支持

当然,开发任何语言都需要一个IDE,所以从今天开始,Kotlin / Native有了IDE支持。 我们现在正在为Cion C / C ++ IDE的CLion发布Kotlin / Native插件的初始预览版本。该插件支持CMake作为构建系统。它包括IntelliJ IDEA的Kotlin插件的全套代码编辑功能,以及初步支持项目创建,测试和调试。

要尝试插件,请安装CLion 2017.3 EAP并在JetBrains插件列表中搜索“Kotlin / Native”。

在接下来的日子里,我们将发布一个单独的博文,其中包含了关于插件及其功能的更多细节。当然,CLion插件只是Kotlin IDE支持的一小步,敬请关注明年的进一步公告!

Ktor 0.9

服务器端开发也是我们的多平台项目的关键部分。现在我们宣布自己承担这一部分:Ktor的0.9版本,这是一个非常棒的基于异步协程的Web框架,它基于Kotlin建立起来。

Ktor已经在JetBrains和社区内的许多项目中使用,现在我们相信它是构建非常高性能Web应用程序的坚实基础。查看ktor.io 的快速入门指南,尝试一下,让我们知道你的想法,所以我们可以使它更好的1.0版本。

使用React和Kotlin创建现代Web应用程序

对于Web前端开发与科特林,今天最大的新闻是发布官方kotlin-wrappers React.js,以及 create-react-kotlin-app,用于创建使用React.js kotlin现代Web应用程序工具箱。使用create-react-kotlin-app,您可以生成并立即开始在客户端应用程序中工作,而不用担心项目设置和构建配置,使用静态类型语言的优点和JavaScript生态系统的强大功能。

要开始使用,请运行npm install -g create-react-kotlin-app查看入门指南

多平台项目演示

为了展示我们的多平台项目中的所有内容如何组合在一起,我们已经构建了一个使用我们技术栈的最新技术的应用程序:KotlinConf应用。它由以下组件组成:

后端使用Ktor ; web端应用使用React.js和Kotlin React包装器; Android应用使用Anko和Android架构组件; iOS应用(上面提到)使用UIKit。

后端,web端应用程序和Android应用程序共享代码使用Kotlin多平台项目技术。对于异步编程,所有组件都使用协程。为了在服务器和客户端之间交换数据,我们使用全新的kotlinx.serialization库

你会发现这些源代码是很宝贵的技术,你也可以在自己的工作中使用。

学习kotlin

随着Kotlin发展,越来越多的人对学习语言感兴趣。为了使这更容易,我们发布了一个新版本的EduTools插件,允许通过解决您最喜爱的IDE中的交互式练习来学习Kotlin。新版本增加了对Android Studio的支持(以前仅支持IntelliJ IDEA),并包含用于构建自己的课程的新UI。

未来方向

至于语言的未来发展,我们此时的主要目标是在Kotlin支持的平台之间实现更好和更广泛的代码重用。我们计划使用相同的API扩展所有平台上可用的库,以包括I / O,网络,序列化,日期处理等。

在编译器中,我们的主要重点是1.3将保持内部变化,而不是外部可见的语言特性。内部更改将实现更好的性能,改进的类型推断,为所有目标平台生成更有效的代码,以及更好地响应IDE插件。我们希望我们仍然可以通过一些不错的新语言功能来改善发行版本,但是我们目前还没有作出任何承诺。

让我们kotlin!

转载于:https://my.oschina.net/xlj44400/blog/1560363

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值