Auto Added by WPeMatico

Merry coding with Kotlin

Dear programmers! 🙂

This will be the last newsletter from us this year.
We wish you all the best practices in Kotlin every day! 🧑🏻‍🎄

Below you can find a list of today’s unique newsletter content:

Kotlin talk from 4Developers 2022 prepared by Marcin Moskała:
🎬Introduction to distributed systems

Updated Kotlin Coroutines articles written by Marcin Moskała:
👉 Kotlin Coroutines use cases for Domain Layer
👉 Kotlin Coroutines use cases for Presentation/API/UI Layer

These are the chapters from the book Kotlin Coroutines. You can find it on LeanPub.

Our special guest Arrow articles:
A birds-eye view of Arrow: working with function with Arrow Core written by Alejandro Serrano Mena
A birds-eye view of Arrow: Error Handling written by Simon Vergauwen

These are the chapters from the Functional Kotlin book.

The chapter from the Kotlin Essentials book by Marcin Moskała:
👉 Generics in Kotlin

One of our most ambitious workshop attendees’ article
Slowing down your code with Coroutines by Jan Vladimir Mostert

🎬 A presentation about making Kotlin applications safer by Marcin Moskała

Wanna make your coroutines safe and clean?
You have the last chance to join Marcin’s open Kotlin Coroutines workshop
📅 15–16th December 2022
⌚ 9:00–17:00 (UTC+1)
📌 Online (Zoom)
👉 Register here

SPECIAL OFFER

If your training budget for 2022 is closing up and you haven’t decided which workshop suits you best. Get our voucher and book the dates without pressure.
For more details write to contact@kt.academy


Merry coding with Kotlin 🎄 was originally published in Kt. Academy on Medium, where people are continuing the conversation by highlighting and responding to this story.

Continue ReadingMerry coding with Kotlin

Kotlin News: 1.8.0-Beta, EAP Champions, Developer Survey Results, and More

Kotlin 1.8.0-Beta Has Been Released

Kotlin 1.8.0-Beta brings the following updates:

  • Gradle 7.3 compatibility
  • Recursive Path utility functions in the stdlib
  • Support for Xcode 14 in Kotlin/Native
  • Discontinuation of support for the old JVM backend

Try 1.8.0-Beta

We Are Looking for EAP Champions

Are you working on a large-scale, production-grade Kotlin project? Would you love to be among the first to try new language features? Are you interested in making a valuable contribution to Kotlin’s development? Apply to the Kotlin EAP Champions Program!

Become an EAP Champion🎖

How Kotlin Is Going To Fix Your Pains in 2023

Check out the findings of the first Kotlin Developer Survey, our plans to address the most popular issues we discovered, and learn how you can get a head-start on fixing them.

Learn more

Kotlin Multiplatform: New Webinars, Multiplatform Contest

Kotlin Multiplatform Mobile Webinars Are Available to Watch

Kotlin Multiplatform Mobile is now in Beta. It means that the technology is almost complete and safe to use in your projects. To start digging into this technology, check out a series of webinars covering the basics of Multiplatform Mobile and demonstrating some of the most popular use cases.

Watch now

Join the Kotlin Multiplatform Contest and Win a Trip to KotlinConf’23

Calling all students and recent graduates who love to code in Kotlin! Showcase your creativity by building a Kotlin Multiplatform project using the technology that will help shape the future. If your entry makes it into the top 3, you’ll win a trip to KotlinConf’23, the Kotlin event of the year, with all expenses paid courtesy of the Kotlin Foundation.

Join the Kotlin Multiplatform contest

KotlinConf: Going Global, New Workshops

KotlinConf 2023 Is Going Global. Get on Board With Us!

Join KotlinConf remotely, with support from JetBrains. Organize an in-person meetup for your community to watch the KotlinConf’23 live broadcast or recordings after the conference. Hear about the industry trends and Kotlin news from the experts, and discuss the content with community members.

Count me in

New Workshop: Multiplatform Madness With Compose (Plus Friends)

Explore a multiplatform UI and learn about architecting and enhancing DSLs, structured concurrency with coroutines, Kotlin compiler internals, and more.

Register Now

New Workshop: Elegant, Powerful, and Idiomatic APIs in Kotlin

Attend “Elegant, Powerful, and Idiomatic APIs in Kotlin” to discover advanced Kotlin features that provide expressive APIs and DSLs.

Grab your ticket

CPC World Finals: Kotlin Match Сommented by Roman Elizarov

To unveil the full power of Kotlin and JetBrains tools, as well as their advantages in algorithmic problem-solving, we’ve invited two competitive programming stars to match their skills in solving Kotlin problems on stage at the ICPC World Finals. Watch the match between Andrew ‘ecnerwala’ HE and Kamil ‘Errichto’ Debowski, commentated Roman Elizarov.

