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

Kotlin 1.4-M1 Preview: O que vem por aí?

Kotlin 1.4-M1 Preview: O que vem por aí?

This talk was held during an online edition of Kotlin Meetup São Paulo, that happened on April 28th.

The talk was about what's new on the Kotlin 1.4-M1 preview, and what features and new APIs are available on this release.

The content is in pt-BR.

More info: https://www.meetup.com/pt-BR/kotlin-meetup-sp/events/270157575/
Video: https://www.youtube.com/watch?v=2OsaHC9HpYE

B567f69eed037ed20536fc825305a38d?s=128

Walmyr Carvalho

April 28, 2020
Tweet

Transcript

  1. Kotlin 1.4 Preview: O que vem por aí? Walmyr Carvalho

    Mobile Technical Leader @ idwall, Founder @ Kusudama Google Developer Expert, Android @walmyrcarvalho
  2. Olá, pessoal! Meu nome é Walmyr Carvalho, muito prazer! :)

  3. Trabalho com desenvolvimento Android há 10 anos e sou um

    Google Developer Experts de Android no Brasil há 4 anos. Além disso, estou muito próximo da comunidade nacional de Android, sendo organizador do Kotlin Meetup São Paulo e do Android Dev BR, a maior comunidade lusófona de Android do mundo, com mais de 6700 pessoas! Também apoio o empreendedorismo nacional, sendo mentor de Android e mobile no Google for Startups Accelerator e na ACE Startups.
  4. Já ajudei a evoluir produtos mobile para empresas como Loggi,

    99, Cielo, CI&T, Hotel Urbano e Globo Esporte, durante mais de 9 anos de carreira como especialista em Android. Fonte: Google Play
  5. Nesse ano fundei a Kusudama, um estúdio de desenvolvimento e

    design de produtos digitais para Android e iOS, que tem como seu objetivo criar experiências que tratem seus usuários com respeito dentro do universo mobile.
  6. Recentemente me juntei ao grande time da idwall como Mobile

    Technical Leader, com o objetivo de criar a próxima plataforma de identidade digital brasileira no mobile, além de soluções para empresas que buscam aumentar a confiança na identificação dos seus usuários.
  7. Evolução da linguagem Kotlin! Como estamos nesse aspecto?

  8. A linguagem Kotlin começou seu desenvolvimento em 2011, tendo a

    sua versão 1.0 lançada há 3 anos e 4 meses atrás, em Fevereiro de 2016!
  9. Fonte: JetBrains

  10. De lá pra cá, ela vem evoluindo muito bem desde,

    o que é um ótimo sinal! ❤
  11. Kotlin (JetBrains) - GitHub github.com/jetbrains/kotlin

  12. A empresa vem colhendo uma série de feedbacks com a

    comunidade de pessoas profissionais Kotlin, o que acaba ajudando a guiar o futuro da linguagem também!
  13. Kotlin Census 2018 Resultado da pesquisa jetbrains.com/research/kotlin-census-2018/ Fonte: JetBrains

  14. Kotlin Census 2019: Call for Respondents Resultados em breve! tinyurl.com/kotlin-census-c4r

    Fonte: JetBrains
  15. Um ponto importante de se mencionar: qualquer pessoa pode fazer

    contribuições ou propostas para a linguagem, o que é algo ótimo! ✨
  16. KEEP - Kotlin Evolution and Enhancement Process (GitHub) Repositório de

    propostas para a evolução da linguagem github.com/kotlin/KEEP
  17. E recentemente a JetBrains anunciou o 1.4 Preview, trazendo uma

    série de novidades tanto pela empresa quanto por pessoas contribuidores externas! ✨
  18. Kotlin 1.4-M1 Preview Artigo no blog oficial da empresa tinyurl.com/blog-kotlin-1-4-m1

    Fonte: JetBrains
  19. Kotlin 1.4! O que temos de legal?

  20. SAM (single abstract method) para interfaces: fun interface Action {

    fun run() } fun runAction(a: Action) = a.run() fun main() { runAction { println("Hello, Kotlin 1.4!") } }
  21. Melhorias nos algoritmos de type inference: val rulesMap: Map<String, (String?)

    -> Boolean> = mapOf( "weak" to { it != null }, "medium" to { !it.isNullOrBlank() }, "strong" to { it != null && "^[a-zA-Z0-9]+$".toRegex().matches(it) } )
  22. Acceso a membros via Smart Cast: fun perform(animal: Animal) {

    val kFunction: KFunction<*> = when (animal) { is Cat -> animal::meow is Dog -> animal::woof } kFunction.call() }
  23. fun foo(i: Int = 0): String = "$i!" fun apply1(func:

    () -> String): String = func() fun apply2(func: (Int) -> String): String = func(42) fun main() { println(apply1(::foo)) println(apply2(::foo)) } Melhorias na referência de callables:
  24. fun foo(i: Int = 0): String = "$i!" fun apply1(func:

    () -> String): String = func() fun apply2(func: (Int) -> String): String = func(42) fun main() { println(apply1(::foo)) println(apply2(::foo)) } Melhorias na referência de callables:
  25. package blogpost @JsExport class KotlinGreeter(private val who: String) { fun

    greet() = "Hello, $who!" } @JsExport fun farewell(who: String) = "Bye, $who!" fun secretGreeting(who: String) = "Sup, $who!" // only from Kotlin! Export de declarações para JS
  26. Como utilizar a nova versão? Tools > Kotlin > Configure

    Kotlin Plugin Updates Update Channel > Early Access Preview 1.4.x E é só instalar! :)
  27. Se eu quiser aprender mais sobre, onde eu posso encontrar

    material?
  28. Kotlin - JetBrains Página oficial kotlinlang.org Fonte: JetBrains

  29. KEEP - Kotlin Evolution and Enhancement Process (GitHub) Repositório de

    propostas para a evolução da linguagem github.com/kotlin/KEEP
  30. Android Dev BR - Comunidade Maior comunidade lusófona de Android

    no Slack, com mais de 6.700 pessoas! ❤✨ slack.androiddevbr.org
  31. Perguntas? Ficou alguma dúvida?

  32. Muito obrigado! Se tiver qualquer dúvida ou sugestão, pode falar

    comigo. ❤ @walmyrcarvalho /walmyrcarvalho walmyr@kusudama.com.br