Skip to content

Meeting 5: "...enums serialization..." and "...KMM"

Photo of Piotr Krzemiล„ski
Hosted By
Piotr Krzemiล„ski . and Monika
Meeting 5: "...enums serialization..." and "...KMM"

Details

๐ผ๐‘š๐‘๐‘œ๐‘Ÿ๐‘ก๐‘Ž๐‘›๐‘ก ๐‘›๐‘œ๐‘ก๐‘’๐‘  ๐‘“๐‘–๐‘Ÿ๐‘ ๐‘ก:

  • ๐‘กโ„Ž๐‘–๐‘  ๐‘–๐‘  ๐‘Ž โ„Ž๐‘ฆ๐‘๐‘Ÿ๐‘–๐‘‘ ๐‘š๐‘’๐‘’๐‘ก๐‘–๐‘›๐‘”, ๐‘š๐‘’๐‘Ž๐‘›๐‘–๐‘›๐‘” ๐‘กโ„Ž๐‘Ž๐‘ก ๐‘กโ„Ž๐‘’ ๐‘ ๐‘๐‘’๐‘Ž๐‘˜๐‘’๐‘Ÿ๐‘  ๐‘ค๐‘–๐‘™๐‘™ ๐‘๐‘’ ๐‘œ๐‘› ๐‘ ๐‘–๐‘ก๐‘’, ๐‘Ž๐‘›๐‘‘ ๐‘กโ„Ž๐‘’ ๐‘Ž๐‘ข๐‘‘๐‘–๐‘’๐‘›๐‘๐‘’ ๐‘ค๐‘–๐‘™๐‘™ ๐‘๐‘œ๐‘›๐‘›๐‘’๐‘๐‘ก ๐‘กโ„Ž๐‘Ÿ๐‘œ๐‘ข๐‘”โ„Ž ๐‘๐‘œ๐‘œ๐‘š. ๐‘‡โ„Ž๐‘’ ๐‘™๐‘–๐‘›๐‘˜ ๐‘ค๐‘–๐‘™๐‘™ ๐‘๐‘’ ๐‘Ž๐‘ฃ๐‘Ž๐‘–๐‘™๐‘Ž๐‘๐‘™๐‘’ ๐‘œ๐‘›๐‘๐‘’ ๐‘ฆ๐‘œ๐‘ข ๐‘—๐‘œ๐‘–๐‘› ๐‘กโ„Ž๐‘’ ๐‘’๐‘ฃ๐‘’๐‘›๐‘ก
  • ๐‘ฆ๐‘œ๐‘ข ๐‘๐‘Ž๐‘› ๐‘Ž๐‘ ๐‘˜ ๐‘ž๐‘ข๐‘’๐‘ ๐‘ก๐‘–๐‘œ๐‘›๐‘  ๐‘๐‘ฆ ๐‘’๐‘–๐‘กโ„Ž๐‘’๐‘Ÿ ๐‘Ÿ๐‘Ž๐‘–๐‘ ๐‘–๐‘›๐‘” ๐‘Ž โ„Ž๐‘Ž๐‘›๐‘‘ ๐‘œ๐‘› ๐‘๐‘œ๐‘œ๐‘š, ๐‘œ๐‘Ÿ ๐‘กโ„Ž๐‘Ÿ๐‘œ๐‘ข๐‘”โ„Ž ๐‘†๐‘™๐‘–๐‘‘๐‘œ: https://sli.do/kotlin

This time, we have two local speakers - how cool it is to see our local community growing! Andrzej will present his solution to a well-known problem with enums in received payloads, so that we don't have to use plain strings to achieve forward-compatibility. Piotr will share his findings from research on Kotlin's approach to cross-platform mobile apps. We're waiting for you!

This meeting's talks:

๐—”๐—ป๐—ฑ๐—ฟ๐˜‡๐—ฒ๐—ท ๐—ญ๐—ฎ๐—ฏ๐—ผ๐˜€๐˜, "๐—™๐—ผ๐—ฟ๐˜„๐—ฎ๐—ฟ๐—ฑ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—ฎ๐˜๐—ถ๐—ฏ๐—น๐—ฒ ๐—ฒ๐—ป๐˜‚๐—บ๐˜€ ๐˜€๐—ฒ๐—ฟ๐—ถ๐—ฎ๐—น๐—ถ๐˜‡๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—ถ๐—ป ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป"
Thanks to the mandatory exhaustiveness of โ€˜whenโ€™ expressions in Kotlin, enums have become even more convenient to use than before, and they prevent us from writing erroneous code. However, enums donโ€™t work well with system forward-compatibility because they limit the set of possible values that we can send and receive in data payloads. This presentation will show you how we managed to reconcile exhaustiveness and forward-compatibility when deserializing enum values.

Andrzej is a senior Android developer who immediately fell in love with Kotlin 5 years ago when he started his career at Bright Inventions. He loves clean and testable code that is also easy to read and understand. After work, he enjoys gaming and reading Stanisล‚aw Lemโ€™s novels.

๐—ฃ๐—ถ๐—ผ๐˜๐—ฟ ๐—ฃ๐—ฟ๐˜‚๐˜€, "๐— ๐—ฒ๐—ฒ๐˜ ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป ๐— ๐˜‚๐—น๐˜๐—ถ๐—ฝ๐—น๐—ฎ๐˜๐—ณ๐—ผ๐—ฟ๐—บ ๐— ๐—ผ๐—ฏ๐—ถ๐—น๐—ฒ (๐—ž๐— ๐— )"
This talk will cover various topics around KMM, the initial setup, and my opinion about the SDK business values. During the talk, I will try to answer the following questions: What is the difference between KMM and other multiplatform solutions, like Flutter and React Native? Is this a good solution for your business? Why do we think it is a good decision for us? How does iOS read the shared module? How much code can we actually share? What are the most important libraries and what are they doing? Is KMM production-ready? What are the pros and cons of KMM?

Piotr Prus is a mobile technology enthusiast and Android Developer. Self-taught programmer with a degree in Civil Engineering. Trying to share knowledge and experience with the community by writing articles and speaking at conferences. The organizer of Google Developer Group 3City.

Photo of Tricity Kotlin User Group group
Tricity Kotlin User Group
See more events