likes
comments
collection
share

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

作者站长头像
站长
· 阅读数 3

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

今天对 Kotlin 社区来说是一个值得庆祝的一天。很高兴我们邀请了超过 1200 名开发者在旧金山一同参加我们的 KotlinConf。在会议的主题演讲中,Kotlin 的首席设计师 Andrey Breslav 分享了迄今为止 Kotlin 的一些重大进展,现在我们将于你们一起分享这一消息。

Kotlin 1.2 RC

主题演讲的第一个内容,就是向大家宣布 Kotlin 1.2 的 RC 版本。这个版本的新特性包括对多平台项目的实验性支持,允许您在针对 JVM 和 JavaScript 的模块之间共享代码,以及一些语言改进,包括对注释中的数组文字的支持。有关1.2版新功能的更多信息,请查看Kotlin 1.2 Beta is out 这篇文章。

编译器现在不兼容 Kotlin 1.2 早起版本编译的二进制文件,您需要在这个版本中重新编译它们。如果是用 Kotlin 1.0.x 或 1.1.x 编译的代码,编译器则是完全兼容的。

尽管协程仍然被标记为实验性特征,但是我们想要澄清这种状态的确切含义。 协程完全可以用于生产,并且我们内部的开发已经用到了协程,而且我们在使用中也没有发现有任何的问题。 我们保持实验状态的原因是它使我们有能力重复设计。 请注意,即使我们对 API进行了更改,当前 API 仍将受支持,即使它将被标记为已弃用,我们也将提供必要的迁移工具。 根据我们目前的计划,Kotlin 1.3 将删除协程的实验状态。

现在是我们要求你帮忙的时候了。 尽管我们已经在 JetBrains 内部和其他团队对这个版本进行了大量的测试,但日常使用过程中的问题是远比我们测试时遇到的多的。 因此,请尝试使用 Kotlin 1.2 RC 构建自己的项目,如果你遇到任何问题,请马上联系我们。 您的帮助将会对确保顺利的推出最终版本起到至关重要的影响。

Kotlin / Native iOS Support

我们宣布的下一个重大消息是,支持使用 kotlin / Native的iOS开发,作为kotlin/原生0.4的一部分发布。这种支持还处于早期阶段,但它已经存在了,这是我们在所有平台上实现Kotlin 开发的重要一步。

为了确保使用 Kotlin 开发是可以的,我们写了两个应用程序,并将它们发布到App Store:

1. Spinner 应用程序:是使用 OpenGL 构建的简单游戏。 它在 iOS 和 Android 上运行,大部分代码在这两个版本之间共享。 iOS 版本还有其他一些功能,如 Game Center集成。

2. KotlinConf 应用程序:向您显示本次会议的时间安排,并具有完全原生的 UIKit 构建的 iOS UI。

这两个示例应用程序都是开源的,您可以将它们作为模板在纯 Kotlin 中构建自己的跨平台移动应用程序。

Kotlin / Native IDE Support

当然,任何语言的开发都需要一个 IDE 来支持,从今天开始,Kotlin / Native 也有 IDE 支持。

现在我们正在发布 CLion 的 Kotlin / Native 插件的最初预览版本,这是我们的 C / C ++ IDE。 该插件支持 CMake 作为构建系统。 它包括 IntelliJ IDEA 的 Kotlin 插件的全套代码编辑功能,以及对项目创建,测试和调试的初始支持。

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

要尝试插件,请安装 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 版本中做得更好。

Creating Modern Web Apps with React and Kotlin

对于使用 Kotlin 进行 Web 前端开发,今天最大的新闻是 React.js 的官方 Kotlin warppers 发布了,以及使用 React.js 在 Kotlin 中创建现代 Web 应用程序的工具箱 create-react-kotlin-app。 借助 create-react-kotlin-app ,您可以立即生成并立即开始在客户端应用程序上工作,而无需担心项目设置和构建配置,你可以体会到使用静态类型语言的好处和 JavaScript 生态系统的强大。

使用方式,请运行 npm install -g create-react-kotlin-app 并查看入门指南。

Multiplatform Projects Demo

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

1. 使用 Ktor 搭建的后台

2. 使用 React.js 和 Kotlin React wrappers 开发的浏览器应用

3. 使用 Anko 和 Android Architecture Components 构建的 Android 应用

4. 使用 UI kit 构建的 iOS 应用

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

你会发现这款应用的源代码是一个宝库,你也可以在自己的工作中使用它。

Github 地址 :https://github.com/jetbrains/kotlinconf-app

(包含前端、Android、iOS、后端全部代码)

Learning Kotlin

随着 Kotlin 的各种传播,越来越多的人对 Kotlin 学习语言感兴趣。 为了简化操作,我们发布了新版本的 EduTools 插件,通过在您最喜爱的 IDE中 解决交互式练习来学习 Kotlin 。 新版本增加了对 Android Studio 的支持(以前只支持 IntelliJ IDEA ),并包含用于构建自己的课程的新 UI。

接下来我们看一下如何通过 Android Studio 来学习 Kotlin !

1. 打开 Android Studio 3.0 如图所示点击 plugin

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

2. 点击 Install JerBrains Plugins ,搜索 EduTools 安装

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

3. 安装完成之后第一次进入会让你选择是 learning 还是 teaching,我们选择 learning

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

4. 选择课程

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

5. 选择完成之后你就会看到有关 Kotlin 的一系列教程

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

右边会有课程提示,我们可以通过右边的操作来进行检查、错误提示、重置等操作

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

6.  当你完成一系列的教程之后,恭喜你!你已经完成 Kotlin 的入门啦!

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

Future Directions

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

在编译器中,1.3 的主要焦点将继续在内部变化,而不是外部可见的语言特性。 内部的改变可以提高性能,改进类型推断,为所有目标平台生成更高效的代码,以及更好的IDE插件响应能力。 我们希望我们仍然能够用一些很好的新语言特性来使发行版变的更完美。

Let’s Kotlin !

可以看出 Kotlin 的发展方向是致力于全平台的开发语言,也许不久的某一天,我们就可以用 Kotlin 来开发各个端的应用啦!我要先去研究一下是怎么用 Kotlin 来开发 iOS 应用~

 探索有趣的新事物 

Android、Kotlin、设计、产品、思考、游戏。

KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS

长按关注

如果觉得有意思,那就分享一下啦 KotlinConf : 或许你以后可以用 Kotlin 来开发 iOS