I Bet You DON'T Know These 3 Performance Optimizations for your Jetpack Compose UI

Поделиться
HTML-код
  • Опубликовано: 8 ноя 2022
  • When your Jetpack Compose UI isn't running as smoothly as you'd like, you need to optimize something. In this video I'll show you 3 ways to do this you might not think about at first.
    ⭐ Get certificates for your future job
    ⭐ Save countless hours of time
    ⭐ 100% money back guarantee for 30 days
    ⭐ Become a professional Android developer now:
    pl-coding.com/premium-courses...
    💻 Let me be your mentor and become an industry-ready Android developer in 10 weeks:
    pl-coding.com/drop-table-ment...
    Subscribe to my FREE newsletter for regular Android, Kotlin & Architecture advice!
    pl-coding.com/newsletter
    Join this channel to get access to perks:
    / @philipplackner
    Get the source code for this video here:
    github.com/philipplackner/Com...
    Join my Discord server:
    / discord
    Regular programming advice on my Instagram page: / _philipplackner_
    Checkout my GitHub: github.com/philipplackner
    You like my free content? Here you can buy me a coffee:
    www.buymeacoffee.com/philippl...

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

  • @abada-s
    @abada-s Год назад +1

    Key function is very helpful, thanks for this advanced video

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

    All the things that were used to be ignored in View framework using Kotlin are now starting to become integral part of EVERY steps in compose world, even the simplest thing like inlining function will save you tons of headaches in compose which arent that significant in the View Framework before

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

    This was amazing, please make more videos like this!!!!

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

    this video was awesome
    well done Philipp

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

    Thanks for this very useful information. I have a problem with first on performance issue! 👍👍👍

  • @alirezafaraji
    @alirezafaraji 6 месяцев назад

    this helped me A LOT. ty

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

    You are the best, keep up the work!

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

    Thank you very very much for such a USEFUL & CONCEPTUAL VIDEO 🙏🙏🙏

  • @vilmarcabanero2500
    @vilmarcabanero2500 Год назад +13

    You're amazing Philipp! I'm at the last 4 chapters of the book I'm reading. About Jetpack and clean architecture using MVVM. What you're teaching is the same to what I'm reading! Just amazing!

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

      Happy to help!

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

      What is the book title?

    • @vilmarcabanero2500
      @vilmarcabanero2500 Год назад +11

      @@jarkow Kickstart Modern Android Development with Jetpack and Kotlin: Enhance your applications by integrating Jetpack and applying modern app architectural concepts
      Author(s): Catalin Ghita
      Publisher: Packt Publishing
      Year: 2022
      I suggest you read that. Easy to follow and informative.

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

      @@vilmarcabanero2500 Thanks :)

  • @manusarangal449
    @manusarangal449 6 месяцев назад

    Thank you Philipp!

  • @Rafael-hk9pg
    @Rafael-hk9pg Год назад +2

    Great video. Wish there was an Android Studio plugin that could detect these code smells

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

    Awesome, hope in black friday to buy some course of you

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

    Wow Philipp, amazing video.. i have to open a refactoring ticket now :D

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

    allright, the problem react faced, the jetpack compose are also need to face~~

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

    Thank you so much❤

  • @abada-s
    @abada-s Год назад +3

    Immutable classes are not stable , what all about them is that we cannot change its properties, so when we want to have a mutable stable version of them we wrap them with State Object which is a Stable class that have one property called value

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

    Just finished your Jetpack Compose playlist. Very well explained and thanks for sharing.

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

    9:28 you can put the remember inside the parameter directly instead, it will work

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

    Your efforts are great ❤❤

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

    Thank you!

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

    @Philipp, just want to share about movableContent, seems like it will also a good thing to learn for compose performance

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

    I wonder what is scope where key can be applied to skip reordering recomposition. I alway thought it only will work if used in the same 'call site'. But here you used it even across different layouts. I guess Row, Column and Box are inline for this to work, but I'm not entirely sure

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

    Wow, it was amazing

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

    Hello Phillipp, how do you see the market for Jetpack Compose?. I'm thinking of starting to learn it.

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

    We only need to create mapper classes if we're doing cross-module communication right? Also any way of detecting that as well?

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

    You are the best
    Thank you

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

    BTW, thank you again @Philipp.

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

    What's the reason for method reference to be stable even if the class it belongs to is unstable?

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

    Can I use Android library on desktop compose??

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

    Please, more KMM videos! 👍

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

      He have KMM course so I doubt that he will make more videos about that until his course reach specific sales goal

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

    I have a screen where is loaded (using an AsyncImage) a background image. The image is a local image loaded from the resources. Why does everytime recomposed the Image even if it is always the same image?

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

    I think my comment was deleted by the Security or Chat/Spam Bot w/e, I will rephrase it differently, this is a very good topic that was also presented a couple of weeks ago at an android conference that I also attended. Speakers were UI devs from a very well-known "Big Tech Company" which was bought by Elon M. recently :)

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

    Mantaaapp !!

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

    If we are already discussing improvements, an Idea for a new video, replace try catch with Arrow (Either)

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

    Awesome

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

    bro you can fetch all pdf files in recyclerview using media store please please create a video on that soon please

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

    Brilliant

  • @rajushingadiya2860
    @rajushingadiya2860 7 месяцев назад

    amazing

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

    Does anyone knows that is there any issue to use @composable inside a class?

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

      No issues, but I also don't see a reason to do that

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

      @@PhilippLackner thank you philipp, my reason to use it that way is to make sure view structures implemented from a same interface

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

    You posted some kmm videos so I assume you know ios to some extent, maybe you could make a ios for android devs crash course :D

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

    at 6:38 button recomposed 18 times , does anyone knows why?

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

    Please create one more tutorial with firebase

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

    Hello, which emulator you use?

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

      He's using Vysor to stream the screen from a hardware phone. Latest versions of Android studio do this now built-in to the IDE starting with AS Electric Eel.

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

    👍🏻

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

    209th...Thanks Philipp

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

    Solitions for problem #2 are kinda meh, now imagine u have to create the whole bunch of useless domain data classes together with converter methods and u keep it grow for, lets say 1-2 years. All you do is stacking up the pile of technical depth, unless the project has some real need for these module/domain specific class defitions. Another option would be to mark your data-classes (if they belong to you, and you can suplement your module with dependencies) with @Stable (or @Immutable). That should do the trick, just make sure, you understand, what u are doing.

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

      To mark them as immutable or stable would require adding compose to the module though and then it's not a problem anymore 😅

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

    I already know all of this optimizations, thumbs down coz u said "I Bet You DON'T Know These 3 Performance Optimizations for your Jetpack Compose UI"