Watch now

Continue ReadingKotlin News: 1.8.0-Beta, EAP Champions, Developer Survey Results, and More

Kotlin News: 1.8.0-Beta, EAP Champions, Developer Survey Results, and More

Kotlin 1.8.0-Beta Has Been Released

Kotlin 1.8.0-Beta brings the following updates:

  • Gradle 7.3 compatibility
  • Recursive Path utility functions in the stdlib
  • Support for Xcode 14 in Kotlin/Native
  • Discontinuation of support for the old JVM backend

Try 1.8.0-Beta

We Are Looking for EAP Champions

Are you working on a large-scale, production-grade Kotlin project? Would you love to be among the first to try new language features? Are you interested in making a valuable contribution to Kotlin’s development? Apply to the Kotlin EAP Champions Program!

Become an EAP Champion🎖

How Kotlin Is Going To Fix Your Pains in 2023

Check out the findings of the first Kotlin Developer Survey, our plans to address the most popular issues we discovered, and learn how you can get a head-start on fixing them.

Learn more

Kotlin Multiplatform: New Webinars, Multiplatform Contest

Kotlin Multiplatform Mobile Webinars Are Available to Watch

Kotlin Multiplatform Mobile is now in Beta. It means that the technology is almost complete and safe to use in your projects. To start digging into this technology, check out a series of webinars covering the basics of Multiplatform Mobile and demonstrating some of the most popular use cases.

Watch now

Join the Kotlin Multiplatform Contest and Win a Trip to KotlinConf’23

Calling all students and recent graduates who love to code in Kotlin! Showcase your creativity by building a Kotlin Multiplatform project using the technology that will help shape the future. If your entry makes it into the top 3, you’ll win a trip to KotlinConf’23, the Kotlin event of the year, with all expenses paid courtesy of the Kotlin Foundation.

Join the Kotlin Multiplatform contest

Weird and Ambitious Multiplatform Things | Jake Wharton and Jesse Wilson

In this new episode of “A Touch Of Multiplatform” we are talking to Jake Wharton and Jessie Wilson from Cash App about “weird and ambitious multiplatform things.” They reveal their experience of using Kotlin Multiplatform for one of the most used fintech apps in the world.

Watch now

KotlinConf: Going Global, New Workshops

KotlinConf 2023 Is Going Global. Get on Board With Us!

Join KotlinConf remotely, with support from JetBrains. Organize an in-person meetup for your community to watch the KotlinConf’23 live broadcast or recordings after the conference. Hear about the industry trends and Kotlin news from the experts, and discuss the content with community members.

Count me in

New Workshop: Multiplatform Madness With Compose (Plus Friends)

Explore a multiplatform UI and learn about architecting and enhancing DSLs, structured concurrency with coroutines, Kotlin compiler internals, and more.

Register Now

New Workshop: Elegant, Powerful, and Idiomatic APIs in Kotlin

Attend “Elegant, Powerful, and Idiomatic APIs in Kotlin” to discover advanced Kotlin features that provide expressive APIs and DSLs.

Grab your ticket

CPC World Finals: Kotlin Match Сommented by Roman Elizarov

To unveil the full power of Kotlin and JetBrains tools, as well as their advantages in algorithmic problem-solving, we’ve invited two competitive programming stars to match their skills in solving Kotlin problems on stage at the ICPC World Finals. Watch the match between Andrew ‘ecnerwala’ HE and Kamil ‘Errichto’ Debowski, commentated Roman Elizarov.

Watch now

Continue ReadingKotlin News: 1.8.0-Beta, EAP Champions, Developer Survey Results, and More

使用惯用 Kotlin 解决 Advent of Code 谜题

除了编写代码之外,学习一门语言最好的方式是什么? 解决像 Advent of Code 中的那些有趣而简短的任务可能是练习语言技能的绝佳机会,如果将自己的解决方案与其他人解决相同问题的方式进行比较,您可以学到很多东西。

来自世界各地的许多开发者,包括来自 Kotlin 团队的一些开发者,都会参加 Eric Wastl 创建的 Advent of Code 挑战。 Advent of Code 是每年 12 月发布的一系列任务,您可以解决这些任务并与他人竞争。 许多人都认同这是庆祝圣诞节和新年的最好的倒计时日历!

为了帮助社区学习惯用 Kotlin,并激励更多开发者将来用 Kotlin 解决 Advent of Code 任务,我们决定为 Advent of Code 2020 的任务准备解决方案。 不管您已经在 12 月解决了这些任务,准备现在解决,还是只想查看解决方案,我们都希望您能在这些材料中有所收获。 当然,如果您先尝试自己解决任务,效果会更好!

 

