Kotlin Multiplatform vs Flutter: Which should we use?

Поделиться
HTML-код
  • Опубликовано: 27 сен 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

Комментарии • 101

  • @kei_tokyo_japan
    @kei_tokyo_japan  4 месяца назад +9

    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.

    • @raja_uma1r
      @raja_uma1r 4 месяца назад +5

      Beta released for iOS a couple days back with the release of Kotlin 2.0 and k2 compiler.

    • @jackeblan
      @jackeblan 3 месяца назад

      Well you got the point. You have to learn swift.

    • @mubaraknative
      @mubaraknative 3 месяца назад +1

      btw, it is currenly in beta, also we can write all the code in compose instead of swiftUI

    • @senk0n
      @senk0n 2 месяца назад +1

      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.

  • @phevab
    @phevab 3 дня назад +2

    You can use compose multiplatform for a common UI in KMP

  • @TN-kg2lv
    @TN-kg2lv 4 месяца назад +16

    Kotlin Multiplatform Compose is out which takes care of the UI. It's in alpha. What's your opinion on Compose?

  • @SoulExpension
    @SoulExpension 2 месяца назад +4

    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.

  • @UTJK.
    @UTJK. 4 месяца назад +7

    Thanks for the explanation. Finally someone that tells clearly the difference between the two.

  • @georgikopchev1739
    @georgikopchev1739 4 месяца назад +13

    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.

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +1

      That’s good point!

    • @leopet6815
      @leopet6815 4 месяца назад +2

      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

    • @meek6836
      @meek6836 4 месяца назад +1

      You still have to write code for both platforms so no

    • @HoussamElbadissi
      @HoussamElbadissi Месяц назад

      @@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).

    • @ajaykotiyal427
      @ajaykotiyal427 15 дней назад

      @@meek6836 So, KMP is not purely cross - platform. Right ??

  • @ajaykotiyal427
    @ajaykotiyal427 15 дней назад +2

    Well explained. But performance wise KMP is better ????

  • @raja_uma1r
    @raja_uma1r 4 месяца назад +7

    Bro haven't heard about Compose Multiplatform! 😂 It's in beta for iOS and alpha for web. Stable for desktop and Android.

  • @VladimirDjokic
    @VladimirDjokic 4 месяца назад +6

    ❤Flutter

  • @AWNHACKS
    @AWNHACKS 4 месяца назад

    Thank bro. You made it clear ❤

  • @iopyrb
    @iopyrb 3 месяца назад +2

    KMP is flutter killer, maybe 👀😂

  • @vishwam8632
    @vishwam8632 3 месяца назад

    There is compose multiplatform for sharing UI across all the different platform

  • @stanleyillidge6920
    @stanleyillidge6920 4 месяца назад

    Totalmente de acuerdo, muy buena tu explicación, cada uno tiene sus campos y para los startups flutter es la merjo opcion

  • @바오-c3p
    @바오-c3p 4 месяца назад +4

    But if we're using Compose Multiplatform, it's similar to Flutter. Right? Because Compose Multiplatform shares UI, too.

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +3

      Still developer experience in Flutter is better I think

    • @바오-c3p
      @바오-c3p 4 месяца назад

      @@kei_tokyo_japan I agree with you.

    • @joseph-montanez
      @joseph-montanez 4 месяца назад +1

      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.

    • @romanpavliuk2301
      @romanpavliuk2301 4 месяца назад +5

      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

    • @acopier
      @acopier 2 месяца назад

      @@kei_tokyo_japan I disagree. The class based approach of Flutter is the worst design decision. You need 2 classes for state.

  • @jcolindres001
    @jcolindres001 4 месяца назад +1

    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 ?

  • @JeudryPeñaPeña
    @JeudryPeñaPeña 4 месяца назад +2

    the thing is, why would i go flutter for same ui, when compose is alredy coming for multiplataform

    • @dangerosa01
      @dangerosa01 4 месяца назад

      It's not

    • @mahmoudalkateb2008
      @mahmoudalkateb2008 4 месяца назад

      ​@@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.

    • @acopier
      @acopier 2 месяца назад

      @@dangerosa01 it is

  • @mannanabbasi9325
    @mannanabbasi9325 2 месяца назад

    What we learn in 2024,

  • @datadriveAshura
    @datadriveAshura 4 месяца назад +1

    Dude, we'r still waiting for that flutter crash course 😅

  • @HanifShaikh-w3e
    @HanifShaikh-w3e 4 месяца назад +1

    do you heard about compose multi platform😌

  • @Vlad-hl1gy
    @Vlad-hl1gy 4 месяца назад +1

    Flutter❤

  • @treksis
    @treksis 4 месяца назад

    looking for js everywhere chad to jump on this clip. react, react native, node!!!

  • @mic9969
    @mic9969 3 месяца назад +1

    KMM is new boss better than react flutter

  • @jimmywicker3698
    @jimmywicker3698 4 месяца назад +1

    Is flutter demand in Japan?

  • @walterlebzax9585
    @walterlebzax9585 Месяц назад +1

    Please provide subtitles for those who can't hear your accent.

  • @ArisAris-fs1ip
    @ArisAris-fs1ip 4 месяца назад +1

    If you start your own company as solopreneur, what are the costs? is it doable to put some effort after my 9-5?

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +2

      Just starting a company costs like 1000usd

    • @Uein
      @Uein 4 месяца назад

      @@kei_tokyo_japan What's the catch?

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +2

      @@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.

    • @harryzaynnaz-lo7fg
      @harryzaynnaz-lo7fg 4 месяца назад

      Where are you from? Im looking for a partner to start a software dev startup

    • @91Canjok
      @91Canjok 4 месяца назад

      ​@@harryzaynnaz-lo7fgim from Germany

  • @SV-jy4kk
    @SV-jy4kk 4 месяца назад

    0:18 You meant May 15th, right?

  • @Steveiisler
    @Steveiisler 4 месяца назад

    :)

  • @JakobRossner-qj1wo
    @JakobRossner-qj1wo 4 месяца назад +26

    As always React Native 😂

    • @MrlegendOr
      @MrlegendOr 4 месяца назад +7

      React Native is trash 🙃

    • @JakobRossner-qj1wo
      @JakobRossner-qj1wo 4 месяца назад +1

      @@MrlegendOr Why should it be?

    • @jeeva3984
      @jeeva3984 4 месяца назад +4

      Because it comes from trash

    • @JakobRossner-qj1wo
      @JakobRossner-qj1wo 4 месяца назад

      @@jeeva3984 Thats direspecting anyone working on RN or the RN ecosystem

    • @JakobRossner-qj1wo
      @JakobRossner-qj1wo 4 месяца назад

      ​@@jeeva3984Thats disrepecting anyone working on RN or the RN ecosystem

  • @Dipj01
    @Dipj01 4 месяца назад +1

    React Native

  • @bbqchickenrobot3
    @bbqchickenrobot3 4 месяца назад

    Neither - C# FTW

  • @justafreak15able
    @justafreak15able 4 месяца назад +1

    KMP or RN but never Flutter

  • @dxvfdfx
    @dxvfdfx 2 месяца назад +2

    of course kmp is the future, stop using flutter from now

    • @hariofc
      @hariofc Месяц назад

      Haha Flutter >>> KMP

    • @subyk6046
      @subyk6046 Месяц назад

      This will be maybe actual in future, but who knows. We will see.

  • @andreasrichman5628
    @andreasrichman5628 23 дня назад +2

    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?

  • @pablovaldes6022
    @pablovaldes6022 9 часов назад

    Nah thanks but i already know Kotlin and Compose so i don't want to waste my time on a new language and framework

  • @lmarkrol
    @lmarkrol Месяц назад +1

    Flutter made by google, unfortunately kotlin is prefered as a recommendation language for android...
    Do you think its ironic?

  • @NoPainInLife
    @NoPainInLife 4 месяца назад +2

    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?

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад

      Do you use compose?

    • @NoPainInLife
      @NoPainInLife 4 месяца назад

      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.

  • @ManchesterAndroid
    @ManchesterAndroid 4 месяца назад +2

    Compose multiplatform doe

  • @AyushKarki-pb7xc
    @AyushKarki-pb7xc 4 месяца назад +1

    swift or kotlin ?

  • @neilord
    @neilord 4 месяца назад +4

    Your English is very good! Just maybe try practicing speaking. I know it is hard for the Japanese :)

  • @usmanAli-hw5xu
    @usmanAli-hw5xu 4 месяца назад

    Flutter ❤

  • @PedroBarbosaRoman
    @PedroBarbosaRoman 4 месяца назад +2

    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

    • @leopet6815
      @leopet6815 4 месяца назад +3

      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.

    • @PedroBarbosaRoman
      @PedroBarbosaRoman 4 месяца назад

      @@leopet6815 Well, JetBrains announced *yesterday* Compose Multiplatform for iOS is in beta and web is in alpha now, so I guess you are right 😂

    • @NoPainInLife
      @NoPainInLife 4 месяца назад +2

      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😮

  • @saiphaneeshk.h.5482
    @saiphaneeshk.h.5482 4 месяца назад

    Can anyone join your flutter uni?

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +3

      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

    • @saiphaneeshk.h.5482
      @saiphaneeshk.h.5482 4 месяца назад

      @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.

  • @vigneshe3466
    @vigneshe3466 4 месяца назад

    Would you like to talk about compose multi-platform

  • @Uein
    @Uein 4 месяца назад

    Darn. I wont be in Japan until July.

    • @kei_tokyo_japan
      @kei_tokyo_japan  4 месяца назад +1

      Darn. why don’t you come earlier ?

    • @Uein
      @Uein 4 месяца назад

      @@kei_tokyo_japan I have to be in Vietnam for 3 weeks in mid-June.