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

  Рет қаралды 31,671

Philipp Lackner

Philipp Lackner

Жыл бұрын

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 Жыл бұрын
Key function is very helpful, thanks for this advanced video
@maximooze3196
@maximooze3196 Жыл бұрын
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 Жыл бұрын
This was amazing, please make more videos like this!!!!
@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
@capitalwww
@capitalwww Жыл бұрын
this video was awesome well done Philipp
@SreejiM
@SreejiM Жыл бұрын
Thank you very very much for such a USEFUL & CONCEPTUAL VIDEO 🙏🙏🙏
@meitarturgeman1559
@meitarturgeman1559 Жыл бұрын
You are the best, keep up the work!
@manusarangal449
@manusarangal449 6 ай бұрын
Thank you Philipp!
@LightBueno
@LightBueno Жыл бұрын
Just finished your Jetpack Compose playlist. Very well explained and thanks for sharing.
@gori_maheswari8994
@gori_maheswari8994 Жыл бұрын
Thank you so much❤
@makzimalist
@makzimalist Жыл бұрын
Wow Philipp, amazing video.. i have to open a refactoring ticket now :D
@yexia4129
@yexia4129 Жыл бұрын
allright, the problem react faced, the jetpack compose are also need to face~~
@Rafael-hk9pg
@Rafael-hk9pg Жыл бұрын
Great video. Wish there was an Android Studio plugin that could detect these code smells
@abada-s
@abada-s Жыл бұрын
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
@vilmarcabanero2500
@vilmarcabanero2500 Жыл бұрын
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 Жыл бұрын
Happy to help!
@jarkow
@jarkow Жыл бұрын
What is the book title?
@vilmarcabanero2500
@vilmarcabanero2500 Жыл бұрын
@@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 Жыл бұрын
@@vilmarcabanero2500 Thanks :)
@yehor_zhyr
@yehor_zhyr Жыл бұрын
Thank you!
@trocchiettoski
@trocchiettoski Жыл бұрын
Awesome, hope in black friday to buy some course of you
@khaledalibibooo7572
@khaledalibibooo7572 Жыл бұрын
Your efforts are great ❤❤
@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?
@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
@maximooze3196
@maximooze3196 Жыл бұрын
@Philipp, just want to share about movableContent, seems like it will also a good thing to learn for compose performance
@renanzumas4422
@renanzumas4422 Жыл бұрын
Hello Phillipp, how do you see the market for Jetpack Compose?. I'm thinking of starting to learn it.
@dmytroberezhnyi717
@dmytroberezhnyi717 Жыл бұрын
Wow, it was amazing
@mustafaammar551
@mustafaammar551 Жыл бұрын
You are the best Thank you
@ilaletopisnyj
@ilaletopisnyj Жыл бұрын
What's the reason for method reference to be stable even if the class it belongs to is unstable?
@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?
@BashPSK
@BashPSK Жыл бұрын
Can I use Android library on desktop compose??
@agungwatanabe318
@agungwatanabe318 Жыл бұрын
9:28 you can put the remember inside the parameter directly instead, it will work
@leandropnto
@leandropnto Жыл бұрын
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
@maximooze3196
@maximooze3196 Жыл бұрын
BTW, thank you again @Philipp.
@moldovanpeter5123
@moldovanpeter5123 Жыл бұрын
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 Жыл бұрын
Mantaaapp !!
@mkjvd
@mkjvd Жыл бұрын
Awesome
@shahar19971
@shahar19971 Жыл бұрын
If we are already discussing improvements, an Idea for a new video, replace try catch with Arrow (Either)
@gofudgeyourselves9024
@gofudgeyourselves9024 Жыл бұрын
Brilliant
@rajushingadiya2860
@rajushingadiya2860 7 ай бұрын
amazing
@dhruvguru4506
@dhruvguru4506 Жыл бұрын
bro you can fetch all pdf files in recyclerview using media store please please create a video on that soon please
@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
@user-qd6kq6hk6e
@user-qd6kq6hk6e Жыл бұрын
at 6:38 button recomposed 18 times , does anyone knows why?
@PhilippLackner
@PhilippLackner Жыл бұрын
The ripple animation
@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
@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 Жыл бұрын
👍🏻
@bipinbharti6540
@bipinbharti6540 Жыл бұрын
Please create one more tutorial with firebase
@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 Жыл бұрын
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"
Should You Use Compose State or StateFlow in Your ViewModels?
13:59
Philipp Lackner
Рет қаралды 74 М.
Пранк пошел не по плану…🥲
00:59
Саша Квашеная
Рет қаралды 7 МЛН
НРАВИТСЯ ЭТОТ ФОРМАТ??
00:37
МЯТНАЯ ФАНТА
Рет қаралды 8 МЛН
Performance Optimization with @Stable and @Immutable in Jetpack Compose
16:47
Bottom Nav Bar #03 | Material 3 | Jetpack Compose
12:21
Compose Campus | Code-Along
Рет қаралды 9 М.
You're Collecting Your Flows Wrong In Compose | THIS Is Why
11:35
Philipp Lackner
Рет қаралды 27 М.
ViewModels & Configuration Changes - Android Basics 2023
18:46
Philipp Lackner
Рет қаралды 110 М.
Gestures in Jetpack Compose
31:33
Android Developers
Рет қаралды 22 М.