以下是第一个任务的解决方案和视频。 如果您觉得这种形式很有用,并希望我们用类似的方式涵盖更多任务,请在评论中分享您的想法!

第 1 天. Report Repair

我们要修正一份费用报告! 请在 https://adventofcode.com/2020/day/1 查看完整的任务描述*。

您需要从数字列表中找到和为 2020 的两个(在第二部分中是三个)条目,然后将这两个(或三个)数字相乘。

如何解决任务

https://adventofcode.com/ 注册,打开 https://adventofcode.com/2020/day/1 下的任务,使用 Kotlin 编写您的解决方案,然后在网站上检查结果。 您可以在线编写 Kotlin 代码,也可以使用 IDE:

最后,将您的解决方案与下面的解决方案进行比较。

我们将 src 文件夹标记为源集,将代码直接放在那里。 为方便起见,我们将输入文件(如 src/day1/input.txt)复制到源文件夹。 您可以在此项目中找到解决方案。

解决方案

以下是示例输入:

1721
979
366
299
675
1456

 

首先,我们需要读取和解析输入。 我们可以使用 Kotlin readLines() 函数从给定文件中读取行列表:

 

File("src/day1/input.txt").readLines()

 

readLines() 返回一个字符串列表,我们将其转换为一个数字列表:

 

import java.io.File
fun main() {
   val numbers = File("src/day1/input.txt")
       .readLines()
       .map(String::toInt)


}

 

将此代码放入 main 函数中,该函数是程序的入口点。 当您开始输入时,IntelliJ IDEA 会自动导入 java.io.File

现在,我们只需迭代列表,然后对每个数字重复该迭代并检查和:

 

for (first in numbers) {
   for (second in numbers) {
       if (first + second == 2020) {
           println(first * second)
           return
       }
   }
}

 

将此代码放在 main 中,这样一来,找到所需数字时, return 会从 main 返回。

以类似的方式检查三个数字的和:

 

for (first in numbers) {
   for (second in numbers) {
       for (third in numbers) {
           if (first + second + third == 2020) {
               println(first * second * third)
               return
           }
       }
   }
}

 

您可以运行上述代码并获得给定输入的结果。 就是这样! 第一个任务其实很简单。

但是,对于每个元素,我们在相同的列表上进行了反复迭代。 如果使用两个嵌套循环来查找两个数字,则需要 N2 次运算,其中 N 是元素的数量。 当我们需要查找三个数字时,就是三个嵌套循环,以及 N3 次运算。 如果数字列表很大,这不是解决此类问题的最高效方式。 当然还有更好的办法,对吧?

当然有,Kotlin 标准库可以帮助我们简洁地进行表达。 像往常一样,我们可以用某种用于查找结果的智能存储来代替冗长的计算。

解决两个数字的任务

首先,我们构建一个数字补数(即与给定数字的和为 2020 的数字)的映射:

 

val complements = numbers.associateBy { 2020 - it }

 

我们使用 Kotlin associateBy 函数来构建映射。 它的 lambda 实参返回此映射中的一个键,通过该键存储列表元素。 对于示例输入,它将是以下映射:

 

numbers: [1721, 979, 366, 299, 675, 1456]
complements map: {299=1721, 1041=979, 1654=366, 1721=299, 1345=675, 564=1456}

 

经过这个程序,您可以清楚地看到答案! 列表中的第一个数字 1721 作为键出现在 complements 映射中:1721=299,这意味着它是数字 299 的补数,二者的和为 2020

将此信息存储在映射中后,我们可以检查列表中的任何数字在此映射中是否有补数。 以下代码会查找第一个具有现成补数的数字:

 

val pair = numbers.mapNotNull { number ->
   val complement = complements[number]
   if (complement != null) Pair(number, complement) else null
}.firstOrNull()

 

我们将每个数字转换成一个由数字及其补数组成的对(如果补数存在),然后找到第一个非 null 结果。

我们使用 mapNotNull,它会转换列表中的每个元素并筛选出所有 null 结果。 它是先调用 map,再对结果调用 filterNotNull 的简写形式。

firstOrNull 会返回列表中的第一个元素,如果列表为空,则返回 null。 Kotlin 标准库通常使用 OrNull 后缀来标记失败时返回 null 的函数,而不是抛出异常(如 elementAtOrNullsingleOrNullmaxOrNull)。

从 Kotlin 1.5.0 开始,您还可以将后续的两个运算 mapNotNullfirst(OrNull) 替换为一个函数调用:firstNotNullOf(OrNull)

在构建辅助结构后,我们设法通过 N 次运算(而不是像之前一样通过 N2 次运算)找到了满足条件的两个数字!

我们需要将这些数字相乘,因此下面是最后一步:

 

