Hi everyone. our company is adopting Kotlin Multip...
# multiplatform
o
Hi everyone. our company is adopting Kotlin Multiplatform (KMP) to rewrite the business logic for our iOS and Android applications. We’re debating between using Room (via the KMP wrapper/multiplatform libraries) and SQLDelight for our shared data persistence layer. Which one would you recommend for a medium-to-large scale KMP project, and why? Specifically, we are looking for insights on: 1. Ease of integration with KMP (setup and platform-specific dependencies). 2. Performance and suitability for complex queries. 3. Development speed and maintenance overhead.
d
Go with SQLDelight. Room shows performance differences between Android and iOS, and when comparing both libraries, SQLDelight performs better in almost all test scenarios I’ve tried. However, if your app doesn’t handle a large amount of data, the difference is negligible. In any case, SQLDelight is currently more mature for KMP than Room KMP.
i
Most importantly, it's free of Google so it wont be randomly killed off and they're generally transparent about future work with SQLDelight.
h
I use Room (an old version) in my project. Out project is medium scale project. You can look at the issue I have and explained here.