Upgrade to Pro — share decks privately, control downloads, hide ads and more …

"Fun" as in "funeral": full-stack development u...

"Fun" as in "funeral": full-stack development using Kotlin JS

First presented in 2018 in St. Petersburg, updated early 2020 for Berlin KUG.

What could go wrong if you take Kotlin for both front and backend?

Karin-Aleksandra Monoid

January 16, 2020
Tweet

More Decks by Karin-Aleksandra Monoid

Other Decks in Programming

Transcript

  1. public external abstract class Navigator : NavigatorID, NavigatorLanguage, NavigatorOnLine, NavigatorContentUtils,

    NavigatorCookies, NavigatorPlugins, NavigatorConcurrentHardware { open val serviceWorker: ServiceWorkerContainer fun vibrate(pattern: dynamic): Boolean }
  2. external class Node { val firstChild: Node fun append(child: Node):

    Node fun removeChild(child: Node): Node } external val window: Window
  3. @external interface A { var i: Int } class C

    : A { override var i: Int = 2 } fun main(args: Array<String>) { val o = object : A { override var i = 1 } println(js("Object.getOwnPropertyNames(o)")) val c = C() println(js("Object.getOwnPropertyNames(c)")) }
  4. @external interface A { var i: Int } class C

    : A { override var i: Int = 2 } fun main(args: Array<String>) { val o = object : A { override var i = 1 } println(js("Object.getOwnPropertyNames(o)")) val c = C() //$i_567hc7$ println(js("Object.getOwnPropertyNames(c)")) } //$i_1ev2$ Expected: i i