println(pair?.let { (a, b) -> a * b })

 

pair 变量包含由两个数字组成的可以为 null 的 Pair,如果初始列表不包含和为 2020 的数字,则为 null。 我们使用安全访问 ?.let 函数并在 lambda 语法中进行析构,在 pair 不为 null 的情况下显示结果。

解决三个数字的任务

下一步是解决三个数字的问题。 我们来重用目前为止所做的工作,并将查找和为给定数字的一对数字的逻辑提取到一个单独的函数中:

 

fun List<Int>.findPairOfSum(sum: Int): Pair<Int, Int>? {
   // Map: sum - x -> x
   val complements = associateBy { sum - it }
   return firstNotNullOfOrNull { number ->
       val complement = complements[number]
       if (complement != null) Pair(number, complement) else null
   }
}

 

我们还使用了 firstNotNullOfOrNull 函数。

接下来,我们使用 findPairOfSum 构建一个辅助映射,用来存储每个数字的补值对,这些值与此数字的和为 2020:

 

// Map: x -> (y, z) where y + z = 2020 - x
val complementPairs: Map<Int, Pair<Int, Int>?> =
   numbers.associateWith { numbers.findPairOfSum(2020 - it) }

 

对于相同的初始输入,下面是补数对映射:

 

numbers: [1721, 979, 366, 299, 675, 1456]
complement pairs: {1721=null, 979=(366, 675), 366=(979, 675), 299=null, 675=(979, 366), 1456=null}

 

和之前一样,您已经可以看到答案了! 它是与映射中非 null 对相对应的数字。

然而,我们并不真的需要构建整个映射。我们只需要找到对应于非 null 对的第一个数字! 我们使用已经熟悉的 firstNotNullOfOrNull 函数进行查找:

 

fun List<Int>.findTripleOfSum(): Triple<Int, Int, Int>? =
   firstNotNullOfOrNull { x ->
       findPairOfSum(2020 - x)?.let { pair ->
           Triple(x, pair.first, pair.second)
       }
   }

 

请注意 Kotlin 的简明语法,该函数可以直接返回一个表达式。

如果得到的三元组不为 null,则最后一步是计算乘积,这与我们之前的方式类似:

 

println(triple?.let { (x, y, z) -> x * y * z} )

 

这部分到此结束!

在下一部分中,我们将讨论如何解决第二个任务。 如果您觉得此内容有用,并希望我们为更多任务提供解决方案,请告诉我们!

*经 Advent of Code (Eric Wastl) 许可使用。

本博文英文原作者:

Sue

Svetlana Isakova

Continue Reading使用惯用 Kotlin 解决 Advent of Code 谜题

Black Kotlin Week: Effective Kotlin articles & Coroutines movie & Mobile app articles & Use cases…

Black Kotlin Week: Effective Kotlin articles & Coroutines movie & Mobile app articles & Use cases article & open workshops and books discounts ✂️


Black Kotlin Week: Effective Kotlin articles & Coroutines movie & Mobile app articles & Use cases… was originally published in Kt. Academy on Medium, where people are continuing the conversation by highlighting and responding to this story.

Continue ReadingBlack Kotlin Week: Effective Kotlin articles & Coroutines movie & Mobile app articles & Use cases…

Join Us Live at the ICPC World Finals for a Stellar Kotlin Match

JetBrains has been a proud sponsor of the International Collegiate Programming Contest for a number of years. This year, we’re proud to support the 45th ICPC World Finals taking place in Dhaka, Bangladesh. 

To unveil the full power of Kotlin and JetBrains tools, as well as their advantages in algorithmic problem-solving, we’ve invited two competitive programming stars to match their skills in solving Kotlin problems on stage at the ICPC World Finals. Andrew ‘ecnerwala’ He, one of the top competitive programmers in the world, will compete in a lockout session against Kamil ‘Errichto’ Debowski, Codeforces “Legendary Grandmaster” and Topcoder “Target”. The match will be commentated by none other than Roman Elizarov. 

We are going to livestream this event on November 7, 2022, and we invite you to join us!

Watch the Livestream

To refresh your knowledge about Kotlin and learn more about competitive programming, check out our competitive programming tutorial and watch the videos from our Competitive Programming YouTube playlist.

We look forward to seeing you soon on the livestream!

Update: Due to unforeseen circumstances, Kamil ‘Errichto’ Debowski replaced Gennady ‘tourist’ Korotkevich in this ICPC World Finals Kotlin lockout match.

Continue ReadingJoin Us Live at the ICPC World Finals for a Stellar Kotlin Match

Kotlin News: 1.7.20-RC, kotlinx.serialization 1.4.0, KotlinConf Call for Speakers, and More

Kotlin 1.7.20-RC Released

