Kotlin-Related News

  • Gradle Kotlin DSL 1.0
    by Roman Belov on December 10, 2018 at 5:34 pm

    This is a guest blog post from Paul Merlin software engineer for Gradle The recently released Gradle 5.0 includes the Gradle Kotlin DSL v1.0 which is now ready for widespread use. We want you to enjoy a build authoring experience … Continue reading &rarr […]

  • KotlinConf 2018 Videos, Slides, and Photos are Out!
    by Alina Dolgikh on December 4, 2018 at 1:42 pm

    The KotlinConf 2018 videos and their accompanying slides are all now available on the schedule on the website. In addition to this, there are two playlists on the JetBrains TV channel which cover day one and day two. The pictures … Continue reading &rarr […]

  • Destructuring Declarations
    by Andras Kindler on November 23, 2018 at 9:18 am

    Destructuring declarations, or destructuring for short, is a technique in Kotlin for unpacking a class instance into separate variables. […]

  • Kotlin 1.3 Webinars. Update: the first webinar recording is available. Join our second Dec 12
    by Alina Dolgikh on November 22, 2018 at 1:19 pm

    JetBrains is hosting two webinars on Kotlin 1.3 this December. Both events aim to explore the most common use cases and the challenges in adopting Coroutines, Kotlin/Native, and Multiplatform Projects. Andrey Breslav will answer the questions you have on Kotlin … Continue reading &rarr […]

  • Ktor 1.0 Released: A Connected Applications Framework by JetBrains
    by Roman Belov on November 19, 2018 at 6:59 pm

    As we work on Kotlin, we implement many features that help build idiomatic and high-performing APIs. We’ve been dreaming of seeing a Web framework that utilizes these features to the max. Today, we can finally say we’ve built that kind … Continue reading &rarr […]

  • Lambda-Map Performance in Kotlin
    by Brad Cypert on November 19, 2018 at 5:41 pm

    Working on an enterprise application written in Kotlin, I’ve recently noticed something that felt “off” to me. Perhaps you’ve seen it, perhaps you’ve written it — maybe even recently!  It looks something like this (I call this a Lambda-Map): object Demo { fun main() { listOf(1,2,3,4).map { plusOne(it) } } private fun plusOne(i: Int): Int […] The post Lambda-Map Performance in Kotlin appeared first on Brad Cypert. […]

  • Introducing KotlinToday.com
    by Brad Cypert on November 13, 2018 at 9:58 pm

    When I was learning Clojure for the first time, I had two references that I found myself reading every single day. The first resource is a fantastic guide by Daniel Higginbotham called Clojure for the Brave and True. The second resource that I found myself using allowed me to immerse myself into the Clojure community and […] The post Introducing KotlinToday.com appeared first on Brad Cypert. […]

  • Concurrent Coroutines – Concurrency is not Parallelism
    by s1m0nw1 on November 5, 2018 at 1:49 pm

    On Kotlin Coroutines and how concurrency is different from parallelism The official docs describe Kotlin Coroutines as a tool “for asynchronous programming and more”, especially are coroutines supposed to support us with “asynchronous or non-blocking programming”. What exactly does this mean? How is “asynchrony” related to the terms “concurrency” and “parallelism”, tags we hear about […] The post Concurrent Coroutines – Concurrency is not Parallelism appeared first on Kotlin Expertise Blog. […]

  • Sequence – A Kotlin Type
    by Brad Cypert on November 3, 2018 at 5:40 pm

    Kotlin, despite being an object oriented language, offers a ton of support for Functional paradigms. One of the most common functional paradigms involves using a combination of map, filter, and reduce on Iterable types. However, Kotlin uses extension functions on Java Collections to create these functions in their standard library. That means that when you call […] The post Sequence – A Kotlin Type appeared first on Brad Cypert. […]

  • Kotlin 1.3 Released with Coroutines, Kotlin/Native Beta, and more
    by Roman Belov on October 29, 2018 at 3:18 pm

    You can read this blog post in other languages: Today we are releasing Kotlin 1.3 together with a set of accompanying libraries, build tools, and learning materials! We develop Kotlin to be a good tool for all application developers, at … Continue reading &rarr […]

  • Kotlin 1.3 Released
    by arvifox on October 29, 2018 at 9:41 am

    Kotlin 1.3 Released with Coroutines, Kotlin/Native Beta, and more [https://blog.jetbrains.com/kotlin/2018/10/kotlin-1-3/ […]

  • BDD Assertions with Expekt for Kotlin
    by Brad Cypert on October 26, 2018 at 5:46 pm

    Behavior-Driven Development (BDD) has became quite a popular strategy for writing tests in the past ten or so years. BDD is a style of test-writing that focuses on test cases that flow like natural English sentences. Expekt is one such library for writing JUnit assertions in Kotlin. Combining JUnit and Expekt you can achieve results […] The post BDD Assertions with Expekt for Kotlin appeared first on Brad Cypert. […]

  • Kotlin Sealed Classes
    by Brad Cypert on October 19, 2018 at 2:47 am

    Kotlin has a concept known as sealed hierarchies (several other languages implement this feature as well). In Kotlin, we can generate a sealed hierarchy through the use of sealed classes. What are Sealed Classes? Sealed classes are basically an extension to an enum class. They offer similar functionality with a few key differences. Similarly: The […] The post Kotlin Sealed Classes appeared first on Brad Cypert. […]

  • A Complete Guide To Design Patterns In Kotlin: Proxy Design Pattern
    by Baraa Abuzaid on October 11, 2018 at 3:19 pm

    A Proxy design pattern is a structural design pattern. the idea behind is to make a proxy object that is capable of performing tasks similar to the original object. The need for using proxy class could vary but we could depict the following main scenarios.  Virtual proxy this is when using a proxy class as an alternative for a real class because the real class is a resource-intensive to instantiate. for example, the videos in the video edit software, where the program wouldn’t load the video with actual size and resolution because it might be huge. Instead it loads a […]

  • Inline Classes and Autoboxing in Kotlin
    by author@typealias.com (Dave Leeds) on October 10, 2018 at 12:00 am

    In the last article, we discovered how Kotlin’s new, experimental inline classes feature allows us to “create the data types that we want without giving up the performance that we need.” We learned that: Inline classes wrap an underlying value. When the code is compiled, instances of the inline class get replaced with the underlying value. This can improve our app’s performance, especially when the underlying type is a primitive. […]