├── assets
└── readme
│ ├── translator.png
│ └── kotlin_group.jpg
├── original
├── Kotlin Goes Open Source!.md
├── Slides and Video Kotlin@JVMLS 2011.md
├── StrangeLoop Slides+Video.md
├── Gradle Meets Kotlin.md
├── The Kotlin issue tracker is now public.md
├── Announcing KotlinConf.md
├── Slides from the JVM Language Summit presentations.md
├── Free Kotlin Webinar on Wednesday, October 10th.md
├── Join Live Webinar — Functional Programming with Kotlin.md
├── Kotlin Workshop Material for you to use.md
├── Fibers and Actors in Kotlin with Quasar.md
├── Kotlin census call to action.md
├── Kotlin Session at Devoxx, November 16th.md
├── KotlinConf - Speaker List Announced.md
├── Learn Kotlin with “Advent of Code”.md
├── KotlinConf 2017 Session Recordings and Photos are Here!.md
├── Kotlin 1.1 What’s coming in the standard library.md
├── Meet the Kotlin Team at Gradle Summit.md
├── Kotlin 1.1-What’s coming in the standard library.md
├── Kotlin 1.1 Event in Your City.md
├── Hello World.md
├── Kotlin Educational Plugin.md
├── Kotlin 1.0.7 is out.md
├── Kotlin Census 2017.md
├── Full-Day Kotlin Workshop October 6th in Malmö, Sweden.md
├── Join Live Webinar — Quasar and Kotlin.md
├── Our first book about Kotlin is out.md
├── Webinar recording Developing Multiplatform Projects in Kotlin 1.2.md
├── Let’s Kode Together!.md
├── Kotlin 1.0.1 is Here!.md
├── Dogfooding Kotlin and M3.1.md
├── Talk @ GeekOUT Tallinn Language Design Trade-Offs (Kotlin and Beyond).md
├── Type-Safe Web with Kotlin.md
├── Follow-up New Class Object Syntax.md
├── Webinar Recording. Quasar Efficient and Elegant Fibers, Channels and Actors.md
├── Kotlin Night in London.md
├── Kotlin 1.0.3 Is Here!.md
├── Kotlin 1.1.1 is out.md
├── MCE2015 Kotlin Session and JetBrains Booth.md
├── Try Kotlin in Your Browser New Look and More Features.md
├── Kotlin 1.1 Event Report.md
├── Gradle Daemon Support for Faster Compilation.md
├── Kotlin Web Demo is out!.md
├── Catch up with our Kotlin Team at Devoxx Belgium.md
├── Kotlin Skills Matter Events in London, England.md
├── Webinar Recording Functional Programming with Kotlin.md
├── More Deprecations Coming.md
├── Kotlin Session and JetBrains Booth at 33rd Degree Conference.md
├── Kotlin Eclipse Plugin 0.7 Is Here!.md
├── Use Kotlin with npm, webpack and react.md
└── Spek – A Specification Framework.md
├── translated
├── Kotlin Goes Open Source!.md
├── Slides and Video Kotlin@JVMLS 2011.md
├── StrangeLoop Slides+Video.md
├── Gradle Meets Kotlin.md
├── The Kotlin issue tracker is now public.md
├── Kotlin Census 2017.md
├── Slides from the JVM Language Summit presentations.md
├── Kotlin census call to action.md
├── Kotlin Workshop Material for you to use.md
├── Hello World.md
├── Free Kotlin Webinar on Wednesday, October 10th.md
├── Join Live Webinar — Functional Programming with Kotlin.md
├── Fibers and Actors in Kotlin with Quasar.md
├── Meet the Kotlin Team at Gradle Summit.md
├── Kotlin 1.1 What’s coming in the standard library.md
├── Kotlin 1.1-What’s coming in the standard library.md
├── Kotlin 1.0.7 is out.md
├── Kotlin Educational Plugin.md
├── Kotlin 1.0.1 is Here!.md
├── Join Live Webinar — Quasar and Kotlin.md
├── Kotlin 1.1 Event in Your City.md
├── Our first book about Kotlin is out.md
├── Full-Day Kotlin Workshop October 6th in Malmö, Sweden.md
├── Webinar recording Developing Multiplatform Projects in Kotlin 1.2.md
├── Kotlin Session at Devoxx, November 16th.md
├── Learn Kotlin with “Advent of Code”.md
├── Let’s Kode Together!.md
├── Follow-up New Class Object Syntax.md
├── Kotlin 1.0.3 Is Here!.md
├── Why JetBrains needs Kotlin.md
├── Talk @ GeekOUT Tallinn Language Design Trade-Offs (Kotlin and Beyond).md
├── KotlinConf 2017 Session Recordings and Photos are Here!.md
├── M9 is here!.md
├── Kotlin 1.1.1 is out.md
├── M9 is coming.md
├── Dogfooding Kotlin and M3.1.md
├── Kotlin Web Demo is out!.md
├── Webinar Recording. Quasar Efficient and Elegant Fibers, Channels and Actors.md
├── KotlinConf - Speaker List Announced.md
├── Gradle Daemon Support for Faster Compilation.md
├── MCE2015 Kotlin Session and JetBrains Booth.md
├── Kotlin 1.1 Event Report.md
├── Kotlin Night in London.md
├── Kotlin Skills Matter Events in London, England.md
├── Announcing KotlinConf.md
├── Try Kotlin in Your Browser New Look and More Features.md
├── Type-Safe Web with Kotlin.md
├── Kotlin Session and JetBrains Booth at 33rd Degree Conference.md
├── More Deprecations Coming.md
├── Webinar Recording Functional Programming with Kotlin.md
├── Use Kotlin with npm, webpack and react.md
├── The Road Ahead.md
├── Kotlin Native IDE Support Preview.md
├── Catch up with our Kotlin Team at Devoxx Belgium.md
├── Spek – A Specification Framework.md
├── Kotlin Night in London Recordings.md
├── Calling on EAPers.md
├── Kotlin Eclipse Plugin 0.7 Is Here!.md
├── Kotlin 1.1 Event.md
├── A New Open Source Web Site.md
├── New Style for User Groups.md
├── Upcoming Feature Deprecations.md
├── Mixed-Site Variance in Kotlin.md
├── The Great Syntactic Shift.md
├── Kotlin 1.1 Release Candidate is Here.md
├── How to configure Kotlin in your project.md
├── KotlinConf - New Workshop and Community Event by JetBrains and Realm.md
├── Kotlin_Native v0.2 is out.md
├── Contest Go Cross-Platform with Kotlin!.md
├── Announcing the Support Program for Kotlin User Groups and Events.md
├── Modifiers vs Annotations.md
├── Kotlin Eclipse Plugin 0.5.0.md
├── Kotlin 1.2 M2 is out.md
└── Kotlin on Android. Now official.md
└── generateList.py
/assets/readme/translator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bennyhuo/KotlinBlogTranslation/HEAD/assets/readme/translator.png
--------------------------------------------------------------------------------
/assets/readme/kotlin_group.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bennyhuo/KotlinBlogTranslation/HEAD/assets/readme/kotlin_group.jpg
--------------------------------------------------------------------------------
/original/Kotlin Goes Open Source!.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Kotlin Goes Open Source!"
3 | date: 2012-02-14 10:32:00
4 | author: Ann Oreshnikova
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2012/02/kotlin-goes-open-source-2/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 |
--------------------------------------------------------------------------------
/translated/Kotlin Goes Open Source!.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin Goes Open Source!"
3 | date: 2012-02-14 10:32:00
4 | author: Ann Oreshnikova
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2012/02/kotlin-goes-open-source-2/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 |
--------------------------------------------------------------------------------
/translated/Slides and Video Kotlin@JVMLS 2011.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Slides and Video: Kotlin@JVMLS 2011"
3 | date: 2011-09-07 15:25:00
4 | author: Andrey Breslav
5 | tags: [PDF, PPT]
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/09/video-kotlinjvmls-2011/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 我们的幻灯片和视频从 JVM 语言峰会 2011 可通过 [Dob 博士的](http://drdobbs.com/java/231500204) 。请享用。
18 |
--------------------------------------------------------------------------------
/original/Slides and Video Kotlin@JVMLS 2011.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Slides and Video: Kotlin@JVMLS 2011"
3 | date: 2011-09-07 15:25:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/09/video-kotlinjvmls-2011/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Our slides and video from the JVM Language Summit 2011 is available via [Dr. Dobb’s](http://drdobbs.com/java/231500204) . Enjoy.
18 |
--------------------------------------------------------------------------------
/translated/StrangeLoop Slides+Video.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]StrangeLoop Slides+Video"
3 | date: 2011-11-17 16:47:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/11/strangeloop-slidesvideo/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 从我给的谈话的幻灯片和视频 [奇怪的](https://thestrangeloop.com/sessions/the-kotlin-programming-language) 今年是可用的 [这里](http://www.infoq.com/presentations/The-Kotlin-Programming-Language) :
18 |
--------------------------------------------------------------------------------
/translated/Gradle Meets Kotlin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Gradle Meets Kotlin"
3 | date: 2016-05-18 06:18:00
4 | author: Hadi Hariri
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/05/gradle-meets-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 回到**JavaOne 2015**,午餐休息期间,我们开始与 Gradle 首席执行官 Hans Dockter 聊天。会后几天,我们中的几个人在 Gradle 办公室谈论 JetBrains 和 Gradle 之间的合作开始,为 Gradle 带来一流的工具和静态语言支持。
18 | 今天在 [旧金山的 Kotlin 之夜](http://info.jetbrains.com/Kotlin-Night-2016.html)
--------------------------------------------------------------------------------
/original/StrangeLoop Slides+Video.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "StrangeLoop Slides+Video"
3 | date: 2011-11-17 16:47:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/11/strangeloop-slidesvideo/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Slides and video from the talk I gave at [StrangeLoop](https://thestrangeloop.com/sessions/the-kotlin-programming-language) this year is available [here](http://www.infoq.com/presentations/The-Kotlin-Programming-Language) :
18 |
19 |
--------------------------------------------------------------------------------
/translated/The Kotlin issue tracker is now public.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]The Kotlin issue tracker is now public"
3 | date: 2011-08-03 10:24:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/08/the-kotlin-issue-tracker-is-now-public/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 遵循其他 JetBrains 项目的传统,我们向公众开放了 Kotlin 的问题追踪器。在问题跟踪器中,您可以看到我们正在开展的一些想法和事情,您还可以提出问题,要求语言中的新功能或当前设计的更改。我们希望跟踪器能够让我们比博客和 Confluence 页面上的评论更加结构化。
18 | 跟踪器的 URL 为: [http://youtrack.jetbrains.net/issues/KT](http://youtrack.jetbrains.net/issues/KT)
--------------------------------------------------------------------------------
/translated/Kotlin Census 2017.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Kotlin Census 2017
3 | author: Roman Belov
4 | date: 2017-10-18 18:55:00
5 | tags:
6 | categories: 官方动态
7 | reward: false
8 | reward_title: Have a nice Kotlin!
9 | reward_wechat:
10 | reward_alipay:
11 | source_url: https://blog.jetbrains.com/kotlin/2017/10/kotlin-census-2017/
12 | translator: pye52 & 睡魔的倦意
13 | translator_url: https://pye52.github.io/ & https://suima0v0.github.io/
14 | ---
15 |
16 | 你好!
17 | 我们每年都会进行Kotlin的官方统计,以便获得最新的反馈,以及您如何在项目中使用Kotlin。如果你还未开始使用Kotlin,请让我们知道你的顾虑,你对这个语言的意见对我们来说也是非常重要的。感谢你去年填写的调查表,如果你在今年也能填写一份,这将对我们有莫大的帮助:我们对最新的信息很感兴趣,同时基于去年的调查结果也增加了一些新的问题。
18 | 因此,能否占用你宝贵的2分钟,填写下面的调查表呢?
19 | 我们不会主动使用你所提供的有关于你个人的姓名、应用或者公司名字等个人信息。我们会先向你发送书面许可请求。
20 |
21 | 谢谢!
22 |
--------------------------------------------------------------------------------
/original/Gradle Meets Kotlin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Gradle Meets Kotlin"
3 | date: 2016-05-18 06:18:00
4 | author: Hadi Hariri
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/05/gradle-meets-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Back at **JavaOne 2015**, during a lunch break we started chatting with **Hans Dockter, CEO of Gradle**. A couple of days after the conference, a few of us were at the Gradle offices talking about what would be the beginning of the collaboration between JetBrains and Gradle; to bring first-class tooling and support for a static language to Gradle.
18 | Today, at the [Kotlin Night in San Francisco](http://info.jetbrains.com/Kotlin-Night-2016.html)
--------------------------------------------------------------------------------
/translated/Slides from the JVM Language Summit presentations.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译] JVM 语言峰会上的演示幻灯片"
3 | date: 2011-07-20 23:16:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/07/slides-from-the-jvm-language-summit-presentations/
13 | translator: DemoJameson
14 | translator_url: http://www.demojameson.com
15 | ---
16 |
17 | 一个简短的说明:我们已经公开了 JVM 语言峰会上演示和研讨会时使用的幻灯片。
18 | 其中 [演示](http://confluence.jetbrains.net/download/attachments/40702623/JVMLS_talk_2011.pdf?version=1&modificationDate=1311201742425) 涉及到高阶函数和类型安全的 Builder,而 [研讨会](http://confluence.jetbrains.net/download/attachments/40702623/JVMLS_workshop_2011.pdf?version=1&modificationDate=1311201781543) 则涵盖了类、多继承、泛型和 Class objects。
19 |
--------------------------------------------------------------------------------
/translated/Kotlin census call to action.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin census: call to action"
3 | date: 2016-09-01 17:06:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/09/kotlin-census-call-to-action/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 很多时候,我们被工作或计划与 Kotlin 合作的人询问,我们的采用率是多少,谁在使用 Kotlin 以及为什么。
18 | 虽然我们接受 [拉请求](https://github.com/JetBrains/kotlin-web-site/blob/master/_data/companies-using-kotlin.yml) 并且经常遇到一个*tweet*,我们真的很想知道你,不管你是否在生产中使用 Kotlin,如果是这样,你怎么会遇到什么问题。这不仅有助于我们回答这个问题,当有人询问我们的采纳问题,而是更多地了解我们的社区。我们有近 4000 人 [Kotlin 松弛](http://kotlinslackin.herokuapp.com/) 独自一人,很难跟踪每一个反馈!
19 | 因此,我们问你是否可以给我们两分钟的时间,并填写以下调查。请注意,通过向我们提供您的详细信息,您不会自动同意使用您的姓名,申请或公司名称。在这样做之前,我们会要求您提供书面确认。
20 | 谢谢!
21 |
--------------------------------------------------------------------------------
/translated/Kotlin Workshop Material for you to use.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Kotlin Workshop Material for you to use
3 | author: Hadi Hariri
4 | date: 2017-07-27 12:36:00
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Kotlin Workshop Material for you to use
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2017/07/kotlin-workshop-material-for-you-to-use/
13 | translator: pye52
14 | translator_url: https://pye52.github.io/
15 | ---
16 |
17 | 我们将主要更新推送到我们创建的包含Kotlin Workshop资料的新存储库。除了涵盖所有主要的Kotlin主题的示例代码外,它还有演示幻灯片,以及练习和问题,供学生完成。
18 | 这是我与JetBrains中其他人在Kotlin研讨会上使用的材料。它分为基础和高级,一般可以使用两天。我们用Creative Commons进行了授权,欢迎使用它来学习Kotlin和/或组织你们自己的研讨会。作为开源项目,非常欢迎你们的贡献!
19 | Kotlin Workshop材料
20 | ## 临近的研讨会提醒
21 |
22 | 提醒一下,如果您有兴趣参加即将来临的研讨会,我和Svetlana将在未来几个月内有如下的组织:
23 |
24 | * 8月14日和15日 - 澳大利亚悉尼
25 | * 9月20日 - 澳大利亚墨尔本
26 | * 9月28日 - 澳大利亚布里斯班
27 | * 10月4日 - 挪威奥斯陆
28 |
29 | 期待你们的到来!
30 |
--------------------------------------------------------------------------------
/translated/Hello World.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Hello World"
3 | date: 2011-07-19 22:13:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/07/hello-world-2/
13 | translator: DemoJameson
14 | translator_url: http://www.demojameson.com
15 | ---
16 |
17 | 在今天的 [JVM 语言峰会](http://openjdk.java.net/projects/mlvm/jvmlangsummit/) 上,JetBrains 公开了已经积极开发近一年的新项目 **Kotlin**,这是一门运行在 JVM 上的新静态类型编程语言。
18 |
19 | 凭借多年为不同语言创建开发工具的经验,我们希望能为当今的环境提供足够高效的语言,同时足够简单以便于普通程序员学习。
20 |
21 | 当前 Kotlin 正在积极开发中但是远未成熟,还不能提供给开发团队以外的人使用。现在能做的是阅读 [语言文档](http://confluence.jetbrains.net/display/Kotlin/Welcome) 并留下关于语言设计的反馈——你喜欢哪些功能、哪些功能缺失、哪里令人困惑等等。
22 |
23 | 有一件事要注意:由于我们是一个开发工具公司,我们同时正在为 Kotlin 语言本身建立一流的 IDE 支持。一旦语言达到了 beta 阶段(目前计划在 2011 年底),我们会使用 Apache 2 许可证将编译器和开发工具开源。
24 |
25 | 我们接下来还有很多工作,很乐于听到你对我们最近努力成果的看法。所以让我们开始讨论吧!
26 |
--------------------------------------------------------------------------------
/translated/Free Kotlin Webinar on Wednesday, October 10th.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Free Kotlin Webinar on Wednesday, October 10th"
3 | date: 2012-09-25 11:06:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2012/09/free-kotlin-webinar-on-wednesday-october-10th/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 加入我(Andrey Breslav)和 [哈迪哈里里](http://www.jetbrains.com/devnet/academy/experts/Hadi_Hariri.html) 在一个 [网络研讨会](https://www4.gotomeeting.com/register/662905759) 关于 [Kotlin M3](http://blog.jetbrains.com/kotlin/2012/09/kotlin-m3-is-out/) 。我们将讨论新功能和计划,给出一些演示并回答**您的问题**。
18 | 免费网络研讨会将于 10 月 10 日(星期三)16:00**进行 [CET(中欧时间)](http://wwp.greenwichmeantime.com/time-zone/europe/european-union/central-european-time/) 。空间**限制** [在这里注册](https://www4.gotomeeting.com/register/662905759) 。
19 | 期待与您见面!并有一个很好的 Kotlin!
20 |
--------------------------------------------------------------------------------
/original/The Kotlin issue tracker is now public.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "The Kotlin issue tracker is now public"
3 | date: 2011-08-03 10:24:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/08/the-kotlin-issue-tracker-is-now-public/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Following the tradition of other JetBrains projects, we’ve opened up the issue tracker for Kotlin to the public. In the issue tracker, you can see some of our thinking and things we’re working on, and you can also file issues asking for new features in the language or changes in the current design. We hope that the tracker will let us keep the discussion more structured than the comments in the blog and on Confluence pages.
18 | The URL for the tracker is: [http://youtrack.jetbrains.net/issues/KT](http://youtrack.jetbrains.net/issues/KT)
--------------------------------------------------------------------------------
/translated/Join Live Webinar — Functional Programming with Kotlin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Join Live Webinar — Functional Programming with Kotlin"
3 | date: 2015-10-19 12:43:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/10/join-live-webinar-functional-programming-with-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 加入我们这个**10 月 22 日星期四,格林尼治标准时间 14:00 - 15:00(美国东部时间上午 10:00 - 11:00),我们的免费网络研讨会, [Kotlin 功能编程](http://info.jetbrains.com/Kotlin-Webinar-October2015-registration.html) 与麦克赫恩
18 | 在这次演讲中,Mike Hearn 将通过工作实践的例子,重点介绍功能编程,简要介绍 Kotlin 的编程。
19 | 涵盖的主题将包括:
20 |
21 | * 使用功能转换
22 | * 不变性
23 | * 懒惰和懒惰的无限序列
24 | * 使用 funKtionale,这是一个使用 Haskell 已知的几个功能来扩展 Kotlin 的库
25 | * 模式匹配
26 | * 无效用户界面
27 |
28 | 每个人都是 [欢迎](http://info.jetbrains.com/Kotlin-Webinar-October2015-registration.html) !
29 | 您可以向 Mike 咨询问题,并为评论中的未来网络研讨会提出主题。
30 |
--------------------------------------------------------------------------------
/original/Announcing KotlinConf.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Announcing KotlinConf"
3 | date: 2017-03-14 21:57:00
4 | author: Hadi Hariri
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2017/03/announcing-kotlinconf/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Over the past year we have seen significant growth in Kotlin adoption, represented not only by the lines of Kotlin code on GitHub ( [8M new lines of code since 1.0 release](https://blog.jetbrains.com/kotlin/2017/03/kotlin-1-1/) ) but also by the numerous companies that have been reaching out to us about their usage, the number of talks being presented by community members at conferences, the increase in new frameworks and libraries, new user groups and meet-ups, as well as community events
18 | To thank the wonderful Kotlin community, and to also share the most exciting things happening in Kotlin, we’re happy to announce
19 |
--------------------------------------------------------------------------------
/original/Slides from the JVM Language Summit presentations.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Slides from the JVM Language Summit presentations"
3 | date: 2011-07-20 23:16:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2011/07/slides-from-the-jvm-language-summit-presentations/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Just a quick note: we’ve published the slides from the presentation and workshop that we gave on the JVM Language Summit.
18 | The [presentation](http://confluence.jetbrains.net/download/attachments/40702623/JVMLS_talk_2011.pdf?version=1&modificationDate=1311201742425) covers higher-order functions and typesafe builders, and the [workshop](http://confluence.jetbrains.net/download/attachments/40702623/JVMLS_workshop_2011.pdf?version=1&modificationDate=1311201781543) covers classes, multiple inheritance, generics and class objects.
19 |
--------------------------------------------------------------------------------
/translated/Fibers and Actors in Kotlin with Quasar.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Fibers and Actors in Kotlin with Quasar"
3 | date: 2015-06-04 18:44:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/06/fibers-and-actors-in-kotlin-with-quasar/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 在里面 [上一篇文章](http://blog.jetbrains.com/kotlin/2015/05/kotlin-m12-is-out/) 我们提到了 [类星体](http://docs.paralleluniverse.co/quasar/) 库现在支持 Kotlin,为光纤(轻量级线程),Go-like 频道,Erlang 类演员和其他异步工具提供了极好的支持。
18 | 我们的朋友来自 [平行宇宙](http://www.paralleluniverse.co/) 已经出版了 [博客文章](http://blog.paralleluniverse.co/2015/06/04/quasar-kotlin/) 深入了解与 Kotlin 使用 Quasar 的细节。即使在不太可能的情况下,多线程并不关心您,Quasar / Kotlin 集成是在 Kotlin 编写的“DSL”库的一个很好的例子,它使用
19 |
20 | * 数据类
21 | * 顶级功能
22 | * 羔羊
23 | * 注释表达式
24 | * when-expressions
25 | * 内联函数
26 |
27 | 构建一个自然而且高效的 API,以及 [博客文章](http://blog.paralleluniverse.co/2015/06/04/quasar-kotlin/) 解释得很好
28 | 请享用!
29 |
--------------------------------------------------------------------------------
/translated/Meet the Kotlin Team at Gradle Summit.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Meet the Kotlin Team at Gradle Summit"
3 | date: 2016-06-13 13:28:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/06/meet-the-kotlin-team-at-gradle-summit/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 你可能已经听到这个消息,宣布你很快就能够 [将您的 Gradle 构建脚本和插件写入 Kotlin](https://blog.jetbrains.com/kotlin/2016/05/gradle-meets-kotlin/) 。在旧金山的 Kotlin 之夜,来自 Gradle 的 Hans Dockter 演示了支持的第一个原型。在最初公布之后,我们继续与 Gradle 团队携手合作,精简原型,并使其更接近发行版。和下周,在 [帕洛阿尔托梯级峰会](https://gradlesummit.com/) 我们将分享我们进展的细节。
18 | 除了 Gradle 开发人员和用户的介绍,您还会看到 [Kotlin 队的德米特里·杰梅罗夫的主旨演讲](https://gradlesummit.com/schedule/kotlin) 谈论 Kotlin 的 DSL 支持功能及其在 Gradle 构建脚本 DSL 中的用途。在展会区域,您可以与 Kotlin,IntelliJ IDEA 和 TeamCity 的开发人员聊天,他们将帮助您解决与 JetBrains 产品一起使用 Gradle 的任何问题。
19 | 峰会将于 6 月 23 日至 24 日在加利福尼亚州的帕洛阿尔托市举行 [注册开放](https://info.gradlesummit.com/conference/palo_alto/2016/06/register) 。期待在那与你见面。
20 |
--------------------------------------------------------------------------------
/translated/Kotlin 1.1 What’s coming in the standard library.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin 1.1: What’s coming in the standard library"
3 | date: 2017-01-25 00:15:00
4 | author: ilya.gorbunov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2017/01/kotlin-1-1-whats-coming-in-the-standard-library/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | ## Java 9 准备工作
18 |
19 | Java 9 即将到来 [项目拼图](http://openjdk.java.net/projects/jigsaw/spec/sotms/) 到桌面 - Java 平台模块系统。它所施加的约束之一是没有两个模块可以在同一个包中声明公共 API。当有两个有助于同一个软件包的模块时,这种情况称为“拆分”软件包。
20 | 我们在运行时工具中使用拆分包面临这个问题:首先,kotlin-runtime 和 kotlin-stdlib 模块共享很多 kotlin。* packages,第二,kotlin-runtime 和 kotlin-reflect share kotlin.reflect 包。我们要做的是使我们的工件对模块系统更加友好:
21 |
22 | 0. 我们将 kotlin-runtime 和 kotlin-stdlib 合并到单个工件 kotlin-stdlib 中。此外,我们将将编译器分发中的 kotlin-runtime.jar 重命名为 kotlin-stdlib.jar,以减少在不同构建系统中使用不同名称的标准库引起的混淆。
23 |
24 | 这个重命名将分两个阶段进行:在 1.1 中,编译器分发中的 kotlin-runtime.jar 和 kotlin-stdlib.jar 都将具有相同的内容,而在 1.2 中,前者将被删除。
25 |
26 |
--------------------------------------------------------------------------------
/translated/Kotlin 1.1-What’s coming in the standard library.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin 1.1: What’s coming in the standard library"
3 | date: 2017-01-25 00:15:00
4 | author: ilya.gorbunov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | translator:
13 | translator_url:
14 | source_url: https://blog.jetbrains.com/kotlin/2017/01/kotlin-1-1-whats-coming-in-the-standard-library/
15 | ---
16 |
17 | ## [?25l[?25hJava 9准备工作
18 |
19 | Java 9即将到来 [项目拼图](http://openjdk.java.net/projects/jigsaw/spec/sotms/) 到桌面 - Java平台模块系统。它所施加的约束之一是没有两个模块可以在同一个包中声明公共API。当有两个有助于同一个软件包的模块时,这种情况称为“拆分”软件包。
20 | 我们在运行时工具中使用拆分包面临这个问题:首先,kotlin-runtime和kotlin-stdlib模块共享很多kotlin。* packages,第二,kotlin-runtime和kotlin-reflect share kotlin.reflect包。我们要做的是使我们的工件对模块系统更加友好:
21 |
22 | 0. 我们将kotlin-runtime和kotlin-stdlib合并到单个工件kotlin-stdlib中。此外,我们将将编译器分发中的kotlin-runtime.jar重命名为kotlin-stdlib.jar,以减少在不同构建系统中使用不同名称的标准库引起的混淆。
23 |
24 | 这个重命名将分两个阶段进行:在1.1中,编译器分发中的kotlin-runtime.jar和kotlin-stdlib.jar都将具有相同的内容,而在1.2中,前者将被删除。null
25 | [?25h
26 |
27 |
--------------------------------------------------------------------------------
/translated/Kotlin 1.0.7 is out.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin 1.0.7 is out"
3 | date: 2017-03-15 22:21:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2017/03/kotlin-1-0-7-is-out/
13 | translator: pye52
14 | translator_url: https://github.com/pye52
15 | ---
16 |
17 | 我们很高兴地宣布Kotlin 1.0.x系列的最后一个更新,Kotlin 1.0.7已经发布了。需要重点关注的是该补丁针对Gradle和annotation processing进行修复,此前无法升级到1.1版本的用户现在可以正常使用了。完整的修复列表可以在[更新日志](https://github.com/JetBrains/kotlin/blob/1.0.7/ChangeLog.md)查看。
18 | 要在Maven或Gradle版本中更新版本,只需在构建脚本中更改Kotlin版本号。命令行编译器会在[Github发行页面](https://github.com/JetBrains/kotlin/releases/tag/v1.0.7)中下载。
19 | 在IntelliJ IDEA和Android Studio中,如果您使用Kotlin 1.0.7构建项目,我们建议使用1.1版本的插件,并将语言版本切换为1.0。如果您确实想要安装1.0.7版本的插件,可以在[Kotlin插件页面](https://plugins.jetbrains.com/plugin/6954-kotlin)下载相应版本,并通过IDE的“从磁盘安装插件...”按钮进行安装。
20 | 一如既往,如果您在新版本中遇到任何问题,欢迎您在[讨论组](https://discuss.kotlinlang.org/)或者Slack(在[这里](http://kotlinslackin.herokuapp.com/)获得邀请)里寻求帮助,或在[这里](https://youtrack.jetbrains.com/issues/KT)提交issue。
21 | 让我们来享受Kotlin吧!
--------------------------------------------------------------------------------
/original/Free Kotlin Webinar on Wednesday, October 10th.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Free Kotlin Webinar on Wednesday, October 10th"
3 | date: 2012-09-25 11:06:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2012/09/free-kotlin-webinar-on-wednesday-october-10th/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Join me (Andrey Breslav) and [Hadi Hariri](http://www.jetbrains.com/devnet/academy/experts/Hadi_Hariri.html) in a [webinar](https://www4.gotomeeting.com/register/662905759) about [Kotlin M3](http://blog.jetbrains.com/kotlin/2012/09/kotlin-m3-is-out/) . We will discuss the new features and our plans, give some demos and answer **your questions**.
18 | The free webinar will take place **Wednesday, October 10th at 16:00** [CET (Central European Time)](http://wwp.greenwichmeantime.com/time-zone/europe/european-union/central-european-time/) . Space is **limited**, please [register here](https://www4.gotomeeting.com/register/662905759) .
19 | Looking forward to meeting you there! And have a nice Kotlin!
20 |
--------------------------------------------------------------------------------
/translated/Kotlin Educational Plugin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin Educational Plugin"
3 | date: 2016-03-17 18:47:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/03/kotlin-educational-plugin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 我们总是说 Kotlin 真的很容易学习。这是!但这不仅仅是语言:学习材料也有所不同。今天我们正在朝这个方向迈出另一个重要的一步。我们很高兴地介绍 Kotlin 教育插件。
18 |
19 | {% raw %}
20 |

如果您的编程语言很小,您可能在 1950 年以前出生,而您的第一台电脑比现在的公寓大。即使是那些语言也不那么小。一个人花费一些时间掌握一种编程语言。为什么?
26 | 因为有很多决定“压缩”成一种语言的形式。没有什么限制程序员的想象力,像编译器,没有什么限制了一个语言设计,就像一个现实世界,其所有的“遗产”,兼容性问题,性能限制,几代老习惯和泄漏抽象。 27 |这个谈话是关于权衡:为什么我们作为语言设计师,而不是这样做,而不是这样做。
28 | 看到你 [2013 年 6 月 14 日,星期五 11:30 @ Room 2](http://geekout.ee/schedule/andrey-breslav-jetbrains-building-jvm-languages/) UPD: 29 | 30 | * 幻灯片这个演讲 31 | * 关于 Kotlin 的更多幻灯片和视频 32 | 33 | -------------------------------------------------------------------------------- /translated/KotlinConf 2017 Session Recordings and Photos are Here!.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: KotlinConf 2017 Session Recordings and Photos are Here! 3 | author: Robert Demmer 4 | date: 2017-12-08 12:26:00 5 | tags: 6 | categories: 官方动态 7 | reward: false 8 | reward_title: Have a nice Kotlin! 9 | reward_wechat: 10 | reward_alipay: 11 | source_url: https://blog.jetbrains.com/kotlin/2017/12/kotlinconf-2017-session-recordings-and-photos-are-here/ 12 | translator: pye52 13 | translator_url: https://pye52.github.io/ 14 | --- 15 | 16 | 终于,都已齐备! 17 | 所有的KotlinConf会议录像及其幻灯片都在[这里](https://kotlinconf.com/talks/)。观看你错过的会议,重温你感兴趣的部分!你甚至可以在最新发布的[图库](https://kotlinconf.com/photos/)里寻找上镜的自己、朋友或者同事。 18 | 若只想要快速回顾,可以观看下面的精彩集锦,你也可以直接浏览JetBrainsTV上的KotlinConf播放列表。 19 | 20 | 21 | 22 | 我们要感谢所有讲师的精彩发言,并在此列出KotlinConf与会者评分最高的讲座。 23 | 24 | ### 评分最高的5个讲座: 25 | 26 | - Anton Keks的Kotlin Puzzlers 27 | - Huyen Tue Dao和Christina Lee的Kotlintown之路 28 | - Christina Lee的 Two Stones, One Bird: Implementation Tradeoffs 29 | - 由Michael Carducci主讲的主题演讲 30 | - Yoshinori Isogai的How to Kontribute 31 | 32 | ### KotlinConf的2017 33 | 第一次KotlinConf会议于2017年11月2日至3日在加州旧金山的27号码头举行。会议特邀50位演讲嘉宾进行了共3个环节45场的演讲。1200多名来自46个国家热情的成员参加了KotlinConf。这一切的顺利进行都离不开支持我们活动的17个合作伙伴。 34 | 35 | 感谢所有与会者,我们希望在未来的活动中能与更多的人见面! -------------------------------------------------------------------------------- /original/Fibers and Actors in Kotlin with Quasar.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Fibers and Actors in Kotlin with Quasar" 3 | date: 2015-06-04 18:44:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2015/06/fibers-and-actors-in-kotlin-with-quasar/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | In the [previous post](http://blog.jetbrains.com/kotlin/2015/05/kotlin-m12-is-out/) we mentioned that the [Quasar](http://docs.paralleluniverse.co/quasar/) library now supports Kotlin, providing awesome support for fibers (lightweight threads), Go-like channels, Erlang-like actors, and other asynchronous tools. 18 | Our friends from [Parallel Universe](http://www.paralleluniverse.co/) have published a [blog post](http://blog.paralleluniverse.co/2015/06/04/quasar-kotlin/) that dives into details of using Quasar with Kotlin. Even in the unlikely case that multithreading doesn’t concern you much, Quasar/Kotlin integration is a great example of a “DSL” library written in Kotlin, it uses 19 | 20 | * data classes 21 | * top-level functions 22 | * lambdas 23 | * annotated expressions 24 | * when-expressions 25 | * inline functions 26 | 27 | to build a natural-looking and efficient API, and the [blog post](http://blog.paralleluniverse.co/2015/06/04/quasar-kotlin/) explains it very well. 28 | Enjoy! 29 | -------------------------------------------------------------------------------- /translated/M9 is here!.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]M9 is here!" 3 | date: 2014-10-15 18:38:00 4 | author: Hadi Hariri 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2014/10/m9-is-here/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | M9 已经到来,它带来了许多新功能和重要变化。我们已经 [突出显示这些](http://blog.jetbrains.com/kotlin/2014/10/m9-is-coming/) 和 [覆盖别人的细节](http://blog.jetbrains.com/kotlin/2014/10/making-platform-interop-even-smoother/) 。我们深入了解其他一些改进 18 | 19 | ## 语言变化 20 | 21 | **注意:**下面的一些更改是*破坏更改*,这意味着可以使用早期版本编译的一些代码将不再编译,因此您需要更正它。 22 | ### 平台类型 23 | 24 | 和我们一样 [前面提到过](http://blog.jetbrains.com/kotlin/2014/10/making-platform-interop-even-smoother/) ,平台互操作性(即 Java 和 JavaScript 互操作性)是我们的首要任务之一,因为这对我们的用户来说是如此。与 Java 进行互操作时,可疑性*的问题是我们获得的最大的投诉之一。简而言之,问题是来自 Java 的任何引用可能都是*null*,而且通过设计无效的 Kotlin 迫使用户对每个 Java 值进行空值检查,或者使用**(`?。`)或*不空的断言*(`!!`)。那些在纯 Kotlin 世界中非常方便的功能,当您必须在 Kotlin / Java 设置中经常使用它们时,往往会变成灾难。我们依靠 [外部注释](http://blog.jetbrains.com/kotlin/using-external-annotations) 和 [KAnnotator](http://blog.jetbrains.com/kotlin/2013/03/kannotator-0-1-is-out/) 通过增加具有额外类型信息的 Java 来缓解此问题。这种方法证明是太麻烦了,在某些情况下不起作用。 25 | 这就是为什么我们采取了一个激进的方法,并使得 Kotlin 的类型系统更加轻松,当涉及到 Java 互操作:现在来自 Java 的引用有特别标记的类型(我们称之为“平台类型”,因为它们来自底层平台),其中特别处理: 26 | 27 | * Kotlin 不对平台类型执行零安全性。即对于 Java 值,您将获得 Java 的语义:NPE 现在可能来自 Java 的值 28 | 29 | -------------------------------------------------------------------------------- /original/Kotlin census call to action.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Kotlin census: call to action" 3 | date: 2016-09-01 17:06:00 4 | author: Roman Belov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2016/09/kotlin-census-call-to-action/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | Many times we’re asked by people working with or planning to work with Kotlin, what our adoption rate is and who’s using Kotlin and what for. 18 | While we do accept [pull requests](https://github.com/JetBrains/kotlin-web-site/blob/master/_data/companies-using-kotlin.yml) and run into an occasional *tweet* we would really like to know first-hand from you, whether you’re using Kotlin in production and if so, how, and what issues you have faced. This not only helps us answer the question when someone asks about our adoption, but learn more about our community. With close to 4000 people on our [Kotlin Slack](http://kotlinslackin.herokuapp.com/) alone, it’s hard to keep track of every piece of feedback! 19 | As such, we’re asking you if you could kindly give us two minutes of your time and fill out the following survey. Please note that by providing us your details, you are not automatically giving us consent to use your name, application or company name. We would ask for written confirmation from you before doing so. 20 | Thank you! 21 | -------------------------------------------------------------------------------- /translated/Kotlin 1.1.1 is out.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Kotlin 1.1.1 is out" 3 | date: 2017-03-14 20:29:00 4 | author: Dmitry Jemerov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2017/03/kotlin-1-1-1-is-out/ 13 | translator: SnakEys 14 | translator_url: 15 | --- 16 | 17 | 今天我们发布了针对**Kotlin 1.1**的第一个 bug 修复更新。此更新的重点是解决导致错误代码生成的回归;我们希望尽可能快地修复此问题。详细内容请查看[更新日志](https://github.com/JetBrains/kotlin/blob/1.1.1/ChangeLog.md) 。 18 | 重点更新如下: 19 | 20 | * 默认情况下,已启用 Gradle 增量编译。如果需要,您仍然可以按照文档描述禁用此功能。 21 | * Kotlin 插件现已可以通过 Gradle 插件依赖添加使用。详情可参阅相关文档。 22 | * 禁用使用带有接收器的函数类型作为 JavaScript 外部声明的参数类型。在此之前,传递给这些参数的 lambdas 没有被正确的参数调用,并且在这个问题上没有简单的解决方法,所以现在我们决定禁用这个功能。 23 | 24 | 更新后的 Kotlin [Eclipse](https://marketplace.eclipse.org/content/kotlin-plugin-eclipse) 和 [NetBeans](http://plugins.netbeans.org/plugin/68590/kotlin) 插件将支持 Kotlin 1.1.1,所以您可以尽情享受 Kotlin 新版本的优点而无需关注 IDE。 25 | ## 如何更新 26 | 27 | 要更新 IDEA 插件,在菜单栏中依次选择 Tools | Kotlin | Configure Kotlin Plugin Update,然后点击“Check for updates now”按钮。另外,不要忘记在 Maven 和 Gradle 构建脚本中更新编译器和标准库版本 28 | 29 | 命令行编译器可以从 [Github 发布页面](https://github.com/JetBrains/kotlin/releases/tag/v1.1.1) 页面下载。 30 | 像往常一样,如果您在新版本中遇到任何问题,您可以在 [论坛](https://discuss.kotlinlang.org/) 中寻求帮助,在 Slack([获取邀请](http://kotlinslackin.herokuapp.com/))、或者在[问题追踪器](https://youtrack.jetbrains.com/issues/KT)提出问题 。 31 | 让我们开始吧! 32 | -------------------------------------------------------------------------------- /original/Kotlin Session at Devoxx, November 16th.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Kotlin Session at Devoxx, November 16th" 3 | date: 2012-11-08 12:09:00 4 | author: Robert Demmer 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2012/11/devoxx-kotlin-session/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 |
November 12th-16th the JetBrains team will travel to**Devoxx** in Antwerp, Belgium. We would like to invite you to stop by our **booth** and also to our **Kotlin session** with [Hadi Hariri](http://twitter.com/hhariri) .
18 | Join us for ***Putting Kotlin to the Test***, **Friday**, **November 16th** from **11:50am – 12:50pm**.
19 | We look forward to meeting you there!
20 |
--------------------------------------------------------------------------------
/translated/M9 is coming.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]M9 is coming"
3 | date: 2014-10-01 22:10:00
4 | author: Hadi Hariri
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2014/10/m9-is-coming/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 我们一直在为 Kotlin M9 的下一个即将发布的版本而努力,它包含相当多的新功能和一些重要的更改。
18 | ## 平台互操作性改进
19 |
20 | Kotlin 的目标之一一直是利用现有的代码,库和 JVM 生态系统,并能够混合和匹配 Kotlin 和 Java。使用 M9,我们将大大减少摩擦。用于消耗或实现 Java 编写的 API,导出函数作为静态方法,删除冲突以及特征的未知空白类型现在以更直接的方式编译,从而解决了仅支持简单接口的某些代码生成库的问题。
21 | ## 增量编译
22 |
23 | 我们希望 Kotlin 编译与 Java 一样快,为此我们引入了增量编译。此优化显着减少编译时间。它还兼容 IntelliJ IDEA 的自动创建功能,它可以在后台编译代码,因为进行了更改。
24 | ## 模块
25 |
26 | 编译器和 IDE 现在分享对模块的理解,使其在设计时间和编译时间之间保持一致。完成不再提供不包含在特定模块的依赖关系的库中的符号,从而提高隔离度并减少不必要的外部依赖关系的可能性。现在,*内部*可见性修饰符仍将被视为*public*。在这方面做出明确的承诺之前,我们仍然需要了解用户体验消费 DSL 的方式。
27 | ## 调试器
28 |
29 | 通用调试器的改进,可以更好地了解 Kotlin 生成的代码,为断点和 Kotlin 特定的构造提供更好的体验。
30 | ## 重构和智慧
31 |
32 | IntelliJ IDEA 的可用性和新功能的改进,包括期待已久的*使用创建*,更多意图(快速修复)和代码完成增强功能。现在,*提取方法*重构也分析了提取新方法的代码重复,建议用新方法替换这些方法。 Java 到 Kotlin 转换器也得到了很大的改进,提供了将单个或多个文件从 Java 转换为 Kotlin 的更好的转换。
33 | ## JVM 代码生成
34 |
35 | 对于 JVM,代码生成的改进可以减少字节码大小,提高生成代码的性能,更好地兼容 Java8 运行时的现代 HotSpot 优化和增强功能内联,这是 M9 的一些期望。
36 | ## JavaScript
37 |
38 | 对 JavaScript 平台的支持已经得到改进,几乎所有的语言功能都可以用于定位 JavaScript 运行时的模块。标准库已经预编译,现在随编译器一起提供,允许编写使用标准函数的 JavaScript 兼容子集的代码,例如处理收集操作的代码。并且通过一个微小的修改,代码也可以在 node.js 上运行。
39 | M9 即将推出,敬请期待!
40 |
--------------------------------------------------------------------------------
/translated/Dogfooding Kotlin and M3.1.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Dogfooding Kotlin and M3.1"
3 | date: 2012-10-10 13:06:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2012/10/dogfooding-kotlin-and-m3-1/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 发布后 [Kotlin M3](http://blog.jetbrains.com/kotlin/2012/09/kotlin-m3-is-out/) 我们马上就开始了 [狗食](http://en.wikipedia.org/wiki/Eating_your_own_dog_food) Kotlin 工作 [KAnnotator](https://github.com/abreslav/kannotator) - 一个静态分析工具,将自动推断图书馆的无效注释 - 帮助我们极大地优先考虑问题。因此,我们推出了修补程序更新: [KotlinM3.1](http://plugins.intellij.net/plugin?pr=idea&pluginId=6954) ( [关闭问题清单](http://youtrack.jetbrains.com/issues/KT?q=resolved+date%3A+2012-09-12+..+2012-10-10) )。我们建议用最新的方式运行它 [IntelliJ IDEA 12 EAP](http://confluence.jetbrains.com/display/IDEADEV/IDEA+12+EAP) 。
18 | 几个亮点:
19 |
20 | * 一堆烦人的例外和性能问题。
21 | * 参考内部枚举固定。
22 | * 来自对象字面的超级电话固定。
23 | * 一些后端修复,包括桥接方法和调试器相关的事情。
24 | * 您现在可以在包/模块中运行所有测试。
25 |
26 | BTW, [这个讲话](http://blueskybd.vo.llnwd.net/o16/oracle/CON5934_mp4_5934_001.html) 我介绍了 [JavaOne](https://oracleus.activeevents.com/connect/sessionDetail.ww?SESSION_ID=5934) 一周前,它涵盖了 M3 的一些新功能。幻灯片可用 [这里](http://confluence.jetbrains.net/display/Kotlin/Talks+and+Publications) 。其他会谈可以看 [这里](http://confluence.jetbrains.net/display/Kotlin/Talks+and+Publications) 。
27 |
28 | {% raw %}
29 | 30 | {% endraw %} 31 | 32 | -------------------------------------------------------------------------------- /translated/Kotlin Web Demo is out!.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Kotlin Web Demo is out!" 3 | date: 2012-01-10 19:16:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2012/01/kotlin-web-demo-is-out/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 自从第一次提交到我们的源代码管理以来,已经有一年多了,我们很高兴地宣布 Kotlin 的第一个公开预览。 18 | 此预览的工作原理如下: 19 | 20 | * 您访问 http://kotlin-demo.jetbrains.com 并在浏览器中加载代码编辑器: 21 | * 你查看例子,修改它们,甚至解决我们的玩具问题示例; 22 | * 您可以在我们服务器上运行的 JVM 上运行代码,以便您可以使用熟悉的 JDK 类; 23 | * 或者,您可以将代码编译为 JavaScript 并在浏览器中运行: 24 | 25 | 请注意,JavaScript 后端是一个 pre-alpha 版本,因此可能会拒绝编译一些程序。 26 | 27 | 28 | {% raw %} 29 |
30 | {% endraw %} 31 | 32 | **实验功能** 33 | 默认情况下,只有运行程序时才会显示错误突出显示。但是,您可以尝试我们正在尝试的一些功能,并打开“as-you-type”错误,突出显示:
28 | {% endraw %} 29 | 30 | 一般抢先票在首轮抢先注册活动之后也已经售罄了,普通门票尚在发售中,售完即止。如果你想参加KotlinConf,也请[马上注册](https://kotlinconf.com/registration/?utm_source=kotlinblog&utm_medium=blog&utm_campaign=speakerannouncement)吧,否则你将错失机会。 31 | 32 | 温馨提示,KotlinConf将于11月2-3日在美丽的加利福尼亚州旧金山27码头举行。届时JetBrains团队和充满激情的社区讲师将分享他们关于Kotlin的知识,经验和理念。 33 | 34 | 为期两天的学习,交流会与更多的乐趣在等待着你。[立刻注册吧](https://kotlinconf.com/registration/?utm_source=kotlinblog&utm_medium=blog&utm_campaign=speakerannouncement)! 35 | 36 | 我们期待着在今秋的旧金山与你相见! -------------------------------------------------------------------------------- /original/KotlinConf - Speaker List Announced.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: KotlinConf – Speaker List Announced 3 | author: Hadi Hariri 4 | date: 2017-07-17 14:53:00 5 | source_url: https://blog.jetbrains.com/kotlin/2017/07/kotlinconf-speaker-list-announced/ 6 | tags: 7 | categories: 官方动态 8 | --- 9 | 10 | Is it November yet? 11 | KotlinConf 2017 is a little more than 100 days away and we are super excited to announce our 48 awesome speakers! We are thrilled to have such a wonderful group of people and companies representing the Kotlin community. 12 | 13 | {% raw %} 14 | 15 | {% endraw %} 16 | 17 | 18 | {% raw %} 19 |
20 | {% endraw %} 21 | 22 | Early Bird tickets have followed the lead of Super Early Bird registration, and have sold out. Regular admission tickets are available while supplies last. If you’re considering attending KotlinConf, wait no longer to register or you might miss out. 23 | As a reminder, KotlinConf will be held November 2-3 in beautiful San Francisco, California, at Pier 27. JetBrains team members and passionate community speakers will share their knowledge, experience and philosophy around Kotlin in a wonderful setting. 24 | Two days of learning, networking and fun await you. Register today and reserve your seat! 25 | We look forward to meeting you in San Francisco this fall! 26 | -------------------------------------------------------------------------------- /translated/Gradle Daemon Support for Faster Compilation.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Gradle Daemon Support for Faster Compilation" 3 | date: 2015-08-05 15:20:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2015/08/gradle-daemon-support-for-faster-compilation/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 我们正在努力改进编译时间。今天我们很高兴邀请您尝试使用 Gradle 守护进程的 Kotlin `0.12.1230`。它消除了启动成本,并且您的构建运行速度更快。 18 | ## 背景 19 | 20 | 除了其他的方式,JVM 的编译器和预热活动的加载类似乎在执行`kotlinc`的时候有很大的贡献。这就是为什么我们正在研究如何一次又一次地使用相同的编译器实例:不需要加载可以提供更好的编译时间。 21 | 由于在 JVM 上运行的其他工具似乎也遇到同样的问题,因此有大量的基础设施可以帮助这些事情。 Gradle 有它的 [守护进程](https://docs.gradle.org/current/userguide/gradle_daemon.html) ,一个长期运行的过程(实际上可以是许多进程),其基本功能是保持工具加载,从而运行它们,而不需要加载类和 JIT 编译的启动成本。 22 | ## 试试看 23 | 24 | 我们已经修复了一些阻止 Kotlin 利用此功能的问题。它在 Gradle 2.4 及更高版本中可靠工作(对于 Gradle 升级说明,请参阅 [Gradle 文档](https://docs.gradle.org/current/userguide/gradle_wrapper.html) )。默认情况下,Android Studio 会使用该守护程序,因此您无需太多工作,只需在您的`build.gradle`文件中指定 Kotlin 版本“0.12.1230”即可: 25 | 26 | {% raw %} 27 | 28 | {% endraw %} 29 | 30 | ```kotlin 31 | buildscript { 32 | repositories { 33 | ... 34 | } 35 | dependencies { 36 | classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:0.12.1230' 37 | ... 38 | } 39 | } 40 | ``` 41 | 42 | {% raw %} 43 | 44 | {% endraw %} 45 | 46 | **注意**:仅在几次运行构建之后才能获得全面的加速。我们第一次感冒,等待热身,第二次大部分的预热都消失了,构建速度更快。由于 JIT,后续运行也可能稍快一些。 47 | ## 反馈 48 | 49 | 请告诉我们,如果您的版本随着这一变化而变得更快。一些项目细节(如 LOC 和实际构建时间)将不胜感激。 50 | 谢谢! 51 | -------------------------------------------------------------------------------- /original/Learn Kotlin with “Advent of Code”.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Learn Kotlin with “Advent of Code”" 3 | date: 2015-12-18 22:08:00 4 | author: Roman Belov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2015/12/try-kotlin-with-advent-of-code/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | Christmas is coming! Are you prepared? It’s time to gift yourself with a new language!
29 | {% endraw %} 30 | 31 | ## Kotlin 1.1 活动反馈 32 | 33 | 如果你看了直播,我们想知道你的想法!请 [填写此表格](https://docs.google.com/forms/d/e/1FAIpQLSdgKsJzwc1ToAusi-xpEiiE1O4t3HA5xjlbZXDU5Mg0i3qvNg/viewform) 分享您的反馈。它只需要大约 7-10 分钟。您的投入对于帮助我们改进未来的 Kotlin 活动非常重要。 34 | ## Kotlin 未来特性调查 35 | 36 |


40 | {% endraw %} 41 | 42 | ## GOTO 会议和 Kotlin 研讨会 43 | 44 | 我们也提供 [GOTO London 2016 折扣](https://secure.trifork.com/london-2016/registration/registration.jsp?promotionCode=kotlin100) 这可以用于会议或 [全天 Kotlin 车间举行](https://gotocon.com/london-2016/presentations/show_presentation.jsp?oid=7892) 。 45 | -------------------------------------------------------------------------------- /original/Kotlin Educational Plugin.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Kotlin Educational Plugin" 3 | date: 2016-03-17 18:47:00 4 | author: Roman Belov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2016/03/kotlin-educational-plugin/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | We always said that Kotlin is really easy to learn. And it is! But it’s not only about the language: learning materials make a difference too. Today we are making another important step in this direction. We are happy to present Kotlin Educational Plugin. 18 | 19 | {% raw %} 20 | 21 | {% endraw %} 22 | 23 | Kotlin Edu is a plugin for IntelliJ [IDEA 2016.1](http://blog.jetbrains.com/idea/2016/03/intellij-idea-2016-1-is-here/) which lets you take learning courses. A course contains a number of tasks, and every task has several placeholders which you need to fill in correctly to solve it. 24 | At the moment, there is only one course — the well-known Kotlin Koans, which has been available [online](http://try.kotlinlang.org/koans) for some time and gained considerable popularity among Kotlin learners. The offline versions of the Koans has pretty similar user experience but with all strengths of refactorings and intention actions available in IntelliJ IDEA! 25 | If you have any questions about Kotlin Koans, feel free to ask them in the *#koans* channel in [our Slack](http://kotlinslackin.herokuapp.com) . 26 | P.S. If you want to create your own course, contact us directly [via email](mailto:roman.belov@jetbrains.com) . 27 | -------------------------------------------------------------------------------- /translated/Kotlin Skills Matter Events in London, England.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Kotlin Skills Matter Events in London, England" 3 | date: 2013-01-28 09:51:00 4 | author: Robert Demmer 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2013/01/kotlin-skills-matter-events-in-london-england/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | JetBrains 在四月和五月有两次免费的 Kotlin 活动来到伦敦。两届会议将在 [技能交流](http://skillsmatter.com/location-details/home/1611/96) 需要注册。我们希望看到你在那里! 18 | ** 17 | {% endraw %} 18 | 19 | Thank you! 20 | // '); 22 | // ]]>Industry leading security – <a href=”https://www.surveygizmo.com/”>SurveyGizmo</a>. <a href=”https://www.surveygizmo.com/s3/3910712/951a8e107774??jsfallback=true”>Please take my survey now</a> 23 | -------------------------------------------------------------------------------- /translated/Announcing KotlinConf.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Announcing KotlinConf" 3 | date: 2017-03-14 21:57:00 4 | author: Hadi Hariri 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2017/03/announcing-kotlinconf/ 13 | translator: SnakEys 14 | translator_url: https://github.com/SnakeEys 15 | 16 | --- 17 | 在过去一年中,我们看到了Kotlin在编程语言中的显著成长,其表现不仅仅是Github社区的代码行数([自1.0版本发布以来800万行新增代码](https://blog.jetbrains.com/kotlin/2017/03/kotlin-1-1/)),同样还包括众多公司向我们介绍和反馈Kotlin的使用情况、社区成员在各类大会中所提及的次数,新的框架、依赖库以及用户群组社区数量都呈以数量级的增加。 18 | 19 | 为了感谢令人赞叹的Kotlin社区,也为了分享Kotlin中无比令人兴奋的事情,我们很高兴的宣布将于2017年11月在旧金山举办一场为期两天的盛会:[KotlinConf](https://kotlinconf.com/)。 20 | 21 | {% raw %} 22 |
23 | {% endraw %}
24 |
25 |
26 | 我们会在近期开启早鸟预订,赶快注册吧。
27 |
28 | ### 征文企事
29 | 本次演讲的嘉宾包括**Andrey Breslav**以及**Erik Meijer**,当然我们会在短期内宣布更多的嘉宾以及主题。但这场盛会最不可或缺的人就是你,作为Kotlin社区的成员也可以参与到此次活动中来。因此,我们诚邀您来与我们分享与Kotlin相关的内容。2017年5月1日之前您都可以向我们提交相关主题。
30 |
31 | 关于此次活动若有任何疑问,请发送邮件至[info@kotlinconf.com](info@kotlin.com),或在[Slack](https://kotlinlang.slack.com/)上使用#kotlinconf标签向我们提问,赞助行为请联系[sponsorship@kotlinconf.com](sponsorship@kotlinconf.com)。
32 |
33 | **2017对于Kotlin而言注定是不平凡的一年,希望能在11月与您共同庆祝**
--------------------------------------------------------------------------------
/translated/Try Kotlin in Your Browser New Look and More Features.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Try Kotlin in Your Browser: New Look and More Features"
3 | date: 2015-04-16 20:24:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/04/try-kotlin-in-your-browser-new-look-and-more-features/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 我们发布了 [Kotlin 网络演示](http://kotlin-demo.jetbrains.com) 不久之前,它做了一个很好的工作,帮助人们在浏览器中尝试 Kotlin,并分享可运行的代码。现在,一个闪亮的新版本已经准备好了,现在是退休的旧版本了。
18 | 遇见 [try.kotlinlang.org](http://try.kotlinlang.org) 作为 Kotlin 的基于 Web 的迷你 IDE 的新化身。
19 | ## 特征
20 |
21 | 新版本带来
22 |
23 | * 闪亮的新设计
24 | * 全屏模式
25 | * JUnit 支持(包括智能测试结果视图)
26 | * 多文件项目(我们的示例中的某些文件,如测试,是只读的)
27 | * 从堆栈跟踪导航到代码
28 |
29 |
30 | {% raw %}
31 |
34 | {% endraw %}
35 |
36 | ## 分享你的代码
37 |
38 | 您可以使用 Google,Facebook 或 Twitter 帐户登录。登录后,您可以创建新项目并复制示例项目以进行更改。
39 | 任何已保存的项目(我们的示例或您的自定义代码)可以由**共享,只需从地址栏复制和粘贴链接**。
40 | 例如,这是一个 [链接到示例程序](http://try.kotlinlang.org/#/Examples/Problems/Sum/Sum.kt) 。21 | {% endraw %} 22 | 23 | Kotlin:超越教条主义**
Edument, a JetBrains Training and Consulting Partner, will be providing a full day of Kotlin hacking on Monday, October 6, 2014, in the lovely city of Malmö.
18 |
19 | * Full-Day Kotlin Workshop: learn more and register now.
20 |
21 | The hands-on workshop will begin by walking through the basic syntax, and work its way towards unit testing and language features such as object orientation and functional programming. In the afternoon we will consider use-cases such as writing a domain-specific language and seeing how the syntax and semantics of Kotlin help with some common problems that you may encounter in languages such as Java and C#.
22 | Snacks and drinks will be provided during the day.
23 | Space for this Kotlin Workshop is limited; learn more and register now.
24 |
--------------------------------------------------------------------------------
/original/Join Live Webinar — Quasar and Kotlin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Join Live Webinar — Quasar and Kotlin"
3 | date: 2015-09-14 12:00:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/09/join-live-webinar-quasar-and-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | Join us 
36 | {% endraw %} 37 | 38 | 视频包括跟随的时间戳 [议程公布](http://blog.jetbrains.com/kotlin/2015/10/join-live-webinar-functional-programming-with-kotlin/) : 39 | `00:08` - Intoduction 和演示应用程序 40 | `05:00` - `apply` function 41 | `05:45` - 介绍 NGram 数据类 42 | `08:22` - 创建扩展方法 43 | `09:55` - 使用懒惰的无限序列 44 | `10:35` - `map`功能 45 | `11:10` - `to`函数和中缀符号 46 | `14:35` - 数据类的解构 47 | `19:20` - `filter`,`let`和`全部` 48 | `23:00` - 调试懒惰代码 49 | `24:20` - 将完成添加到 UI 50 | `25:18` - 以功能方式加载数据 51 | `28:30` - 提高数据加载性能 52 | `33:20` - 改善 RX 风格的 UI 响应能力 53 | `40:05` - 使用 [公约](https://github.com/mplatvoet/kovenant) 图书馆 54 | `42:03` - 使用 [funKTionale](https://github.com/MarioAriasC/funKTionale) 图书馆 55 | `44:10` - 调用 56 | `45:35` - 问题 57 | 关于主持人: 58 | 感谢所有与会者的问题!如果还有一些,请联系麦克或我们的团队。 59 | 欢迎您提出未来网络研讨会的主题。 60 | 我们来吧 kotlin!* 61 | -------------------------------------------------------------------------------- /translated/Use Kotlin with npm, webpack and react.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Use Kotlin with npm, webpack and react" 3 | date: 2017-04-18 15:23:00 4 | author: Dmitry Jemerov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2017/04/use-kotlin-with-npm-webpack-and-react/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 在 Kotlin 1.1 中,编译器生成 JavaScript 功能已经达到生产可用状态。当然,编译器支持还不足以解决现实生活中的问题,所以我们继续将 Kotlin 整合到更大的 JavaScript 生态系统中。 18 | 今天,我们要介绍两个新项目:一个将 Kotlin 与 npm,webpack 和 karma 集成在一起的 Gradle 插件,以及一个实现了 Kotlin/JVM 后端和基于 React 的 Kotlin/JS 前端的全栈应用程序示例。 19 | ## Kotlin 前端插件 20 | 21 | [Kotlin 前端插件](https://github.com/Kotlin/kotlin-frontend-plugin) 允许你使用 webpack 构建和部署 Kotlin 前端应用。你可以使用 npm 作为应用的包管理器,插件将负责将依赖的包下载并将其打包到生成的 JS 文件中。该插件还与 Karma 集成,允许你运行应用的测试用例。为了获得最佳的工作流程,该插件支持连续编译和实时预览,确保你的应用在浏览器中始终是最新的。 22 | [README](https://github.com/Kotlin/kotlin-frontend-plugin/blob/master/README.md) 文件给出使用插件的说明,示例目录包含一个 [简单的例子](https://github.com/Kotlin/kotlin-frontend-plugin/tree/master/examples/frontend-only) 显示如何将其应用于真实的项目。 23 | ## Kotlin React 例子 24 | 25 | [Thinkter](https://github.com/Kotlin/kotlin-fullstack-sample) 是使用 Kotlin 构建的现代全栈应用程序的一个例子。后端运行在 Jetty 并使用 [Ktor](https://github.com/kotlin/ktor) (由 Kotlin 团队开发的 Kotlin Web 应用程序框架)。前端使用 React; Kotlin 的 React Wrappers 是 [作为项目的一部分提供](https://github.com/Kotlin/kotlin-fullstack-sample/tree/master/frontend/src/org/jetbrains/react) 。欢迎你在项目中使用我们的 React Wrappers,并根据自己的需要进行调整。请注意,我们正在努力在内部开发 React Wrappers,我们正在考虑将它们作为单独的开源库发布。 26 | 想要了解 Kotlin React 的代码,可以直接阅读 [应用组件](https://github.com/Kotlin/kotlin-fullstack-sample/blob/master/frontend/src/org/jetbrains/demo/thinkter/NewThoughtComponent.kt) 的源码。 27 | Kotlin 开发团队非常欢迎你们反馈意见!请在 GitHub 上提交问题,逛逛 [论坛](https://discuss.kotlinlang.org/) ,或者加入[Kotlin Slack](http://slack.kotlinlang.org/) 的 #javascript 频道。 28 | -------------------------------------------------------------------------------- /original/Webinar recording Developing Multiplatform Projects in Kotlin 1.2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Webinar recording: Developing Multiplatform Projects in Kotlin 1.2 3 | author: Roman Belov 4 | date: 2017-12-11 19:07:00 5 | source_url: https://blog.jetbrains.com/kotlin/2017/12/webinar-recording-developing-multiplatform-projects-in-kotlin-1-2/ 6 | tags: 7 | categories: 官方动态 8 | --- 9 | 10 | Last week the webinar “Developing Multiplatform Projects in Kotlin 1.2” took place. Thanks to all participants for coming and good questions. Today we are happy to publish the recording of it. Don’t hesitate to suggest more themes for new webinars in comments. See you next time! 11 | 12 | {% raw %} 13 | 14 | {% endraw %} 15 | 16 | 17 | {% raw %} 18 |
19 | {% endraw %} 20 | 21 | A flagship feature of Kotlin 1.2 is building multiplatform projects. A multiplatform project allows you to reuse your business logic code, written in Kotlin, between all tiers of an application – the server code running under the JVM, the browser running JavaScript, as well as mobile apps. The shared portion of the code is compiled to all platforms and may delegate to platform-specific implementations of certain APIs or libraries. The platform-specific parts are also written in Kotlin and have full access to the features of each of the supported platforms. 22 | In this talk, we’ll look at the language and IDE features that enable multiplatform development in Kotlin, as well as libraries that can be used in multiplatform code. We’ll study an example project that demonstrates isomorphic HTML rendering (reusing the rendering code between the frontend and the backend), as well as other features of Kotlin multiplatform development. 23 | About the Presenter: 24 | -------------------------------------------------------------------------------- /original/Let’s Kode Together!.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Let’s Kode Together!" 3 | date: 2012-02-13 09:07:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2012/02/lets-kode-together/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | As [Kotlin Web Demo](http://kotlin-demo.jetbrains.com/) is the simplest way to try Kotlin. Today we unveil some new features that make it even more fun. 18 | **HTML5 Canvas** 19 | We added support for HTML5 Canvas (for the JavaScipt back-end) so that you can now do something like: 20 |
30 | {% endraw %} 31 | 32 | -------------------------------------------------------------------------------- /translated/The Road Ahead.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]The Road Ahead" 3 | date: 2012-01-16 10:10:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2012/01/the-road-ahead/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 众所周知,我们上周推出了我们的第一个公开发布: [kotlin-demo.jetbrains.com](http://kotlin-demo.jetbrains.com/) 。而当您(7K + 独特访问者)正在玩乐时,我们将继续致力于 Kotlin 编译器,IDE 和标准库。在这篇文章中,我将概述我们的计划。 **** 18 | **您今天可以玩的** 19 | 今天你可以已经 [尝试](http://kotlin-demo.jetbrains.com/) Kotlin 的许多功能。其中包括: 20 | 21 | * 功能文字(封闭) 22 | * 扩展功能和属性 23 | * 特征(接口中的代码) 24 | * 声明网站/使用网站差异 25 | * 一流的代表团 26 | * 混合 Java / Kotlin 编码 27 | 28 | 看到 [Kotlin 文档](http://jetbrains.com/kotlin) 更多细节。 29 | 将事情用于真正的问题揭示了设计的局限性,不一致性和其他缺点,这是**好**,因为那时我们可以 [修复它们](http://blog.jetbrains.com/kotlin/2012/01/the-great-syntactic-shift/) 。关键是在我们发布 1.0 版本**之前,找到并修复几乎所有的东西**。发布后,我们将无法引入向后不兼容的更改,因此修复语言将变得困难。所以,请尝试他们,并在下面的评论中或在...中给我们您的反馈** [问题追踪器](http://youtrack.jetbrains.net/issues/KT) 。 30 | **什么让我们忙碌** 31 | ****目前,我们正在稳定现有功能,并在 IDE 和语言基础设施(建筑物等)上工作。本月最热门的话题是: 32 | 33 | * 模块:module = 编译和依赖关系管理单元; 34 | * Ant 和 Maven 集成:使用您最喜欢的构建基础设施; 35 | * 标准库:JDK 集合,IO 等的实用功能; 36 | * JavaScript 后端:原型还是很早,但是它正在改进。 37 | 38 | **ToDo** 39 | 当玩 Kotlin 时,很方便的知道什么还不支持。列表很长,其中一些功能甚至可能会等待 2.0: 40 | 41 | * 可见性检查:可惜我们没有这些私人,公共等等; 42 | * 本地功能:函数内部的函数可以是非常方便的事情; 43 | * 标记元组(又名记录):从函数返回很多东西; 44 | * KotlinDoc:像 JavaDoc,但是基于 Markdown; 45 | * 注释:可定制的元数据以启用编译器扩展; 46 | * 次要建设者:有时你需要多于一个; 47 | * 枚举类(代数数据类型):像 Java 枚举,但更好; 48 | * 模式匹配:对象结构的便利条件; 49 | * 内联函数:用于自定义控件结构的零开销闭包; 50 | * 标签:断开并继续外圈; 51 | * 键入别名:缩短长泛型等等; 52 | * 自我类型:永远不要写尴尬的递归泛型; 53 | * 动态类型:互操作性 JavaScript 和其他动态语言; 54 | * Eclipse 插件:Kotlin IDE!= IntelliJ IDEA; 55 | * LLVM 后端:将 Kotlin 编译成本机代码... 56 | 57 | 即使没有这些东西,你可以有很多的乐趣。尝试使用**扩展功能**和**关闭**,**traits**和**字符串模板**等等。解决问题(随着时间的推移我们会加入更多)。 [有一个漂亮的 Kotlin](http://kotlin-demo.jetbrains.com/) ! 58 | -------------------------------------------------------------------------------- /translated/Kotlin Native IDE Support Preview.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Kotlin/Native IDE Support Preview 3 | author: Roman Belov 4 | date: 2017-11-04 02:44:00 5 | source_url: https://blog.jetbrains.com/kotlin/2017/11/kotlinnative-ide-support-preview/ 6 | tags: 7 | categories: 官方动态 8 | translator: SnakEys 9 | translator_url: https://github.com/SnakeEys 10 | 11 | --- 12 | 13 | 14 | Kotlin/Native是一项可以将Kotlin直接编译为机器码的[全新技术](http://kotlinlang.org/docs/reference/native-overview.html),并且生成不依赖虚拟机即可运行的可执行文件。在KotlinConf 2017上,我们正式发布了Kotlin/Native开发工具的预览版本。 15 | 16 | 尽管我们使用IntelliJ IDEA来编写Kotlin,但Kotlin/Native结合了如Clang和LLDB等原生技术的支持。因此JetBrains为Kotlin/Native选择了[CLion](https://www.jetbrains.com/clion/)作为C和C++的IDE。 17 | 18 | 要开始使用,请下载并安装[CLion 2017.3](https://www.jetbrains.com/clion/nextversion/)(请注意,此版本现阶段仍处于早期预览阶段)。接下来,从JetBrains[插件库](https://plugins.jetbrains.com/)中安装两个插件。在CLion设置中,依次选择配置(Configure) → 插件(Plugins) → 安装JetBrains插件…(Install JetBrains plugin…),找到并安装Kotlin和Kotlin/Native插件。请谨记该技术仍然是预览版本,遇到任何错误都有可能,若您在开发中遇到相关问题可及时[向我们反馈](https://youtrack.jetbrains.com/issues/KT)! 19 | 20 | 21 | {% raw %} 22 |
23 | {% endraw %} 24 | 25 | # Kotlin/Native新项目 26 | 27 | CLion是学习这门新技术非常好的切入点。从CLion创建示例项目,并使用简单的示例代码。在菜单中依次选择\*新建项目(New Project) → Kotlin/Native应用程序(Kotlin/Native Application)\*,并从列表中选择可用版本。CLion会根据需要自动在计算机上下载并安装本地软件包。 28 | 29 | # 代码内视 30 | 31 | Kotlin/Native IDE支持基于IntelliJ IDEA的常规Kotlin插件。这意味着开发者完全拥有特定的代码检查,意图,代码补全等操作,当然还有可用于Kotlin/Native的重构。 32 | 33 | # 调试 34 | 35 | CLion插件支持基于LLDB的调试。但目前仍处于活跃开发阶段,需要特定的条件(加上一点运气)才能正常运行。尽量尝试并告诉我们是如何运行的! 36 | # Kotlin /本机测试 37 | 38 | CLion插件还支持运行使用kotlin.test框架编写的测试。但需要手动创建‘Kotlin/Native测试’的运行配置(运行(Run)→ 编辑配置(Edit Configurations…)),在编辑器弹出菜单中创建配置将在后续的更新中加入。 39 | 运行测试,即可看到如下图中所示的测试树: 40 | 41 | 42 | # 下一步计划? 43 | 44 | IDE代码内视,测试支持以及调试器已经是非常不错的工具集,但我们将继续研究这些功能,让开发者尽可能体验如公开发布版本一样的流畅性。但是,这并不是首个Kotlin/Native IDE支持版本的所有内容,我们还将全力支持与本地库的互操作性,并提供诸如文档预览,跨语言导航,当然还有少不了的重构等功能。 45 | 46 | 请尽情享受Kotlin/Native! 47 | -------------------------------------------------------------------------------- /translated/Catch up with our Kotlin Team at Devoxx Belgium.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Catch up with our Kotlin Team at Devoxx Belgium" 3 | date: 2013-11-04 12:36:00 4 | author: Robert Demmer 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2013/11/catch-up-with-our-kotlin-team-at-devoxx-belgium/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 |
30 | {% endraw %} 31 | 32 | 对于完整的 Devoxx Belgium 2013 信息,请访问: http://www.devoxx。是/ 。* 33 | -------------------------------------------------------------------------------- /translated/Spek – A Specification Framework.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Spek – A Specification Framework" 3 | date: 2014-02-17 17:20:00 4 | author: Hadi Hariri 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2014/02/speka-specification-framework/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 一会儿现在,a [很少](http://twitter.com/orangy) [的](http://twitter.com/jonyzzz) [我们](https://plus.google.com/111179551284404865949/about) 一直在开发一个名为 Spek 的项目,这个框架允许您编写可执行规范。它允许您以更人性化的方式编写规范(即测试),而且更重要的是描述性的方式,而无需使用长测试名称,下划线或正则表达式。 18 | 19 | {% raw %} 20 |
21 | {% endraw %} 22 | 23 | 现在已经达到了其第一个里程碑,它足够适合开始在项目中使用,我们准备好反馈和功能要求!它甚至有它的 [自己的网站](http://jetbrains.github.io/spek) 。 24 | ## 简要介绍 25 | 26 | Spek 是一个规范框架。如果您熟悉茉莉花,摩卡,RSpec 或机器规格,那么您将立即看到相似之处。 27 | 28 | {% raw %} 29 |


21 | {% endraw %} 22 | 23 | ## **简介**
If your programming language is small, you’re probably born before 1950, and your first computer was bigger than your present apartment. And even those languages are not so small. One spends quite some time to master a programming language. Why?
26 |Because there are very many decisions “compressed” into the form of a language. Nothing limits a programmer’s imagination like a compiler, and nothing limits a language design like a real world with all of its “legacy”, compatibility concerns, performance limitations, generations-old habits and leaky abstractions.
27 |This talk is about tradeoffs: why we, as language designers, do (or rather did) this and not that.
28 | See you on [Friday, 14 June 2013 11:30 @ Room 2](http://geekout.ee/schedule/andrey-breslav-jetbrains-building-jvm-languages/) UPD: 29 | 30 | * Slides for this talk 31 | * More slides and videos about Kotlin 32 | 33 | -------------------------------------------------------------------------------- /translated/Calling on EAPers.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Calling on EAPers" 3 | date: 2016-08-04 21:44:00 4 | author: Roman Belov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2016/08/calling-on-eapers/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 在 JetBrains,我们一直相信我们的早期访问计划的工具,让开发人员有机会在准备好后立即使用最新的功能或修复程序。我们已经遵循了与 Kotlin 相同的理念,当然知道用语言,一些决定可能会困扰你的生活。 18 | 这就是为什么在 Kotlin 的发布之前,我们将会有里程碑式的发布,其功能和重要的变化对我们早期的采用者(包括我们自己在 JetBrains),收集关于是否按设计工作的反馈。这个发布 - 反馈调整周期在许多场合已被证明是非常宝贵的,并且肯定有助于塑造 Kotlin 1.0。 19 | 但是还没有结束。我们仍然继续使用新的语言功能开发 Kotlin,我们需要您的持续支持。如你所知,我们有两个“分支”的 EAP,1.0.X 更多关于错误修复和工具,和 1.1 EAP 是关于语言变化。而且,这些 EAP 是具有语言变化的 EAP,在那里我们可以真正地使用您的帮助。虽然我们不建议您在生产代码中使用这些 1.1 EAP,但我们绝对需要您给我们反馈。作为回报,我们承诺听你说的一切! 20 | ## 使用 EAP 的 21 | 22 | 访问 EAP 的最简单方法是通过“工具”菜单。打开*工具 | Kotlin | 在主菜单中配置 Kotlin 插件更新*,选择早期访问预览频道 1.0.x 或 1.1,然后按*检查更新*按钮。
We [told you](http://blog.jetbrains.com/kotlin/2013/01/an-interview-with-andy-selvig-author-of-kara-web-framework/) about [Kara Web Framework](http://karaframework.com/) a while ago. It is written in Kotlin and relies on type-safe builders. It doesn’t have to be the only web framework for Kotlin, but the general principles seem good, so I wrote an article about these principles: **Type-Safe Web with Kotlin**, it gives an overview of the framework design, and then gives many details about builders, extensions and so on.
18 | **Examples** used in this article are available at [https://github.com/abreslav/kara-files/blob/master/src/tutorial.kt](https://github.com/abreslav/kara-files/blob/master/src/tutorial.kt) and [https://github.com/abreslav/kara-files/blob/master/src/small_builder.kt](https://github.com/abreslav/kara-files/blob/master/src/small_builder.kt) **Slides** from my talk given at JPoint in Saint Petersburg are also available [online](https://prezi.com/hndtabwcfy5h/type-safe-web-with-kotlin-jpoint/) .21 | {% endraw %} 22 | 23 | 该版本中重新编写了代码格式化功能。而不是我们的第一个天真的实现,我们主要设法将高级格式化程序从 Kotlin IntelliJ Idea 插件移植到 Eclipse 中。这意味着 [很多修复](https://youtrack.jetbrains.com/issues/KT?q=Formatter%20State:%20Fixed%20Subsystems:%20IDE) 已经在那里,即将到来的改进将自动获取! 24 | 25 | {% raw %} 26 |




29 | {% endraw %} 30 | 31 | ## Kotlin 1.1活动时间: 32 | 33 | * CET时间下午5点/7点(PDT时间上午9点/11点) - Andrey Breslav演讲(Youtube上直播30分钟),链接将稍候放出。 34 | * CET时间下午5点30分/7点30分(PDT时间上午9点30分/11点30分) - 休息30分钟,期间可以自由讨论关于在Kotlin未来版本中您最希望加入的功能或特性,并在Twitter上分享和评论。 35 | * CET时间下午6点/8点(PDT时间上午10点/12点) - 与Kotlin团队的互动问答环节(45分钟,直播); 36 | * 欢迎各位参与讨论与发言。 37 | 38 | ## 互动问答环节 39 | 40 | * 从3月21日开始,至3月23日互动环节结束期间,您可以在Twitter上使用#kotlinQA标签向我们提出任何您想要问的问题; 41 | * Kotlin团队将对问题进行分类; 42 | * 团队将在Q&A环节现场回答问题; 43 | * 如果在会议期间有问题没有答复,我们仍将通过Twitter进行回复 44 | * 优先回答提问频率最高的问题 45 | 46 | ## Future Features kit 47 | 48 | 本次调查的目的是收集社区用户对语言特征的偏好和需求。您可以提出在Kotlin后续版本中最希望看到的特征或功能;不过这些内容并不保证能在1.2版本中发布,但我们会在确定工作优先级时考虑您的意见。 49 | 50 | * Kotlin Future Feature Kit包含20张写有功能名称和描述的卡片以及用于投票的贴纸; 51 | * 将功能卡片粘贴到白板(或墙壁)上; 52 | * 每位参加者可获得3张(3张)贴纸,可以在功能中自由分配:最多为三种不同的功能进行投票,或者对某一功能投出两票甚至三票; 53 | * 参加者可以通过阅读卡片的说明了解功能,然后按上所述规则进行投票; 54 | * 将结果进行拍照; 55 | * 使用#kotlinevent标签在Twitter上发布 56 | 57 | [在这里提交你的答案吧](https://docs.google.com/forms/d/e/1FAIpQLSf6iXcrIpaNIqeeUJI2L6pntS5yy_iI01PbrO9gTMmX0kg5Lw/viewform) -------------------------------------------------------------------------------- /original/Follow-up New Class Object Syntax.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Follow-up: New Class Object Syntax" 3 | date: 2015-03-14 10:57:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2015/03/follw-up-new-class-object-syntax/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | In the [previous post](http://blog.jetbrains.com/kotlin/2015/03/upcoming-change-class-objects-rethought/) I explained the rethought design of what used to be called “class objects”: they are now more uniform with normal nested objects, have names (name may be omitted, but a default one will be used by the compiler), and we can write extensions to them. 18 | One of the goals of that post was to gather feedback on the term we proposed, namely “default object”, and many of you rightfully stated in the comments that the term has a disadvantage: it is easily misread for “a default instance of the class”. **Now we are looking for a better term** and need some more feedback… 19 | **Update**: thanks to everyone, with your help, we chose `companion`. 20 | We are talking about a modifier in front of the word **object**: 21 | 22 | {% raw %} 23 | 24 | {% endraw %} 25 | 26 | ```kotlin 27 | class KotlinClass { 28 | ??? object { 29 | fun callMeOnTheClassName() { ... } 30 | } 31 | } 32 | ``` 33 | 34 | {% raw %} 35 | 36 | {% endraw %} 37 | 38 | Our candidates are: 39 | 40 | * default object 41 | * attached object 42 | * companion object 43 | * manifest object 44 | 45 | We’d be very grateful if you **shared your thoughts** about these candidates in the comments. 46 | Thanks! 47 | *P.S. There was a proposal of simply using a naming convention instead of a modifier. This comment explains why we decided in favour of a modifier. Also note that this convention would be used a lot more often than others, and others are subject to reconsideration under the upcoming language design review.* 48 | -------------------------------------------------------------------------------- /translated/A New Open Source Web Site.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]A New Open Source Web Site" 3 | date: 2014-07-15 09:00:00 4 | author: Hadi Hariri 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2014/07/a-new-open-source-web-site/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 我们有一个新的网站和一个新的 [域!](http://kotlinlang.org) {% raw %} 18 | 19 | {% endraw %} 20 | 21 | ## 22 | 23 | 24 | 它是开源的 25 | 26 | 开发一种开源语言,没有开源网站和文档是没有意义的。我们通过逐渐将所有旧站点从以前的平台移植到 Jekyll。新网站全部以 Markdown(实际上是 Kramdown,Markdown 的风格)编写,并在 GitHub 上托管。事实上,我们已经很容易做出贡献。几乎每一页都有一个编辑页图标: 27 | 28 | {% raw %} 29 |



25 | {% endraw %} 26 | 27 | 我们这样做有两个主要原因。首先,我们收到了大量来自社区的请求,需要我们提供与品牌相关的样式材质。其次,我们希望为用户群体和社区内容提供独特的风格,以便区分哪些Kotlin相关资料是官方的,哪些是由社区创建的(我们真的很高兴你们分享了许多精彩的文章和演示!)标志和个人资料图片是第一步。我们计划在未来设计一个新的Kotlin社区身份的幻灯片模板,横幅和很酷的东西。 28 | # 创建你的用户组的徽标 29 | 30 | 0. 将Kotlin用户组的logo文件复制到你的Google drive(你必须登录到你的Google帐户) 31 | 1. 用你的用户组名称替换掉“Groupname”文本 32 | 2. 下载图片并将它应用到用户组资料上 33 | 34 | 随意创建属于你的独特风格或进行任何微调,但我们建议你不要改变颜色和图形的形状,因为它是Kotlin社区计划的官方标志。你可以在这里下载包括矢量图形和社交网络封面图片示例的[一套图片](https://drive.google.com/open?id=0B3Zi34svOj1RZ2sxZExhblRJc1k)。 35 | # 创建你的用户组的图片 36 | 37 |

40 | {% endraw %} 41 | 42 | ## GOTO Conference and Kotlin Workshop 43 | 44 | We’re also offering a [discount for GOTO London 2016](https://secure.trifork.com/london-2016/registration/registration.jsp?promotionCode=kotlin100) which can be used either for the conference or the [full day Kotlin Workshop being held](https://gotocon.com/london-2016/presentations/show_presentation.jsp?oid=7892) . 45 | -------------------------------------------------------------------------------- /original/Kotlin 1.0.3 Is Here!.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Kotlin 1.0.3 Is Here!" 3 | date: 2016-06-30 18:52:00 4 | author: Roman Belov 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2016/06/kotlin-1-0-3-is-here/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | We are delighted to present **Kotlin 1.0.3**. This update is not full of brand new and shiny features, it is more about bug fixes, tooling improvements and performance boosts. That’s why you’ll like it 😉 Take a look at the full [change log](https://github.com/JetBrains/kotlin/blob/1.0.3/ChangeLog.md) and issues stats by subsystem: 18 |

**为什么要打扰?**我(和许多其他人)希望帮助您解决问题。我们面临的挑战是,很多问题难以科学讨论。事实上,行业倾向于通过反思经验来改进,至少在编程语言发展方面。不幸的是,我们的学者需要在科学会议和期刊上发表,个人经验不是一个科学的过程。我们的审稿人可能非常喜欢我们所说的话,但是他们可能不会很乐意接受一个建立在一个科学场地上的论文。事实上,在阅读正面评论后被拒绝后,通过旁观者渠道,我被告知这一担忧是本文的垮台,我很鼓励尝试非常规渠道。所以,这是一个实验,使行业能够鼓励他们想探索的研究方向,尽管科学支持索赔的困难。换句话说,这是试图让行业经验作为学术环境中的证据,就像在行业环境中一样。
28 | 罗斯(和我)将欣赏你的一封赞许电子邮件。 29 | 谢谢。 30 | 美国在上图中你看到 [理查德·费曼](https://en.wikipedia.org/wiki/Richard_Feynman) 诺贝尔奖获奖物理学家。他不关心类型系统,但他是一个非常有趣的人,可能是最实用的理论家,并通过发明为计算机科学贡献 [量子计算机](https://en.wikipedia.org/wiki/Quantum_computer) 。 31 | -------------------------------------------------------------------------------- /translated/The Great Syntactic Shift.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]The Great Syntactic Shift" 3 | date: 2012-01-04 09:38:00 4 | author: Andrey Breslav 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2012/01/the-great-syntactic-shift/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 随着 Kotlin 的第一次公开预览即将到来(将于 2012 年 1 月 10 日公布,这是**不到一周**从现在开始!),我们正在把一些事情按顺序排列 18 | 特别是,我们回顾了语言中提供的语法形式,并决定改变一些。这些更改与旧的语法不兼容,我们已经迁移了所有的测试数据,并将更新 [公开的文件](http://jetbrains.com/kotlin) 不久。 19 | 我想指出,这不是这种最后一个变化。Kotlin 还没有发布,直到我们不断收集反馈意见,有时候会发现有些事情需要改变。因此,在 1.0 之前没有向后兼容性保证。我们意识到向后兼容性是多么的重要,但是我们最好能够根据真实人群的需求创建一个非常好的设计。 20 | 以下是我们所做的更改的概述 21 |
21 |
Kotlin, the Swift of Android***
22 |
23 | **Presented by Svetlana Isakova**22 | {% endraw %} 23 | 24 | **研讨会日程:** 25 | 26 | 上午9:00 - 下午5:00: 给Java开发者的Kotlin研讨会。 主讲人Svetlana Isakova。**最大参会人数50人**。 27 | 下午5:30 - 晚上8:00: 晚餐用餐,以及为Kotlin构建依赖库。主讲人Eric Maxwell,**最大参会人数150人**。 28 | 如果您还没有注册KotlinConf,请确保您能享受我们超级优惠的打包折扣价,包括研讨会以及社区讲座等多种活动。 29 | 数量有限,早买早优惠,更多关于讲座和晚会的信息,请参阅下文。 30 | 31 | ## 现在注册! 32 | ***给Java开发者的Kotlin研讨会*** 33 | 34 | 本次研讨会将涵盖您需要了解的所有Kotlin功能,Kotlin是一门让您感到舒适的语言,是在谈及与Java互操作性的基石。您会马上知道快速使用Kotlin的一切内容。本次讲座包括但不限于以下内容: 35 | 36 | * 基本语法 37 | * 可空性 38 | * 使用Kotlin进行面向对象编程 39 | * 使用Kotlin进行函数式编程 40 | * Java互操作性 41 | * 构建DSL 42 | 43 | ***Svetlana Isakova在JetBrains中参与了Kotlin语言的开发。并且她也是《Kotlin in Action》一书的共同撰写人,她花费时间讲授Kotlin,并在全球各地的演讲中倡导使用Kotlin进行开发。*** 44 | 45 | ***构建Kotlin依赖库*** 46 | Kotlin的诸多强大特性,其显著提高了开发人员的生产力,从而使得整体代码更加稳定。完全使用Kotlin进行编码很不错。然而,尽管Kotlin正在跨跃式发展,但目前仍有许多应用程序和库仍然使用Java,并且该情况会持续很长一段时间。假如你是一个像Realm这样向10万级别开发者提供依赖库的第三方依赖库开发者,这意味着你所提供的API必须要适用于Java和Kotlin双平台。 47 | 48 | 在本次演讲中,您将了解到Realm在面对这些问题和挑战时是如何解决,并且如何将这些方案应用于您自己开发的库中。除此之外,还有机会学习如何使用Kotlin简化Realm移动端数据库开发。 49 | 50 | ***Eric Maxwell是Realm的一位产品经理,同时也是Columbus Kotlin用户组的联合组织者。过去数十年里,他在多个行业的各种公司里负责架构和开发。并且开发和讲授Java,Android以及iOS课程。闲暇之余喜欢陪伴家人,旅行和即兴喜剧。*** 51 | 52 | {% raw %} 53 | 54 | {% endraw %} 55 | 56 | -------------------------------------------------------------------------------- /translated/Kotlin_Native v0.2 is out.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Kotlin/Native v0.2 is out" 3 | date: 2017-05-12 11:08:00 4 | author: Nikolay Igotti 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | translator: bennyhuo 13 | translator_url: https://www.kotliner.cn 14 | source_url: https://blog.jetbrains.com/kotlin/2017/05/kotlinnative-v0-2-is-out/ 15 | --- 16 | 17 | 我们很高兴地宣布Kotlin / Native v0.2 发布啦,这是 Kotlin / Native 技术预览版的一次功能更新和 Bug 修复。这次更新增加了对协程和跨模块内联函数的支持,以及整体上的问题修复和优化。 18 | 这次更新包括了一个演示如何使用 [并发非阻塞IO协同程序](https://github.com/JetBrains/kotlin-native/tree/master/samples/nonBlockingEchoServer) 的示例, 一个 [使用GTK的GUI应用程序](https://github.com/JetBrains/kotlin-native/tree/master/samples/gtk) ,以及一个由Julius Kunze贡献的[TensorFlow机器学习框架](https://github.com/JetBrains/kotlin-native/tree/master/samples/tensorflow) 客户端。 19 | 20 | 诸如下面的代码: 21 | 22 | {% raw %} 23 | 24 | {% endraw %} 25 | 26 | ```kotlin 27 | var connectionId = 0 28 | acceptClientsAndRun(listenFd) { 29 | memScoped { 30 | val bufferLength = 100L 31 | val buffer = allocArray
29 | {% endraw %} 30 | 31 | ## Kotlin 1.1 Event Feedback 32 | 33 | If you watched the live stream, we want to know what you think! Please share your feedback by [completing this form](https://docs.google.com/forms/d/e/1FAIpQLSdgKsJzwc1ToAusi-xpEiiE1O4t3HA5xjlbZXDU5Mg0i3qvNg/viewform) . It should only take about 7-10 minutes. Your input is very important in helping us improve all future Kotlin events. 34 | ## Kotlin Future Features Survey 35 | 36 |

30 | {% endraw %} 31 | 32 | **Experimental features** 33 | By default, you get error highlighting only when you run your program. But you can try out some of the features we are experimenting with and turn on “as-you-type” error highlighting:

38 | Please, note that these features are **experimental** and feel free to report any problems to us.
39 | **Coming soon**
40 | This demo will be developed further for you to have more fun. Among other things we plan to add the following:
41 |
42 | * Standard Library of extension functions that make using JDK collections and other common APIs more pleasant (things like map()/filter() and so on);
43 | * Code Challenge: currently we offer a few sample problems in the form of code snippets containing test data. This will be extended to contest-like automated testing system.
44 | * More Examples: There’s always some more to show off [Have fun!](http://kotlin-demo.jetbrains.com)
--------------------------------------------------------------------------------
/translated/Contest Go Cross-Platform with Kotlin!.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Contest: Go Cross-Platform with Kotlin!"
3 | date: 2015-11-25 18:17:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/11/contest-go-cross-platform-with-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 大家好,
18 | 你听说过吗 [RoboVM](https://robovm.com) ?它可以让您为 iOS 和 Android 创建美丽的本地应用程序,从而允许您在平台之间共享代码。 RoboVM 将 Java 字节码转换为本机 ARM 或 x86 代码
19 | 最新的 [RoboVM 发行](https://robovm.com/robovm-1-11-released-experimental-bitcode-support-ios-9-and-kotlin/) 使它与 Kotlin 起步和运行非常容易!今天你有很好的动力玩,参加第一次 Kotlin Mobile 比赛!只需安装 [IntelliJ IDEA 的 RoboVM 插件](https://plugins.jetbrains.com/plugin/7588?pr=idea) 要么 [下载 RoboVM Studio](https://robovm.com/download/) ,并创建一个跨平台 Kotlin 应用程序。
20 | ## 如何进入
21 |
22 |
23 | * 使用 Kotlin 和 RoboVM 为 iOS 和/或 Android 创建应用程序
24 | * 在 GitHub 上发布您的应用程序
25 | * 使用此链接发送您的条目:
26 | “我刚刚提交了我的应用程序为 @robovm @jetbrains Kotlin 比赛:https://robovm.com/kotlin-contest”
27 |
28 | 没有 Mac 的 iOS 开发?没问题 - 我们也接受 Android 应用程式! [IntelliJ IDEA](https://www.jetbrains.com/idea/) Ultimate 和 Community Edition 都非常支持在 Windows 和 Linux 上使用 Kotlin 构建 Android 应用程序!另外,如果您不是 RoboVM 客户,请注意,您可以直接使用 [免费 30 天的 RoboVM 试用版](https://robovm.com/download/) 参加比赛您不需要进行任何购买
29 | ##
30 | 如何取胜
31 |
32 | 想给你的进入额外的优势?这里有一些提示:
33 |
34 | * 在您的推文中加入您的应用程式的萤幕撷取画面
35 | * 博客关于你如何构建你的应用程序,并在你的推文中添加一个链接
36 | * 使用 Kotlin 无处不在 - 运送跨平台应用程序或在 Kotlin 建立后端的积分!
37 |
38 | ## 奖品
39 |
40 |
41 | * 大奖:Mac mini + 1 年 RoboVM 业务订阅 + 1 年所有产品包由 JetBrains。
42 | * Runner Up:Sphere 2.0 + 1 年的 RoboVM 业务订阅 + 1 年所有产品包由 JetBrains。
43 | * 前 25 个有效条目:$ 10 礼品卡,您可以选择 Apple App Store 或 Google Play。用它来购买一些用 RoboVM 构建的伟大游戏! (游戏包括,泰坦帝国,Evostar,Dragonsoul RPG,爷爷的桌子,目标,高级战术,Hoplite,哦,我的山羊,冲刺直到泡芙等)。
44 | 任何由奖金收取的奖金支付的适用税款。
45 |
46 |
47 | {% raw %}
48 |
49 | {% endraw %}
50 |
51 | 所有应用程序必须由 2015 年 12 月 14 日(星期日)的**结束日期**提交! RoboVM 和 JetBrains 的团队将从所有提交中挑选获奖者。有效的条目包含您的**tweet**,指向您的**应用程序的 GitHub 存储库**。每个参与者和每个 GitHub 资料库只能获得一个奖项。跨平台应用程序的积分,我们将高兴推广的 tweet 或博客帖子的开发日志,以及代码质量!获奖者将在 RoboVM 和 Kotlin 博客以及 Twitter 上公布,并将通过 GitHub 联系。
52 | 没有 Kotlin 经验?加入 800 多个社区成员 [松弛](http://kotlinslackin.herokuapp.com/) 并提问!
53 | 祝你好运!
54 |
--------------------------------------------------------------------------------
/original/Catch up with our Kotlin Team at Devoxx Belgium.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Catch up with our Kotlin Team at Devoxx Belgium"
3 | date: 2013-11-04 12:36:00
4 | author: Robert Demmer
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2013/11/catch-up-with-our-kotlin-team-at-devoxx-belgium/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 |
Meet JetBrains and Kotlin team members Svetlana Isakova and Aleksei Sedunov, November 11-15, at the sold-out [Devoxx Belgium](http://www.devoxx.be/#/) conference. We invite you to **stop by our booth** for an **impromptu demo**, some **great gifts** and a chance to **win a free personal license**.
18 | Don’t miss the following great Kotlin events:
19 | **Hackergarten Hands-on Coding**
20 | On Tuesday, November 12th, Aleksei will be participating in the Hackergarten hands-on coding event. He will get you started with the Kotlin language and will help you write a plugin for IntelliJ IDEA in Kotlin. [Unpuzzling Kotlin: Bringing Clarity to Your Code](http://www.devoxx.be/dv13-svetlana-isakova.html?presId=3575) Join Svetlana and Aleksei Thursday, November 14th, 10:50 -11:50 in Room 6. In this talk we’re going to tell the story of Java puzzlers from the Kotlin perspective which would demonstrate how Kotlin design helps to eliminate some problematic issues found in Java. In particular, we’d consider such aspects as expressions and control structures, exception handling, object and classes, nullable types and extensions.
21 | #### **About Svetlana Isakova30 | {% endraw %} 31 | 32 | *For complete Devoxx Belgium 2013 information, please visit: http://www.devoxx.be/.* 33 | -------------------------------------------------------------------------------- /translated/Announcing the Support Program for Kotlin User Groups and Events.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "[译]Announcing the Support Program for Kotlin User Groups and Events" 3 | date: 2017-01-30 21:42:00 4 | author: Alina Dolgikh 5 | tags: 6 | keywords: 7 | categories: 官方动态 8 | reward: false 9 | reward_title: Have a nice Kotlin! 10 | reward_wechat: 11 | reward_alipay: 12 | source_url: https://blog.jetbrains.com/kotlin/2017/01/announcing-the-support-program-for-kotlin-user-groups-and-events/ 13 | translator: 14 | translator_url: 15 | --- 16 | 17 | 今天我们推出了一个新的 [社区部分在我们的网站](https://kotlinlang.org/community/) ! 18 | 19 | {% raw %} 20 |

In this hands-on workshop, you will learn about the basics of the language. You’ll discover some of the advantages that it offers, understand how to get the best of Object Orientation and Functional paradigms, create custom DSL’s and remove some of the pain of other popular languages such as Java and C#. You’ll see how to test your code, interop with existing frameworks as well as discover some of the new frameworks, such as web development frameworks, already available for Kotlin.
31 | *The workshop will be hands-on, so bring your laptop, and for the best results, have IntelliJ Ultimate OR the free Community Edition installed.*
32 |
--------------------------------------------------------------------------------
/translated/Modifiers vs Annotations.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Modifiers vs Annotations"
3 | date: 2015-08-11 17:47:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/08/modifiers-vs-annotations/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 这是另一个单挑和反馈的呼吁。我们一直在讨论有关 Kotlin 注释语法的选项,推出实验,收集反馈。当我们现在完成语言的定义时,我们以前推迟的许多痛点就是浮出水面。我们必须作出决定,有时以防御的方式。在这篇文章中,我将概述我们所选择的选项以及我们所提供的决策。
18 | ## 设置阶段:一些介绍性定义
19 |
20 | Kotlin(以及许多其他语言)有两种*元数据*:
21 |
22 | * 修饰语(如公开,开放或抽象),内置于语言中
23 | * 在库中定义的注释(如 @Test 或 @Inject)也可以有参数。
24 |
25 | 与许多语言不同,在 Kotlin **中,大多数修饰符都不是正确的关键字**。只有在适用的情况下才具有特殊意义,即声明前。编译器不会介意,如果你调用你的变量或类`public`:
26 |
27 | {% raw %}
28 |
29 | {% endraw %}
30 |
31 | ```kotlin
32 | val public = "PUBLIC!"
33 | println(public)
34 | ```
35 |
36 | {% raw %}
37 |
38 | {% endraw %}
39 |
40 | 这种技术被称为“软关键字”或“上下文关键字”。
41 | ## 梦想:统一元数据
42 |
43 | 当 Kotlin 被设想时,我个人对*统一元数据*的想法很着迷:我认为我们应该达到一个修饰符和注释之间没有区别的地方。所有的元数据应该被明确声明,并被平等对待。它是统一,可扩展,否则伟大!语言设计师和用户都可以定义注释并扩展其语言。在我理想的世界里,没有修饰符,只有注释,即`public`将是一个注释,以及`inline`,`abstract`,枚举`等
44 | 那么事实证明,在语言实现的早期阶段,技术上引入修改器(而不是注释)容易得多,所以我们这样做是一个临时措施。
45 | 这就是为什么 Kotlin 允许没有`@`的注释:我希望他们看起来像修饰符,以便稍后可以将修饰符转换为注释。许多您可能认为的修改器实际上是注释:`data`和`inline`是最受欢迎的。
46 | ## 现实:模具事宜
47 |
48 | 现在,我不得不承认,统一元数据的梦想虽然并不完全不可能实现,但实际上是不切实际的。
49 | 修饰符具有在解析阶段之后可用的特有属性。这对于一些关键性的任务非常重要(例如在 IDE 中),因为它们有时候依赖于知道什么是公共的,哪些不在上下文中,没有什么是准备好但是已解析的文本。
50 | 所以,**修饰符必须保留**。
51 | ## 注释语法
52 |
53 | 现在,最初的想法是挑战的:如果我们不统一修饰符和注释,是否有一点保持他们的语法相似?
54 | 一方面,**看起来很酷**,我们可以在注释之前省略“@”。人们可以认为它减少了代码中的“噪音”数量。
55 | 另一方面,有一堆问题,其中没有一个是至关重要的,但是它们很烦人:
56 | 首先,**它不正交**:我们可以在注释前使用“@”。这是大多数时候的惯例问题。但是有时我们必须使用“@”:本地类和函数是最臭名昭着的例子。
57 | 然后,**会使错误恢复复杂化**:代码正确无误,但是当您在 IDE 中键入时,解析器必须能够从错误中恢复并识别*不完整的代码结构代码*。随机标识符是可解析的,因为注释使这一点相当复杂。
58 | 此外,**使命名约定变得复杂**:我们用来命名小写中第一个字母的注释,例如`@inline`或`@platformStatic`。许多人在这种情况下发现骆驼案多字的名字像后者一个丑陋。因此,有一些建议只能将小写字母用于单字注释(看起来像修饰符)。还有 Java 注释(其中许多被频繁使用)仍以大写第一个字母命名。总而言之,这是一团糟。一个小的,但还是一团糟。
59 | 而且更具技术性,但仍然是现实的关切:**使语言进化复杂化**。我们无法在下一个版本的 Kotlin 中添加一个新的修饰符“foo”,而不会破坏某人的代码:如果某个库具有注释`foo`,则会发生冲突,编译器可以做的最好的报错。
60 | 所以我们认为这个成本太小了。
61 | ## 丰富的修饰符
62 |
63 | 顺便提一句,我们认为,在需要时允许修饰符具有参数是有意义的。它有助于语言演进(我们可以在以后添加可选参数到现有的修饰符),似乎没有引入任何问题。例如,`annotation`是一个修饰符(在解析名字之前需要知道注解类),但它有参数:
64 |
65 | {% raw %}
66 |
67 | {% endraw %}
68 |
69 | ```kotlin
70 | annotation(repeatable = true) class MyRepeatableAnnotation
71 | ```
72 |
73 | {% raw %}
74 |
75 | {% endraw %}
76 |
77 | ## 结论
78 |
79 | 我们将要求所有注释以“@”为前缀。
80 | 顺便提一下,一些注释将会变成修饰符:例如,`data`和`inline`。
81 | **欢迎您的反馈**:我们想知道我们是否在这里遗漏了您的意见。
82 | 特别感谢作者和贡献者 [这个论坛的主题](https://devnet.jetbrains.com/message/5549947) 。
83 |
--------------------------------------------------------------------------------
/original/Webinar Recording Functional Programming with Kotlin.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Webinar Recording: Functional Programming with Kotlin"
3 | date: 2015-11-05 13:21:00
4 | author: Roman Belov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/11/webinar-recording-functional-programming-with-kotlin/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | The recording of our October 22nd webinar, **Functional Programming with Kotlin**, is now available on [JetBrainsTV YouTube channel](https://youtu.be/AhA-Q7MOre0) .
18 | In this talk, Mike Hearn provides a brief introduction to programming in Kotlin via practical example: creating a textfield with the autocomplete suggestions while typing. Demo project is available on [GitHub](https://github.com/mikehearn/KotlinFPWebinar) .
19 | Topics covered include:
20 |
21 | * Use of functional transforms
22 | * Immutability
23 | * Lazyness and working with lazy infinite sequences
24 | * The use of funKTionale, a library that extends Kotlin with a few features known from Haskell
25 | * Pattern matching
26 | * Reactive user interfaces
27 |
28 |
29 | {% raw %}
30 |
31 | {% endraw %}
32 |
33 |
34 | {% raw %}
35 |
36 | {% endraw %}
37 |
38 | The video includes the time stamps following the [agenda announced](http://blog.jetbrains.com/kotlin/2015/10/join-live-webinar-functional-programming-with-kotlin/) :
39 | `00:08` — Intoduction and demo application
40 | `05:00` — `apply` function
41 | `05:45` — Introduce NGram data class
42 | `08:22` — Creating extension methods
43 | `09:55` — Working with lazy infinite sequences
44 | `10:35` — `map` function
45 | `11:10` — `to` function and infix notation
46 | `14:35` — Destructuring of data classes
47 | `19:20` — `filter`, `let` and `all` functions
48 | `23:00` — Debug lazy code
49 | `24:20` — Add completions to UI
50 | `25:18` — Load data in a functional way
51 | `28:30` — Improve performance of the data loading
52 | `33:20` — Improve the UI responsiveness in RX style
53 | `40:05` — Using [Kovenant](https://github.com/mplatvoet/kovenant) library
54 | `42:03` — Using [funKTionale](https://github.com/MarioAriasC/funKTionale) library
55 | `44:10` — Currying
56 | `45:35` — Questions
57 | About the Presenter:
58 | Thanks to all the attendees for the questions! If you still have some, please, contact Mike or our team.
59 | You are welcome to suggest themes for future webinars in comments.
60 | *Let’s kotlin!*
61 |
--------------------------------------------------------------------------------
/original/More Deprecations Coming.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "More Deprecations Coming"
3 | date: 2015-04-06 12:55:00
4 | author: Andrey Breslav
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/04/more-deprecations-coming/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | There are two more items on the language cleanup list: backing-field syntax and static type assertion operator.
18 | ## Backing Fields
19 |
20 | When you have a property and you don’t implement at least one of its accessors (`get` or `set`) manually, such a property gets a *backing field*, i.e. a piece of storage holding its value:
21 |
22 | {% raw %}
23 |
24 | {% endraw %}
25 |
26 | ```kotlin
27 | var foo: Foo? = null
28 | set(v) {
29 | ...
30 | }
31 | // default getter is used
32 | ```
33 |
34 | {% raw %}
35 |
36 | {% endraw %}
37 |
38 | you can access the backing field through the name of the property prefixed with the `$` sign:
39 |
40 | {% raw %}
41 |
42 | {% endraw %}
43 |
44 | ```kotlin
45 | $foo = 2
46 | ```
47 |
48 | {% raw %}
49 |
50 | {% endraw %}
51 |
52 | This may be needed to bypass the custom accessor(s).
53 | This feature is rather rarely used, and also clashes visually with string templates (`"$foo"`, surprisingly, has nothing to do with backing fields), so we want to get rid of it.
54 | In case you really need it, your workaround is *backing property*:
55 |
56 | {% raw %}
57 |
58 | {% endraw %}
59 |
60 | ```kotlin
61 | private var _backing: Foo? = null
62 | var foo: Foo?
63 | get() = _backing
64 | set(v) {
65 | ...
66 | }
67 | ```
68 |
69 | {% raw %}
70 |
71 | {% endraw %}
72 |
73 | Since no getters or setters are generated for private properties, the resulting byte code will be exactly the same.
74 | ## Static Type Assertions
75 |
76 | Another rarely used feature is the following syntax:
77 |
78 | {% raw %}
79 |
80 | {% endraw %}
81 |
82 | ```kotlin
83 | foo(bar, null: Baz)
84 | ```
85 |
86 | {% raw %}
87 |
88 | {% endraw %}
89 |
90 | The type after colon in an expression specifies the *expected static type* of it, i.e. this is not a cast, but simply an instruction to the compiler to make sure that the static type of this expression is actually “Bar”. The fact that it’s hard to explain has something to do with this being rarely used (I think Kotlin’s test data is the only major client). So, we are withdrawing this syntax, and maybe will make use of it later (possibilities include array/list slices and C-style ternary conditionals).
91 | In case you needed this syntax to disambiguate your overloads, `as` is a good workaround.
92 |
--------------------------------------------------------------------------------
/original/Kotlin Session and JetBrains Booth at 33rd Degree Conference.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Kotlin Session and JetBrains Booth at 33rd Degree Conference"
3 | date: 2013-03-01 09:09:00
4 | author: Robert Demmer
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2013/03/kotlin-session-and-jetbrains-booth-at-33rd-degree-conference/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | JetBrains and Kotlin are participating in the 33rd Degree Conference in **Warsaw, Poland**. Join 1,200 attendees **March 13-15** for [92 sessions](http://2013.33degree.org/main/schedule) from [58 speakers](http://2013.33degree.org/speaker/list) . Come by our booth and learn what’s new in **Project Kotlin**, as well as the upcoming **IntelliJ IDEA 12.1 release**. Be sure to mark your calendar for our **two sessions** with JetBrains Technical Evangelist [Hadi Hariri](https://twitter.com/hhariri) .
18 |
19 | {% raw %}
20 |
21 | {% endraw %}
22 |
23 | **Kotlin: Beyond Dogmatism**
24 | *Thursday, March 14th, 10:10 AM – 11:10 AM, Room D*
25 | Kotlin is a new language developed by JetBrains and licenses under Apache 2 OSS License, targeting the JVM and JavaScript. When presented, the typical questions asked are “Why another language? What core fundamentals does it bring to the table?” Tell you what, let’s move beyond dogmatism and be pragmatic. Let’s focus on the problems we’re trying to solve when developing applications and see why and how Kotlin can help us.
26 | **Developers: Prima Donnas of the 21st Century**
27 | *Friday, March 15th from 13:10 – 14:10*
28 |
“We are developers. We are creators. We are misunderstood by customers, by managers and even co-workers; we are undervalued and often overworked. People don’t appreciate the value we put in our craft and our drive for innovation. We are central to business in the 21st century yet people don’t appreciate us!” Of course you are, but you also forgot to mention: You suck at communication. You often put business at risk based on personal ambitions and waste serious amounts of time trying to improve and discuss the wrong things, all in the name of the next great thing that’s going to solve it all. You’ve completely forgotten the plot! Don’t believe me? Why don’t you come along to this talk and get a wakeup call. But don’t expect to be treated nicely.
29 | For full details on the event please visit [33rd Degree Conference website](http://2013.33degree.org/) .
30 |
--------------------------------------------------------------------------------
/translated/Kotlin Eclipse Plugin 0.5.0.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin Eclipse Plugin 0.5.0"
3 | date: 2015-12-01 15:57:00
4 | author: Nikolay Krasko
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2015/12/kotlin-eclipse-plugin-0-5-0/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | 这个版本的新功能
18 |
19 | * Kotlin Beta 2 支持
20 | * 语义突出
21 | * 重命名重构
22 | * 标记发生
23 | * 提取变量重构
24 | * 导航到 Kotlin 标准库源
25 |
26 |
27 | {% raw %}
28 |
29 | {% endraw %}
30 |
31 |
32 | {% raw %}
33 |
34 | {% endraw %}
35 |
36 | ## 语义突出显示
37 |
38 | 随着新版本的 Kotlin 插件,使用语义代码突出显示,生活越来越丰富多彩。现在我们与 Java 编辑器共享大多数设置,因此 Kotlin 代码将重用您最喜欢的颜色主题。切换到 Eclipse *黑暗主题*并配置突出显示 [Eclipse 颜色主题](http://eclipsecolorthemes.org/) 还支持插件。
39 | ## 改名
40 |
41 | 我们现在支持*重命名*重构。有一件事情是异常先进的:它可以跨语言工作:Kotlin 声明可以从 Java 和 Kotlin 中的任何用法重命名!相同的重命名 Java 声明
42 |
43 | ## 标记发生
44 |
45 | 默认情况下,为 Kotlin 文件启用自动使用高亮显示在光标下的声明
46 |
47 | ## 提取变量
48 |
49 | 现在可以使用*提取局部变量*重构来从所选表达式创建局部变量
50 |
51 | ## 导航到 Kotlin 标准库
52 |
53 | 来自 Kotlin 代码的 Kotlin 标准库的引用现在可以导航。激活*开放宣言*对使用的操作将打开通讯记录文件,并在图书馆的源代码中显示声明。
54 |
55 |
--------------------------------------------------------------------------------
/translated/Kotlin 1.2 M2 is out.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Kotlin 1.2 M2 is out
3 | author: Alexey Sedunov
4 | date: 2017-08-09 17:56:00
5 | tags:
6 | categories: 官方动态
7 | reward: false
8 | reward_title: Have a nice Kotlin!
9 | reward_wechat:
10 | reward_alipay:
11 | source_url: https://blog.jetbrains.com/kotlin/2017/08/kotlin-1-2-m2-is-out/
12 | translator: pye52 & 睡魔的倦意
13 | translator_url: https://pye52.github.io/ & https://suima0v0.github.io/
14 | ---
15 |
16 | 我们很高兴地公布Kotlin 1.2的第二个里程碑版本。该版本的重点在于Kotlin编译器和工具的稳定性与bug修复,以及Kotlin标准库的改进。此外还包含了很多即将发布的Kotlin 1.1.4所具备的工具特性。
17 |
18 | 如果能有您对新特性或者运行中所遇到的任何问题的反馈,我们将非常感谢。
19 |
20 | 从1.2 M1开始,完整的更新日志可以在[这里](https://github.com/JetBrains/kotlin/blob/1.2-M2/ChangeLog.md)查看,重要的变更在下面列出:
21 |
22 | {% raw %}
23 |
24 | {% endraw %}
25 |
26 | ## 编译器
27 |
28 | ### 重大更改:Java默认方法调用
29 |
30 | 到目前为止,Kotlin的接口成员在jvm 1.6重写Java默认方法的时候,如果通过super调用父类方法,将会得到一个警告`子类对Java默认方法的调用在JVM target 1.6已被弃用。请使用-jvm-target 1.8重新编译`。在1.2-M2版本中,我们将警告变更为错误,因此此类代码将需要使用`-jvm-target 1.8`编译
31 |
32 | ## 标准库
33 |
34 | - ### 修正windowed/pairwise操作
35 |
36 | 我们听取了大家[KEEP-11](https://github.com/Kotlin/KEEP/blob/master/proposals/stdlib/window-sliding.md)中关于chunked/windowed/pairwise函数的反馈,并且在1.2-M1里程碑版中发布了预览功能,在这基础上,我们还进行了如下改动:
37 |
38 | - `windowed`函数的自增变量现在默认为1。
39 | 同时还增加了一个额外的可选参数`partialWindows`,用于控制不完整的窗口的结束处理流程。默认值为false,表示不完整的窗口不会保留。
40 |
41 | - `pairwise`函数名让人摸不着头脑,不知道它是如何配对元素的。所以我们新命名为`zipWithNext`,这更清楚地表明这函数会把集合中每个元素和下一个元素都压缩一次。
42 |
43 | ### 标准库中常用的数学运算
44 |
45 | 在标准库(KT-4900)[https://youtrack.jetbrains.com/oauth?state=%2Fissue%2FKT-4900]中,长期以来一直要求支持数学运算。到目前为止,人们不得不在JVM平台中使用java.lang.Math类中的数学函数和常量,并在JS平台中将kotlin.js.Math暴露给Kotlin代码。
46 | 但现在我们在kotlin.math包中引入了以下几组API:
47 |
48 | - 常数:PI和E;
49 | - 三角函数:cos,sin,tan和反三角函数:acos,asin,atan,atan2;
50 | - 双曲:cosh,sinh,tanh;
51 | - 指数:pow(扩展函数),sqrt,hypot,exp,expm1;
52 | - 对数:log,log2,log10,ln,ln1p;
53 | - 四舍五入:
54 | - ceil,floor,truncate,四舍五入(结果是偶数)的函数;
55 | - 四舍五入到整数、四舍五入到Long的扩展函数;
56 | - 符号和绝对值:
57 | - 绝对值和符号函数;
58 | - absoluteValue和sign扩展属性;
59 | - withSign扩展函数;
60 | - 针对两个值的max和min函数;
61 | - 二进制表示
62 | - ulp扩展属性;
63 | - nextUp,nextDown,nextTowards扩展函数;
64 | - toBits,toRawBits,Double.fromBits(这些都在kotlin包中)。
65 |
66 | Float类型也可以使用相同的函数功能(但不带常数)。
67 | 大多数这些功能(二进制表示除外)也可以在JS中使用,从而不需要为两个平台编写功能一样的代码。
68 |
69 | ## 预发行说明
70 |
71 | > 与其他里程碑版本一样,我们不会为新的语言和标准库特性提供向后兼容性保证。在1.2版本的里程碑版本中引入的任何内容都将在最终1.2版本之前发生变更。当我们最终RC时,预发行版本的所有二进制文件将被编译器认为不合法:您需要重新编译1.2-Mx编译过的所有内容。
72 | >
73 | > 但是,由1.1.x和更早正式版本编译的所有代码无需重新编译也能正常运行。
74 |
75 | ## 如何尝试
76 |
77 | 在Maven / Gradle中:添加http://dl.bintray.com/kotlin/kotlin-eap-1.2作为构建脚本和项目的存储库;使用1.2-M2作为编译器插件和标准库的版本号。
78 | 在IntelliJ IDEA:打开工具 -> Kotlin -> 配置Kotlin插件更新,然后在更新窗口下拉列表中选择“Early Access Preview 1.2”,然后点击*Check for updates*。
79 | 命令行编译器可以从(Github版本发布页面)[https://github.com/JetBrains/kotlin/releases/tag/v1.2-M2]下载。
80 | 在(try.kotlinlang.org)[https://try.kotlinlang.org/]上:使用右下角的下拉列表将编译器版本更改为1.2-M2(即将推出)。
--------------------------------------------------------------------------------
/translated/Kotlin on Android. Now official.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "[译]Kotlin on Android. Now official"
3 | date: 2017-05-17 22:33:00
4 | author: Maxim Shafirov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | translator:SnakeEys
13 | translator_url:https://github.com/SnakeEys
14 | source_url: https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/
15 | ---
16 | 今天,在Google I/O大会上,Android团队正式宣布Kotlin成为Android一级支持语言。我们相信这是Kotlin取得的又一大进步,对于Android开发人员以及其他社区来说,这是一个无比令人兴奋的绝佳消息。我们同样对这个开放的机会深感愉悦。
17 |
18 | 对于Android开发人员而言,Kotlin的支持是一个使用现代且强大的语言的机会,它有助于解决常见而又令人头痛的问题,例如运行时异常,以及编写冗长的源代码。Kotlin易于上手,随时可以引入到现有项目并逐步替换,这意味着您现有的技能仍然不会落伍。
19 |
20 | {% raw %}
21 | 
22 |
23 | {% endraw %}
24 |
25 | 从现在开始,Android Studio 3.0默认包含Kotlin插件,Android开发人员不再需要安装任何附加功能插件,或者担心兼容性的问题了。您可以放心,JetBrains和Google都将支持Kotlin的Android开发。
26 |
27 | 如果您关心Kotlin支持的其他平台(Kotlin/JVM的服务器和桌面端,Kotlin/JS和Kotlin/Native),请持续保持关注。 我们希望Kotlin能够成为一整套连接跨平台各种应用端到端开发工具的纽带,包括全栈Web应用,Android和iOS客户端,嵌入式/IoT等。
28 |
29 | 编程语言就像人类语言一样:使用的人越多则越好。 Android默认使用Kotlin为一级语言可能会为Kotlin带来更多用户,我们也期望社区能够逐渐壮大。这意味着会有更多使用Kotlin开发的库和工具,更多的经验分享,更多的Kotlin工作机会,更多的学习资料出版等等。我们很高兴看到Kotlin社区生态的蓬勃发展!
30 |
31 | 我们将与Google合作,为Kotlin创造一个非营利基金会。语言发展将继续由JetBrains赞助,Kotlin团队(40多人,公司第二大团队)将照常运作。Andrey·Breslav仍然是首席语言设计师,Kotlin仍以之前的准则进行开发。为了让Kotlin在未来朝着正确的方向发展,您的反馈至关重要,所以我们的设计流程仍然保持开放。
32 |
33 | 如果您在Google I/O现场,希望您不要错过[Kotlin演讲的日程表](https://events.google.com/io/schedule/?section=may-17&gclid=CLuaj9GZ7NMCFY0V0wodvVgI7Q)。当然,也别忘了11月在旧金山举行的[KotlinConf](https://kotlinconf.com),绝对精彩!
34 | ## 十分感谢你!
35 |
36 | 6年前,当我们开始Kotlin的旅程时,初心便是创建符合驱动我们工具相同原则的语言——帮助开发人员解决繁琐乏味的任务,让开发者专注于真正重要的事情,当然,要尽可能让这个过程轻松而且愉快。
37 |
38 | 我们要感谢Google和Android团队对Kotlin的信任,但首先,我们要感谢您,我们的社区,我们的用户。没有你,Kotlin不会有今天的成就。感谢您在此次旅途中的陪伴,我们希望能够与您一起继续在这条激动人心的道路上前行。
39 | ## 常见问题
40 |
41 | 我们已经准备好了关于本公告可能遇到的一系列问题的答案。如果您的问题未被提及,可以随时在评论中提问。如果您之前并未接触过Kotlin,可以在[FAQ](https://kotlinlang.org/docs/reference/faq.html)了解相关基础内容。
42 | ### Kotlin是否将以Android平台为主?
43 | Kotlin的目标之一是成为跨平台使用的语言,并且一直如此。我们将继续支持并积极开发Kotlin/JVM(服务器端,桌面和其他类型的应用程序)和Kotlin/JS。目前我们也正在努力为其它平台——如macOS, iOS以及IoT/嵌入式系统——开发Kotlin/Native。
44 | ### 对Kotlin的发布周期有何影响?
45 |
46 | Kotlin将继续对Android或Android Studio进行独立发布。项目保持完全独立。很显然,双方产品团队将会有更多密切合作,以确保Kotlin在Android Studio中始终正常运行。
47 | ### Android Studio插件开发?
48 |
49 | Android Studio插件由JetBrains继续开发,但会与Android Studio团队保持紧密合作。
50 | ### 是否影响对IntelliJ IDEA,Eclipse或者Netbeans的支持?
51 |
52 | 不会,Kotlin仍然是针对多个平台的语言,并且将继续提供对其他IDE的支持。显然,IntelliJ IDEA将重点关注对其它社区的贡献。
53 | ### 是否影响对macOS或者iOS的支持?
54 | 不,我们仍然计划用Kotlin/Native支持这两个系统,在这方面没有任何改变。
55 | ### JetBrains会被Google收购吗?
56 |
57 | JetBrains没有计划被任何公司收购。JetBrains一真以来都是面向开发人员的独立IDE供应商,无论他们选择的平台或语言如何。
58 |
59 | Maxim Shafirov
60 |
--------------------------------------------------------------------------------
/original/Kotlin Eclipse Plugin 0.7 Is Here!.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Kotlin Eclipse Plugin 0.7 Is Here!"
3 | date: 2016-06-03 17:48:00
4 | author: Nikolay Krasko
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2016/06/kotlin-eclipse-plugin-0-7-is-here/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | We are happy to present a new release of our plugin for Eclipse IDE. Along with the support for Kotlin **1.0.2** compiler, this update brings very important features and improvements.
18 |
19 | {% raw %}
20 |
21 | {% endraw %}
22 |
23 | The code formatting feature was rebuilt in this release. Instead of our first naive implementation we have mostly managed to port the advanced formatter from the Kotlin IntelliJ Idea plugin into Eclipse. This means that [a lot of fixes](https://youtrack.jetbrains.com/issues/KT?q=Formatter%20State:%20Fixed%20Subsystems:%20IDE) are already there and upcoming improvements will be picked up automatically!
24 |
25 | {% raw %}
26 | 
27 | {% endraw %}
28 |
29 | New line auto-indent also benefitted from this code reuse and now shows far more predictable and smart behaviour.
30 | It was possible to add missing classes imports one-by-one with a quick-fix since 0.1.0 version, and now we’ve improved on that by introducing the *Organize Imports* feature. It will clean unused imports, add missing imports for classes used in the file and resort them.
31 |
32 | {% raw %}
33 | 
34 | {% endraw %}
35 |
36 | Our completion got several fixes in prioritizing variants and is now far more usable. Also not-imported classes are now suggested in completion popup at once and will be inserted together with the corresponding import.
37 |
38 | {% raw %}
39 | 
40 | {% endraw %}
41 |
42 | Several quick-fixes about missing or illegal modifiers were added:
43 |
44 | * It’s now possible to add an open modifier to a declaration which is overridden or subclassed.
45 |
46 |
--------------------------------------------------------------------------------
/original/Use Kotlin with npm, webpack and react.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Use Kotlin with npm, webpack and react"
3 | date: 2017-04-18 15:23:00
4 | author: Dmitry Jemerov
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2017/04/use-kotlin-with-npm-webpack-and-react/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | With Kotlin 1.1, targeting JavaScript in the Kotlin compiler has officially reached production-ready status. Of course, having compiler support is not enough to be able to solve real-life problems, so we continue our work on integrating Kotlin into the larger JavaScript ecosystem.
18 | Today, we’d like to present two new projects: a Gradle plugin integrating Kotlin with npm, webpack and karma, and a full-stack application sample with a Kotlin/JVM backend and a Kotlin/JS frontend built with React.
19 | ## Kotlin Frontend Plugin
20 |
21 | The [Kotlin frontend plugin](https://github.com/Kotlin/kotlin-frontend-plugin) allows you to build and deploy a Kotlin frontend application using webpack. You can use npm packages as dependencies of your application, and the plugin will take care of downloading them and bundling them into the resulting JS file. The plugin also integrates with Karma, allowing you to run the tests of your application. And for optimal workflow, the plugin supports continuous compilation and hot reload, ensuring that you always see an up-to-date version of your application in the browser.
22 | The [README](https://github.com/Kotlin/kotlin-frontend-plugin/blob/master/README.md) file gives instructions for using the plugin, and the examples directory contains a [simple example](https://github.com/Kotlin/kotlin-frontend-plugin/tree/master/examples/frontend-only) showing how you can apply it in a real project.
23 | ## Kotlin React Example [Thinkter](https://github.com/Kotlin/kotlin-fullstack-sample) is an example of a modern full-stack application built in Kotlin. The backend runs under Jetty and uses [Ktor](https://github.com/kotlin/ktor) , a Kotlin Web application framework developed by the Kotlin team. The frontend uses React; a set of React wrappers for Kotlin is [provided as part of the project](https://github.com/Kotlin/kotlin-fullstack-sample/tree/master/frontend/src/org/jetbrains/react) . You’re welcome to use the wrappers in your project and adapt them to your own needs. Note that we’re working on evolving the React wrappers internally, and we’re considering releasing them as a separate open-source library.
24 | To see what Kotlin React code looks like, you can check out [one of the components](https://github.com/Kotlin/kotlin-fullstack-sample/blob/master/frontend/src/org/jetbrains/demo/thinkter/NewThoughtComponent.kt) of the application.
25 | Your feedback on these releases is very much welcome! Please file issues on GitHub, stop by the [forums](https://discuss.kotlinlang.org/) , or join the #javascript channel on the [Kotlin Slack](http://slack.kotlinlang.org/) .
26 |
--------------------------------------------------------------------------------
/original/Spek – A Specification Framework.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: "Spek – A Specification Framework"
3 | date: 2014-02-17 17:20:00
4 | author: Hadi Hariri
5 | tags:
6 | keywords:
7 | categories: 官方动态
8 | reward: false
9 | reward_title: Have a nice Kotlin!
10 | reward_wechat:
11 | reward_alipay:
12 | source_url: https://blog.jetbrains.com/kotlin/2014/02/speka-specification-framework/
13 | translator:
14 | translator_url:
15 | ---
16 |
17 | For a while now, a [few](http://twitter.com/orangy) [of](http://twitter.com/jonyzzz) [us](https://plus.google.com/111179551284404865949/about) have been working on a project called Spek, a framework that allows you to write executable specifications. It allows you to write specifications (i.e. tests) in a more human-readable, and what’s more important, descriptive manner, without having to resort to long test names, underscores or regular expressions.
18 |
19 | {% raw %}
20 |
21 | {% endraw %}
22 |
23 | It’s now reached its first milestone where it’s suitable enough to start being used on projects and we’re ready for feedback and feature requests! It even has its [own site](http://jetbrains.github.io/spek) .
24 | ## A brief introduction
25 |
26 | Spek is a Specification Framework. If you’re familiar with Jasmine, Mocha, RSpec or Machine Specifications, then you’ll immediately see the resemblance.
27 |
28 | {% raw %}
29 | 
30 | {% endraw %}
31 |
32 | If you’re not familiar, let me briefly explain:
33 |
34 | * Given – Establish the context of the test, i.e, Arrange
35 | * On – Execute the action, i.e. Act
36 | * It – Validate the results, i.e. Assert
37 |
38 | Spek allows you to have more than one action for the same context. That is for the same *given*you can have multiple *on’s*. It also allows you to have more than assertion (*it) *for the same action.
39 | ## Spek is not only for Kotlin
40 |
41 | Spek is written in Kotlin. Specifications you write will also be in Kotlin. However, as Kotlin is 100% compatible with Java, you can test new and existing Java code with Spek.
42 | ## How do I run it?
43 |
44 | IntelliJ IDEA supports Spek, so does TeamCity. There’s also a console runner which outputs Text and HTML (needs improvement).
45 |
46 | {% raw %}
47 | 
48 | {% endraw %}
49 |
50 | ## Try it
51 |
52 | Hoping that you like what you see, head over to the [Spek web site](http://jetbrains.github.io/spek) to find out more. It’s still in “EAP” so the more issues reported, the better. And since it’s OSS (Apache 2) [contributions are more than welcome](http://github.com/jetbrains/spek) .
53 |
--------------------------------------------------------------------------------