Here are some highlights from this preview version of Kotlin:

  • K2 now supports several new plugins.
  • A preview of the ..< operator for open-ended ranges has been added.
  • The K/N memory manager is enabled by default.
  • Inline classes with generic underlying type (experimental) have been added.

Read about all the updates

kotlinx.serialization 1.4.0 Is Out

Check out the new exciting features and updates the latest kotlinx.serialization 1.4.0 release brings:

  • Integration with Okio’s BufferedSource and BufferedSink.
  • Inline classes and unsigned numbers no longer require experimental annotations.
  • Part of SerializationException’s hierarchy is now public.
  • @MetaSerializable annotation.
  • Moving documentation from GitHub pages to kotlinlang.org.

Read more

Become a KotlinConf’23 Speaker

KotlinConf is a community event, so we would love for you to take part. Submit a talk and share your experience, whether it’s about finding innovative ways to use Kotlin, the challenges you’ve faced, a framework you’ve created, or anything you’d like to share that could help others along their journey. The call for papers is now open!

Submit your talk

Join the Kotlin Multiplatform Mobile Content Creators

We’ve started the Kotlin Multiplatform Mobile Content Creators Recognition Campaign to say a huge “thank you” to all the contributors and highlight their content.
We’ll showcase the educational samples and other pieces of content from developers sharing experience adopting Kotlin Multiplatform Mobile technology, providing tips and tricks to inspire learners, and help with completing the official resources.

Join now

Subscribe to The Modern Mobile – New Email Digest

Subscribe to “The Modern Mobile” – a new email digest with everything you need to know about modern mobile development by JetBrains and the Kotlin Community. Keep up to date with all the important news, tutorials, and tips and tricks related to modern declarative frameworks, tools for cross-platform mobile development, and more.

Subscribe now

How Did You Get Started with Kotlin?

Each month there are new developers starting their Kotlin journeys – some who just want to give it a try, and some with specific goals in mind. Let us know how your Kotlin journey began so we can make the first steps of your Kotlin journey easier and more fun. Take part in our new Kotlin users survey.

Tell us how you got started

Watch New Videos

Compose in Cash App with Jake Wharton and Saket Narayan

In the latest episode of Talking Kotlin, we speak with Jake Wharton and Saket Narayan about how they use Compose not only for UIs, but for managing state and data throughout the whole Cash App and why “it is time for XML to die.”

Watch now

Design Patterns in Kotlin Episode #2

The author of “Kotlin Design Patterns and Best Practices” presents decorator and proxy patterns! Together, Alexey Soshin and Sebastian Aigner walk us through a typical example case that shows where these patterns shine, which also illustrates why Alexey would rather have them be called “wrapper” patterns.

Check it out

Learn Tips for Collaborative Programming From Code With Me

Code With Me is a built-in feature of IntelliJ-based IDEs for collaborative programming that enables developers to work on the same code base in real time, even remotely. They can fix bugs, simultaneously edit the code, navigate and review code, and mentor and help each other. All of this makes Code With Me an excellent tool for those who code, learn, or teach in Kotlin.

Read blog post

Continue ReadingKotlin News: 1.7.20-RC, kotlinx.serialization 1.4.0, KotlinConf Call for Speakers, and More

Kotlin News: 1.7.20-RC, kotlinx.serialization 1.4.0, KotlinConf Call for Speakers, and More

Kotlin 1.7.20-RC Released

Here are some highlights from this preview version of Kotlin:

  • K2 now supports several new plugins.
  • A preview of the ..< operator for open-ended ranges has been added.
  • The K/N memory manager is enabled by default.
  • Inline classes with generic underlying type (experimental) have been added.

Read about all the updates

kotlinx.serialization 1.4.0 Is Out

Check out the new exciting features and updates the latest kotlinx.serialization 1.4.0 release brings:

  • Integration with Okio’s BufferedSource and BufferedSink.
  • Inline classes and unsigned numbers no longer require experimental annotations.
  • Part of SerializationException’s hierarchy is now public.
  • @MetaSerializable annotation.
  • Moving documentation from GitHub pages to kotlinlang.org.

Read more

Become a KotlinConf’23 Speaker

KotlinConf is a community event, so we would love for you to take part. Submit a talk and share your experience, whether it’s about finding innovative ways to use Kotlin, the challenges you’ve faced, a framework you’ve created, or anything you’d like to share that could help others along their journey. The call for papers is now open!

Submit your talk

Join the Kotlin Multiplatform Mobile Content Creators

We’ve started the Kotlin Multiplatform Mobile Content Creators Recognition Campaign to say a huge “thank you” to all the contributors and highlight their content.
We’ll showcase the educational samples and other pieces of content from developers sharing experience adopting Kotlin Multiplatform Mobile technology, providing tips and tricks to inspire learners, and help with completing the official resources.

