Compose Multiplatform on iOS by: Sebastian Aigner and Nikita Lipsky

Поделиться
HTML-код
  • Опубликовано: 3 май 2023
  • Recording brought to you by American Express. americanexpress.io/kotlin-jobs
    An overview of the exciting present and future of Compose Multiplatform, including live demos and how to get started with the latest additions to the multiplatform UI framework built by JetBrains.
    This session is co-presented by Sebastian Aigner, Developer Advocate at JetBrains and Nikita Lipsky, Software Developer for Kotlin at JetBrains.
    Talk by: by: Sebastian Aigner and Nikita Lipsky
    #kotlinconf23 #kotlin #compose #KotlinConf
  • НаукаНаука

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

  • @PedroBarbosaRoman
    @PedroBarbosaRoman Год назад +31

    Awesome presentation! I'm very excited for what the future of Kotlin Multiplatform can bring! Keep it up!

  • @ChrisAthanas
    @ChrisAthanas Год назад +8

    I’ve been working with it for over a month and it’s good and can only get better

  • @santansarah
    @santansarah Год назад +8

    This is so cool, powerful, and exciting 🎸. It'll make multiplatform development so much easier. I can't wait to start trying this out; as soon as I finish up my current project.

  • @burle2128
    @burle2128 Год назад +3

    I‘m so hyped, I‘m watching the Video the second Time today. 🤩
    Sebastian is rightly excited about this Moment. I‘m sure this is going to be the next big thing in Mobile Development!

  • @Binizh23
    @Binizh23 Год назад +8

    History in the making.
    Glad to be part of it even if virtually

  • @kwakukarikari8095
    @kwakukarikari8095 Год назад +6

    Very satisfying video to watch

  • @vinsg_
    @vinsg_ Год назад

    Looking forward to this lecture!

  • @AntonArhipov
    @AntonArhipov Год назад +1

    Super-cool presentation!!!

  • @AlexBlack-xz8hp
    @AlexBlack-xz8hp Год назад +2

    I'm super excited about this! Though I do think it will probably not be used in my current project since we do want to maintain a native look on both platforms, but I love Compose a lot. I really would love to use this in some context.

  • @fmo17
    @fmo17 Год назад

    Awesome presentation 🎉

  • @ElVerdaderoAbejorro
    @ElVerdaderoAbejorro Год назад +9

    21:20 Choosing to use Skia is a mistake as you can't precompile shaders on iOS. Same problem Flutter had and that they solved it by using their own renderer. Also, no mention about UI that look and feel like iOS native UI... It will be hard for this to compete with Flutter.

  • @MagnoKellyFelipe
    @MagnoKellyFelipe 10 месяцев назад

    Can't wait to each new day be more productive using kotlin 😊

  • @user-ut2vr8ch1r
    @user-ut2vr8ch1r Год назад

    Awesome!

  • @pablovaldes6022
    @pablovaldes6022 Год назад

    Great Job 🎉

  • @islombeknishonboev2208
    @islombeknishonboev2208 Год назад

    👍Awesome!

  • @anisim
    @anisim Год назад

    WOW 😮

  • @freshtechtips
    @freshtechtips Год назад

    Even for alpha, a lot of thinga is missing, for example the navigation for compose

  • @Hoangdinhthangloi
    @Hoangdinhthangloi Год назад

    Great 🎉

  • @mohamedrejeb6595
    @mohamedrejeb6595 Год назад +2

    Is that Dash the Flutter mascot at 7:30 ? 😂

  • @ferg
    @ferg 8 месяцев назад +2

    Did I see a ripple on iOS?

  • @trocchiettoski
    @trocchiettoski Год назад +3

    A dream came true kotlin the new java

  • @galaxiegalaxie5003
    @galaxiegalaxie5003 11 месяцев назад

    Great content,is there any example where i can load mapkit on compose multiplatform😊, anybody please,thank you

  • @yuriibezhevets988
    @yuriibezhevets988 Год назад +6

    Very interesting. While flutter switches to use Impeller render on iOS (because of problems with shaders and overall performance), jetpack compose multi platform still use Skia render(and will have same issues that has flutter now?). If performance will be the same in comparison with flutter - what the reason to use jetpack compose multi platform? Impeller looks very promising and can be big win for flutter.

    • @danvilela
      @danvilela Год назад

      I think Impeller is new and still being battle tested. But since it is open source, maybe they can switch to Impeller in the future and leverage flutter history

    • @myselfhaveachannel1565
      @myselfhaveachannel1565 Год назад

      and what is the problem with skia? Android uses skia from version 1.0

    • @danvilela
      @danvilela Год назад

      @@myselfhaveachannel1565 on flutter they had ios jank

    • @myselfhaveachannel1565
      @myselfhaveachannel1565 Год назад +1

      It would be great if someone can do a performance comparison test.

    • @danvilela
      @danvilela Год назад

      @@myselfhaveachannel1565 they probably did. People said impeller really fixed ios jank. You can look it up

  • @tatavarthitarun2739
    @tatavarthitarun2739 Год назад +1

    Wow

  • @dangavrielov9627
    @dangavrielov9627 Год назад +1

    You have asked for community inputs about the future of the ui layer. But wouldn't it be the case that most of the community is comprised from kotlin and android developers? It seems kind of limiting with regards to the much needed ios development prespective
    Great talk though! :)

    • @ChrisAthanas
      @ChrisAthanas Год назад

      iOS devs already have their preferred solution. Better to ask people who are looking for cross platform solutions

  • @Ajajdh2
    @Ajajdh2 Год назад

    Even for alpha, the pefromance is very bad and it's really buggy and don't offer a way to change the system status bar

  • @venugopalreddy6618
    @venugopalreddy6618 Год назад

    Is this the end of native ios jobs??

  • @afixithei.V
    @afixithei.V Год назад +3

    Why do I feel like KMM is taking too long? Hopefully it's for the right reasons.

    • @jjhoninatan55sabadi
      @jjhoninatan55sabadi Год назад +1

      I think they will make something big and stable, not jsut for mobile, but for all plattaform, in way that you could choose going native or shared UI, or both of them.

    • @deepakbisht4957
      @deepakbisht4957 Год назад

      In my opinion they are doing things at a good pace...
      Experimental, alpha, beta and stable have small time gaps.

  • @bangonkali
    @bangonkali Год назад +7

    I think there is a bit of an overlap with flutter which also used skia in it's early days. I don't think flutter still uses skia nowadays though.
    However, I really like kotlin compared to dart. Personal preference. 😂
    It's just really interesting that kotlin being primarily used by Google's Android Compose now directly competes with flutter which is also sponsored by Google.
    I wonder if in the future firebase would also support Compose Multiplatform in the docs and code samples. I think this would be the time I can say I would really begin using it. It's obvious how to use firebase with compose for android but I'll wait for offical docs best practices when it comes to using most firebase libraries on compose for ios.
    Future looks interesting indeed. Good job KMM and compose Multiplatform team. 👍👍👍

    • @ChrisAthanas
      @ChrisAthanas Год назад +2

      Flutter paved the way but it will be crushed by KMM

    • @danvilela
      @danvilela Год назад

      Yeah, Im kinda tired of Flutter and dart so Im hyped to test this thing! But really funny that both comes from the same company indeed 😂

    • @suryapratap3043
      @suryapratap3043 Год назад

      @@ChrisAthanas I think you're wrong on this, flutter is quite stable today.

    • @ferdiangunawan1237
      @ferdiangunawan1237 11 месяцев назад

      @@ChrisAthanas no dude

  • @seanknowles9985
    @seanknowles9985 Год назад +2

    Is hot reload coming to Compose multiplatform?

    • @ChrisAthanas
      @ChrisAthanas Год назад

      Still requires a compiler step so no hot load yet

    • @seanknowles9985
      @seanknowles9985 Год назад +1

      @@ChrisAthanas so does flutter right?

    • @ChrisAthanas
      @ChrisAthanas Год назад

      @@seanknowles9985 yes flutter due to being an interpreted language does not require a compile step, similar to web development
      I'm hoping that somehow one day we can also skip the compilation step on Kotlin... I think it's possible and it's such an annoying bottleneck for mobile development

    • @seanknowles9985
      @seanknowles9985 Год назад +2

      @@ChrisAthanas C# blazor and Xamarin manage it somehow... That would be the next milestone to conquer. Now that compose for iOS is coming out the only thing left it feels is hot reload/fast refresh, then its perfect.

    • @noelgomile3675
      @noelgomile3675 Год назад

      @@ChrisAthanas I'm lost on what you mean by Flutter being interpreted. Flutter utilises Dart which is not an interpreted language at all.

  • @mirniyazulhaque3583
    @mirniyazulhaque3583 Год назад +1

    Can we do Multi-platform development in Linux ?

    • @noobadao
      @noobadao Год назад +1

      yes

    • @deepakbisht4957
      @deepakbisht4957 Год назад +1

      Of course but you still need a Mac for the iOS part...

    • @ChrisAthanas
      @ChrisAthanas Год назад

      Yes but not ios

    • @noobadao
      @noobadao Год назад

      @@ChrisAthanas yes, for IOS developments, requires the use of MAC.

  • @RajeshJaswalPune
    @RajeshJaswalPune Год назад

    So, Its Compose Multiplatform or Kotlin Multiplatform ???

    • @alexzaitsevp
      @alexzaitsevp Год назад +1

      Both. CM is a Ui framework. KMM is a mobile development framework which is a subset of KM.

  • @philipdukhov2292
    @philipdukhov2292 Год назад

    You can compare if the performance is мусор or not 😁

  • @andy_lamax
    @andy_lamax Год назад

    heck of talk

  • @Antiorganizer
    @Antiorganizer Год назад +4

    Oh, Apple is so going to hate this and will want to stop this, I'm sure.
    Anyway... the cool thing is that part of the time developing, can be spend by targeting desktop. Much quicker development cycle and better debugging.
    Then once you need to leverage phone specific features, to go there. And you can go back to desktop when you need to fix UI and core business logic. Keep 2 (or 3) IDEs open and use Alt-tab. (and buy some extra memory, lol)

    • @SanusiAdewale
      @SanusiAdewale Год назад

      I still dont know what apple is waiting for, they can use this same approach with SwiftUI or build a framework that can build cross-platform apps

    • @Antiorganizer
      @Antiorganizer Год назад +3

      @@SanusiAdewale Apple has only ever been interested in protecting their garden. The JVM was a huge threat to keeping things unique on their devices, they they outlawed it. They intentionally pick different languages like objective c and swift. They do use C++ though, but that's the ultimate portable low level language that you can't kill it so might as well leverage it.

    • @_____case
      @_____case Год назад +1

      Flutter and React Native apps run on iOS already. Still requires macOS + Xcode to build the iOS targets, so it's no skin off Apple's back to allow these frameworks to exist.

    • @Antiorganizer
      @Antiorganizer Год назад +1

      @@_____case I'll have to look at react native again, but flutter has these problems where at times it's sluggish, has various visual bugs, and is very slow to start.
      The Compose Multiplatform prospect looks a lot better! You get a traditional J2D like structure including transformations, and Kotlin coding and this smart refresh mechanism. It's starting to look really very promising! Plus you get to code in Kotlin. I mean come on, what's not to like? And using IntelliJ? That's were I'll be !

    • @noelgomile3675
      @noelgomile3675 Год назад

      @@Antiorganizer I'm sure someone using Swift won't be interested to begin with. As you've shown from your own comment, people prefer using the things they are familiar with. To even use something different from your preferred solution is a miracle in of itself. So basically even with this, Kotlin developers will love it, Swift developers will just be meh and so will the Dart devs. Everyone picks their poison and are used to how it benefits or does not benefit them and how to go about those situations.

  • @yapet
    @yapet 11 месяцев назад +2

    Why are we making another flutter tho? This has a lot of problems flutter has, and a lot of ones flutter tried to solve already.
    We are going to have to reinvent accessibility once again. On android it is fine, since, from what I know, it uses existing built-in android ui infrastructure.
    And on the web it is a non-starter. Just like flutter. Shipping a single canvas element and 3 megs worth of renderer/stdlib onto the client is a dogshit approach.
    Perf’s gonna be jank af. Accessibility thrown out of the water. Every single aspect of native platform would have to be reimplemented and shipped inside of the binary.
    Applications going to feel like middle-ground between all of the platforms (akin to the ‘ol java swing APIs). Stretched mobile elements on web/desktop. Androidisms on iOS. Disregard of platform human interface guidelines on macOS, etc.
    People argue over DX of native vs dart/flutter vs js/react-native vs kotlin/compose. For me it’s kinda same-ish. Neither one has terrible DX. Neither language is dogshit. Neither language is breathtaking to work in (okay, I kinda do like Swift’s language design, even though there are subtle issues). I’m sorry, but the type system of kotlin / lack of pattern matching / absence of value types / evolution speed makes it reside solely in a “barely a better java” category. Nothing too exciting. Still a nice language tho, arguably better than dart.
    And after all of that we aren’t even getting out-of-app-store app updates like react native does, since shipping compiled binaries over-the-air is a no-go on a lot of platforms (iOS, android, PS4/5, XBox One/Series, etc.)
    This is a fine way to do android and maybe windows apps. Might be better than shipping electron on desktop.
    If your app is already “canvas heavy”, sure, this is okay, I guess. But I can count on my own two hands the amount of such apps.

  • @user-ih7lg3xu7c
    @user-ih7lg3xu7c Год назад

    Бля, Никита, чё с акцентом. Себастьян стоит лыбится вначале, когда ты говоришь. Я бы тоже ржал, если бы рядом был)))
    Как будто из клюквенных фильмов вылез ты)

  • @codeforandroid
    @codeforandroid Год назад +2

    very interesting

  • @martinkompan439
    @martinkompan439 Год назад

    skip to 10:00 ...

  • @martinkompan439
    @martinkompan439 Год назад

    asking to clap is kind of cheap.