Kotlin Multiplatform vs Flutter: Which should we use?
ฝัง
- เผยแพร่เมื่อ 2 ต.ค. 2024
- Making development across platforms easier for developers
developers.goo...
FlutterNinjas TOKYO 2024
flutterninjas.dev
■LinkedIn
/ kei-fujikawa
■X
/ kboy_silvergym
■Instagram
/ kboy_silvergym
■Flutter Daigaku (for Japanese now)
flutteruniv.com
■Japanese channels
/ @kboy
/ @kboy1031
/ @flutteruniv
#googleio2024 #flutter #kotlinmultiplatform
I should have mentioned about the Compose multi platform. It’s the kotlin framework for making other platform UI such as iOS.
But even there is, it’s still alpha for iOS and it can’t stand without writing native code basically , I heard.
Beta released for iOS a couple days back with the release of Kotlin 2.0 and k2 compiler.
Well you got the point. You have to learn swift.
btw, it is currenly in beta, also we can write all the code in compose instead of swiftUI
If you’re planning and consider this upcoming project to be reasonable and beneficial to migrate to native UI, I would really suggest looking into KMP + Compose UI for the beginning.
Then when time will come, it will be much easier to rewrite only UI part in something like SwiftUI for apple devices. When switching to native UI from Flutter is basically a full rewrite of the application.
You can also rewrite one screen, or even part of the screen to use native SwiftUI component, when using KMP + Compose UI, which gives you more flexibility.
You can use compose multiplatform for a common UI in KMP
Kotlin Multiplatform Compose is out which takes care of the UI. It's in alpha. What's your opinion on Compose?
Flutter made by google, unfortunately kotlin is prefered as a recommendation language for android...
Do you think its ironic?
Bro haven't heard about Compose Multiplatform! 😂 It's in beta for iOS and alpha for web. Stable for desktop and Android.
You can use compose multiplatform for a common UI in KMP
Well explained. But performance wise KMP is better ????
For me, it was simple. I don't like Kotlin or Java, but I need an app. I escape with Flutter and choose another target, same code base, no ridiculous toolchain or deployment.
I was about to go into flutter until I found out the initial release build is 18MB, and I haven't done anything yet. Comparing to native (just kotlin, not KMP) which "only" 6MB. The app size is crucial in my opinion. Did I miss something?
Thanks for the explanation. Finally someone that tells clearly the difference between the two.
In my opinion, the most important thing is that KMP builds close to native, while flutter doesn't. So its Native -> KMP -> Flutter -> React Native -> Cordova, Xamarin etc.
That’s good point!
you can write crticial parts of your KMP in native - its like write most in "shared" or "common" (if in compose multiplatform) folder
but then you can just do a couple of files in the native folder and it will use that code for that part of the app for that platform
You still have to write code for both platforms so no
@@meek6836 With Compose Multiplatform you don't have to, aside from some basic glue code that is usually generated for you.
And the cool thing is, Compose inherits the same philosophy as KMP itself, allowing you to embed native views within Compose UI code, and vice-versa, building on top of KMP's native interop support. One cool benefit of this is that you can migrate your UI from SwiftUI / Android Views / Swing to Compose gradually, and vice versa as well (which can be useful if you have an iOS app that's successful enough and you want a more native look-and-feel, migrating to SwiftUI from Compose, while keeping all business logic in Kotlin).
@@meek6836 So, KMP is not purely cross - platform. Right ??
❤Flutter
KMP is flutter killer, maybe 👀😂
Nah thanks but i already know Kotlin and Compose so i don't want to waste my time on a new language and framework
But if we're using Compose Multiplatform, it's similar to Flutter. Right? Because Compose Multiplatform shares UI, too.
Still developer experience in Flutter is better I think
@@kei_tokyo_japan I agree with you.
Compose Multiplatform iOS support is still in Alpha and it's still rough. Compose Multiplaform just added navigation / life cycle support, in experimental as well. Its still not on the same level as production ready that Flutter is.
The answer is simple, if u're a native developer, especially if u're an Android native dev, then it is better for u and ur company to use KMP, at least for sharing the business logic. Next step is Compose for building UI.
But if u're more into web dev, so Flutter is your choice
@@kei_tokyo_japan I disagree. The class based approach of Flutter is the worst design decision. You need 2 classes for state.
I am developer which used to KMP and it is not only business but also UI and even database using Ktor. Who sad that KMP does not share UI? Then what I build for my desktope application using kotlin and other many Ios apps?
Do you use compose?
Yes when you talk about KMP actually it is the same thing as Compose Multiplatform. Several month ago it was hard to build applications for IOS but now it is available. But only web in alpha version.
KMM is new boss better than react flutter
Compose multiplatform doe
do you heard about compose multi platform😌
the thing is, why would i go flutter for same ui, when compose is alredy coming for multiplataform
It's not
@@dangerosa01 its gonna come, and gesu what ViewModel are now supported for CMP which is cool, also room database is migrated, the android team in google are working indirectly with jetbrains to migrate compose libraries to be used in CMP.
Plus kotlin outplays dart on features and oh god the DSL in kotlin i can write about it all day,
I'm flutter developer and i have prior experience with android let me tell you that KMP/CMP has the potential to compete with flutter in every aspect.
@@dangerosa01 it is
Hi, good explanation. In terms of performance which one would be best? In terms of future, will flutter be supported by Google since it is adopting Kotlin ?
Flutter❤
looking for js everywhere chad to jump on this clip. react, react native, node!!!
Dude, we'r still waiting for that flutter crash course 😅
Oh I didn’t know that😮
swift or kotlin ?
There is compose multiplatform for sharing UI across all the different platform
Is flutter demand in Japan?
I think relatively good
Thank bro. You made it clear ❤
What we learn in 2024,
Totalmente de acuerdo, muy buena tu explicación, cada uno tiene sus campos y para los startups flutter es la merjo opcion
Please provide subtitles for those who can't hear your accent.
If you start your own company as solopreneur, what are the costs? is it doable to put some effort after my 9-5?
Just starting a company costs like 1000usd
@@kei_tokyo_japan What's the catch?
@@Uein if you earn money over 70,000, making company is better for your tax problem. So I don’t think there’re so many bad things.
Sometime making some documents as a company is annoying. But that’s it.
Where are you from? Im looking for a partner to start a software dev startup
@@harryzaynnaz-lo7fgim from Germany
Would you like to talk about compose multi-platform
As always React Native 😂
React Native is trash 🙃
@@MrlegendOr Why should it be?
Because it comes from trash
@@jeeva3984 Thats direspecting anyone working on RN or the RN ecosystem
@@jeeva3984Thats disrepecting anyone working on RN or the RN ecosystem
That is a good explanation! And from an official google support perspective it is like that. Bear in mind, that there is also Compose Multiplatform that works on top of KMP which enables you to share UI just like Flutter, but that technology for iOS and Web is still, at the moment, in alpha or experimental respectively
its not in alpha - its already at v 1.6 - works perfectly on android, desktop, linux - some problems with Apple (there is always problems with Apple) - but def. production ready. Oh, also web is in alpha - but who cares about that - use PHP, Go, Js for web - they are designed for it.
@@leopet6815 Well, JetBrains announced *yesterday* Compose Multiplatform for iOS is in beta and web is in alpha now, so I guess you are right 😂
Compose Multiplatform shares UI like Flutter and it is very available for desktope and IOS, and in alpha version for web since 3 - 4 days😮
Your English is very good! Just maybe try practicing speaking. I know it is hard for the Japanese :)
0:18 You meant May 15th, right?
Yes May. 😂
:)
React Native
Darn. I wont be in Japan until July.
Darn. why don’t you come earlier ?
@@kei_tokyo_japan I have to be in Vietnam for 3 weeks in mid-June.
Flutter ❤
Can anyone join your flutter uni?
Yes. But not everyone can speak English so far because basically almost all people are Japanese. But I will support you.
If Many demand from foreigners happens , I will optimize that for English speakers
@kei_tokyo_japan thank you, I have a little over 1year of experience working on flutter so if there is a way I can contribute and learn from this uni would be helpful for my learning experience.
Neither - C# FTW
of course kmp is the future, stop using flutter from now
Haha Flutter >>> KMP
This will be maybe actual in future, but who knows. We will see.
KMP or RN but never Flutter
Rn? 💀
React Native
Why not flutter?
not fluter because of syntax? xD