Join now

Subscribe to The Modern Mobile – New Email Digest

Subscribe to “The Modern Mobile” – a new email digest with everything you need to know about modern mobile development by JetBrains and the Kotlin Community. Keep up to date with all the important news, tutorials, and tips and tricks related to modern declarative frameworks, tools for cross-platform mobile development, and more.

Subscribe now

How Did You Get Started with Kotlin?

Each month there are new developers starting their Kotlin journeys – some who just want to give it a try, and some with specific goals in mind. Let us know how your Kotlin journey began so we can make the first steps of your Kotlin journey easier and more fun. Take part in our new Kotlin users survey.

Tell us how you got started

Watch New Videos

Compose in Cash App with Jake Wharton and Saket Narayan

In the latest episode of Talking Kotlin, we speak with Jake Wharton and Saket Narayan about how they use Compose not only for UIs, but for managing state and data throughout the whole Cash App and why “it is time for XML to die.”

Watch now

Design Patterns in Kotlin Episode #2

The author of “Kotlin Design Patterns and Best Practices” presents decorator and proxy patterns! Together, Alexey Soshin and Sebastian Aigner walk us through a typical example case that shows where these patterns shine, which also illustrates why Alexey would rather have them be called “wrapper” patterns.

Check it out

Learn Tips for Collaborative Programming From Code With Me

Code With Me is a built-in feature of IntelliJ-based IDEs for collaborative programming that enables developers to work on the same code base in real time, even remotely. They can fix bugs, simultaneously edit the code, navigate and review code, and mentor and help each other. All of this makes Code With Me an excellent tool for those who code, learn, or teach in Kotlin.

Read blog post

Continue ReadingKotlin News: 1.7.20-RC, kotlinx.serialization 1.4.0, KotlinConf Call for Speakers, and More

Happy Programmers Day: Complete Collection Processing in Kotlin articles series and special open…

Happy Programmers Day: Complete Collection Processing in Kotlin articles series and special open workshops offer 🥳


Happy Programmers Day: Complete Collection Processing in Kotlin articles series and special open… was originally published in Kt. Academy on Medium, where people are continuing the conversation by highlighting and responding to this story.

Continue ReadingHappy Programmers Day: Complete Collection Processing in Kotlin articles series and special open…

Read and learn: Functional Kotlin articles & Application security & Camera Apps & Programming…

Read and learn: Functional Kotlin articles & Application security & Camera Apps & Programming nomenclature & OOP vs FP & open workshops 🔋


Read and learn: Functional Kotlin articles & Application security & Camera Apps & Programming… was originally published in Kt. Academy on Medium, where people are continuing the conversation by highlighting and responding to this story.

Continue ReadingRead and learn: Functional Kotlin articles & Application security & Camera Apps & Programming…

월간 소식지: Kotlin 1.7.20 베타, KotlinConf 워크숍, 신규 웹 세미나 등!

Kotlin 1.7.20 베타 출시

Kotlin 테스트 버전에서 제공하는 기능은 다음과 같습니다.

  • Lombok, All-open, Parcelize 및 기타 컴파일러 플러그인을 지원하는 새로운 Kotlin K2 컴파일러.
  • 개방형 범위를 생성하는 ..< 연산자 테스트 버전.
  • 기본적으로 활성화된 새로운 Kotlin/Native 메모리 관리자
  • JVM용 새로운 실험적 기능 – 제네릭 기본 타입의 인라인 클래스.

Kotlin 1.7.20 베타의 새로운 기능 문서에서 기능과 관련한 자세한 내용 및 사용 설정 방법을 알아보세요.

Kotlin 1.7.20 베타 사용해보기

Kotlin 에코시스템의 가장 중요한 소식을 모두 담은 월간 다이제스트를 통해 최신 정보를 받아보세요! 구독하기

모든 워크숍 목록 공개!

JetBrains, Google, Touchlab 등 여러 회사의 멋진 연사들이 참석하여 최신 주제를 소개합니다! KotlinConf’23 워크숍에서 Jetpack Compose, 프로덕션 단계의 Multiplatform Mobile, TDD, Ktor 및 Kafka를 사용한 마이크로서비스, 코루틴을 사용한 반응형 Spring Boot 등의 주제를 확인해 보세요.

각 워크숍에는 인원 제한이 있으므로, 참여를 원하는 워크숍을 선택하고 빨리 등록하세요!

워크숍 선택

새로운 Multiplatform Mobile 온보딩

