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

GooleIOExtended2019_Toan_English.pdf

 GooleIOExtended2019_Toan_English.pdf

Toan Tran

July 27, 2019
Tweet

More Decks by Toan Tran

Other Decks in Programming

Transcript

  1. Agenda 1. Some background contexts 2. First line of Kotlin

    3. Adoption process 4. Is it easy or not? 5. Lessons learnt 6. Where we are now? 7. Questions
  2. Background contexts (facts) - Starting as MVP project in 5

    months - All Java - “1-man project” - 1+ year since Kotlin official support from Google (May 2017)
  3. Adoption - phase 1 - “the honeymoon” - Enjoy the

    language features: data class, extension functions, out-of-the-box lambda support, collection API, Null-safety!!!, immutability support - Bit by bit: testing code, data object - The brevity vs the verbosity - clear winner! - Introduce the language with weighted risks - like you are driving your car at 60 mph
  4. Adoption - phase 2 - “spreading” - New components are

    written in Kotlin - Converting from Java to Kotlin is encouraged (but optional) - Supported by: code review process, pair-programming
  5. Adoption - phase 3 - “acceleration” - First factor: New

    hire with Kotlin filter (Belarus team expanding) - Refactoring: - Convert from java to Kotlin become a mandatory - New components are written in Kotlin as always
  6. Is it easy? 1. Java inter-ops capability 2. Rich API

    collections 3. Reading it in a similar style with Java 4. Functional concepts
  7. Lessons learnt - Pair-programming sessions help the adoption become team-friendly

    and less stressful - Guild to share the knowledge - via Code Review, filling-water talks,