Kotlin Multiplatform Mobile을 사용해볼 계획이었다면 바로 지금이 적기입니다! 처음 사용하는 분들을 위한 튜토리얼이 업데이트되었습니다. 단계별 설명이 제공되는 튜토리얼을 통해 iOS 및 Android용 공통 코드로 첫 번째 애플리케이션을 제작해 보세요.

튜토리얼 시작하기

‍👩‍🔬 다이어리 스터디에 참여할 📱 Android 개발자를 모집합니다. 목표는 Kotlin Multiplatform Mobile 온보딩 프로세스를 더욱 원활하게 만드는 것입니다. 이 스터디에 참여하려면 간단한 적격성 설문조사를 완료해 주세요. 프로필이 스터디 참여 기준에 부합하는 경우 참여 가능한 시간을 선택하면 됩니다. 감사의 표시로 모든 인터뷰 참가자에게 선물을 드립니다. 🎁

설문조사 시작하기

웨비나: Kotlin과 Code With Me

Code With Me 도구는 소프트웨어를 협업으로 개발하는 데에도 유용하지만 다른 사람들에게 코드를 보여주고 설명하는 데에도 매우 탁월합니다. Code With Me를 사용하여 지식을 공유하는 여러가지 사례는 Matt EllisSebastian Aigner이 함께 소개한 웨비나에서 자세한 내용을 확인할 수 있습니다.

웨비나 영상 시청하기

Multik v0.2 출시!

Multik은 Kotlin을 위한 다차원 배열 라이브러리로, 7월에 0.2.0 버전이 출시되었습니다. 이 신규 릴리스에서는 원하는 멀티플랫폼 프로젝트에서 다차원 배열을 사용할 수 있습니다. 또한 Android 및 Apple Silicon 프로세서에 대한 지원 및 사용성도 개선되었습니다.

이번 릴리스의 라이브러리 멀티플랫폼 기능에 크게 기여해주신 Luca Spinazzola에게 Kotlin 팀에서 감사의 말씀을 전합니다.

자세히 알아보기

Kotlin 증분 컴파일 – 새로운 접근 방식

모듈 간 종속성의 프로젝트 변경 사항에 대한 증분 컴파일을 새롭게 개선했습니다. 이제 증분 컴파일은 Kotlin이 아닌 종속 모듈의 변경 사항에도 지원되며, Gradle 빌드 캐시와도 호환됩니다. 새로운 접근 방식은 현재 실험적 상태로, JVM 백엔드용으로만 출시되었습니다. 벤치마크를 비롯한 자세한 정보는 블로그 게시물에서 확인하세요.

새로운 접근 방식 사용해보기

Kotlin 설계 패턴 및 모범 사례 | Talking Kotlin

Alexey Soshin과 함께한 Talking Kotlin의 새 에피소드의 주제는 Kotlin 설계 패턴입니다. Alexey는 15년 이상의 경력을 자랑하는 소프트웨어 설계자이자 ‘Kotlin Design Patterns and Best Practices’라는 책의 저자이기도 합니다. 언제나처럼 이 신규 에피소드는 Hadi HaririSebastian Aigner가 진행합니다. 지금 확인해 보세요!

동영상 시청하기

From Java to Kotlin and Back | Kotlin 팀 튜토리얼

Kotlin 팀이 새로운 튜토리얼을 게시했습니다! 개발자 애드버킷 Anton Arhipov가 Kotlin 코드에서 Java를 호출할 때 혹은 그 반대의 경우에 알고 있어야 할 핵심 정보를 설명합니다.

동영상 시청하기

Apache Spark용 신규 Kotlin API 출시

Apache Spark용 Kotlin API가 버전 1.2로 업데이트되었습니다. 이번 업데이트는 MLLib, RDD, UDT 및 UDF에 대한 지원을 제공하며, 모든 버전의 Scala 및 패치 버전의 Spark와 함께 작동합니다. 프로젝트에 적용할 방법을 알아보려면, 블로그 게시물에서 자세한 내용을 확인하세요!

더 읽어보기


2022년 모바일 일자리 현황 설문조사

모바일 튜토리얼 플랫폼 raywenderlich.com에서 2022년 모바일 일자리 현황 설문조사를 시작했습니다. 이 조사의 목적은 특정 기술, 지역 및 산업을 고려하여 모바일 개발자를 위한 적정 수준의 급여를 파악하는 것입니다. 이러한 목적에 따라 설문조사는 익명으로 실시되며, 2022년 9월 15일 이후 커뮤니티에 결과가 공개됩니다.

모바일 개발자이신가요? 설문조사에 참여해 주세요!

설문조사 참여하기

게시물 원문 작성자

Alina Dolgikh

Continue Reading월간 소식지: Kotlin 1.7.20 베타, KotlinConf 워크숍, 신규 웹 세미나 등!

每月新闻:Kotlin 1.7.20 测试版、KotlinConf 研讨会、新的在线讲座,等等!

Kotlin 1.7.20 测试版现已发布

这个预览版本的 Kotlin 带来以下功能:

  • 新的 Kotlin K2 编译器,支持 Lombok、all-open、Parcelize 和其他编译器插件。
  • 用于创建开放范围的 ..< 运算符的预览。
  • 新的 Kotlin/Native 内存管理器默认启用。
  • JVM 的一个新的实验性功能 – 具有通用基础类型的内联类。

在 Kotlin 1.7.20 测试版最新变化中详细了解这些功能以及如何启用它们。

试用 Kotlin 1.7.20 测试版

请持续关注我们的月度文摘,囊括了一切有关 Kotlin 生态系统的最重要的新闻! 从这里订阅。

完整的研讨会列表已经公布

来自 JetBrains、Google、Touchlab 和其他公司的精彩演讲者将讲述前沿主题! Jetpack Compose、生产中的 Multiplatform Mobile、TDD、微服务与 Ktor 和 Kafk、反应式 Spring Boot 与协同程序等都在 KotlinConf’23 研讨会日的菜单上。

每个研讨会的席位都有限,因此选择您喜欢的主题,尽快注册,不要错过!

选择研讨会

新的 Multiplatform Mobile 新手入门

如果您曾想过在 Kotlin Multiplatform Mobile 上一展身手,现在就是最佳时机! 我们的团队已经更新了“使用入门”教程。 按照步骤操作,为 iOS 和 Android 创建您的第一款具有共享代码的应用程序。

开始教程

👩‍🔬 我们正在寻找 📱 Android 开发者参与一项日记研究。 我们的目标是使 Kotlin Multiplatform Mobile 的新手入门流程更加顺利。 如果您想参加,请完成这个快速筛选调查。如果您符合我们的要求,请选择一个适合您的时间。 为了表达我们的感激之情,每个调查参与者都会收到一份礼物。 🎁

参加调查

在线讲座:Kotlin 和 Code With Me

除了协作式软件开发,Code With Me 工具也是向他人展示和解释代码的实用工具。8 月 11 日,Matt EllisSebastian Aigner 为我们带来了使用 Code With Me 进行知识分享的最佳实践。

收看在线讲座回放

Multik v0.2 现已发布

Multik 是 Kotlin 的一个多维数组库,我们在 7 月发布了 0.2.0 版本。 新版本为您喜欢的多平台项目带来了多维数组。 它还带来了对 Android 和 Apple 芯片处理器的支持以及实用性改进。

团队感谢 Luca Spinazzola,他在这个版本中为库的多平台能力做出了巨大贡献。

了解详情

Kotlin 的增量编译 – 新方式

我们为跨模块依赖项中的项目更改引入了新的增量编译。 增量编译现在也支持在依赖的非 Kotlin 模块中进行的更改。 它也与 Gradle 构建缓存兼容。 新方式目前处于实验状态,只针对 JVM 后端发布。 您可以在我们的博文中发现更多信息,包括关于基准的信息。

试用新方式

Kotlin Design Patterns and Best Practices | Talking Kotlin

与 Alexey Soshin 的新一集 Talking Kotlin 专门讨论 Kotlin 设计模式。 Alexey 是一位拥有超过 15 年经验的软件架构师,也是《Kotlin Design Patterns and Best Practices》一书的作者。 与往常一样,新的一集也是由 Hadi Hariri 和 Sebastian Aigner 主持。 立即观看!

立即观看

From Java to Kotlin and Back | Kotlin Team Tutorial

来自 Kotlin 团队的新教程现已发布! 我们的开发技术推广工程师 Anton Arhipov 分享了从 Kotlin 代码中调用 Java 以及执行反向操作而需要了解的重要细节。

立即观看

适用于 Apache Spark 的新 Kotlin API 现已发布

适用于 Apache Spark 的 Kotlin API 已经更新到 1.2 版本。 它带来了对 MLLib、RDD、UDT 和 UDF 的支持,并且现在可以与所有版本的 Scala 和 Spark 的补丁版本一起使用。 想了解如何在您的项目中应用吗? 在博文中了解详情!

阅读更多

2022 移动工作现状调查

移动教程平台 raywenderlich.com 发起了“2022 移动工作现状调查”。 本研究的目标是确定移动开发者在特定技能、位置和行业方面的公平薪酬。 为此,他们发起了一项匿名调查。 调查结果将在 2022 年 9 月 15 日之后与社区分享。

您是移动开发者吗? 填写调查!

填写调查

本博文英文原作者:

Alina Dolgikh

Continue Reading每月新闻:Kotlin 1.7.20 测试版、KotlinConf 研讨会、新的在线讲座,等等!

End of content

No more pages to load