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!
@@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.
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
Amazing content! Did not get it before but now that I got a performance problem where I work, it helped me to understand the issue. I'm doing MVI and I have a function that executes actions on the view model with lambdas and was generating recomposition :) Thanks Philipp
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
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 :)
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?
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
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.
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.
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!
Happy to help!
What is the book title?
@@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.
@@vilmarcabanero2500 Thanks :)
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
Amazing content! Did not get it before but now that I got a performance problem where I work, it helped me to understand the issue. I'm doing MVI and I have a function that executes actions on the view model with lambdas and was generating recomposition :) Thanks Philipp
Key function is very helpful, thanks for this advanced video
allright, the problem react faced, the jetpack compose are also need to face~~
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
This was amazing, please make more videos like this!!!!
Thanks for this very useful information. I have a problem with first on performance issue! 👍👍👍
Great video. Wish there was an Android Studio plugin that could detect these code smells
this video was awesome
well done Philipp
9:28 you can put the remember inside the parameter directly instead, it will work
Awesome, hope in black friday to buy some course of you
Wow Philipp, amazing video.. i have to open a refactoring ticket now :D
Just finished your Jetpack Compose playlist. Very well explained and thanks for sharing.
You are the best, keep up the work!
this helped me A LOT. ty
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 :)
Thank you very very much for such a USEFUL & CONCEPTUAL VIDEO 🙏🙏🙏
Please, more KMM videos! 👍
He have KMM course so I doubt that he will make more videos about that until his course reach specific sales goal
Thank you Philipp!
BTW, thank you again @Philipp.
Hello Phillipp, how do you see the market for Jetpack Compose?. I'm thinking of starting to learn it.
If we are already discussing improvements, an Idea for a new video, replace try catch with Arrow (Either)
Your efforts are great ❤❤
Can I use Android library on desktop compose??
We only need to create mapper classes if we're doing cross-module communication right? Also any way of detecting that as well?
Thank you!
Thank you so much❤
@Philipp, just want to share about movableContent, seems like it will also a good thing to learn for compose performance
Mantaaapp !!
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?
Wow, it was amazing
You are the best
Thank you
at 6:38 button recomposed 18 times , does anyone knows why?
The ripple animation
bro you can fetch all pdf files in recyclerview using media store please please create a video on that soon please
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
What's the reason for method reference to be stable even if the class it belongs to is unstable?
Awesome
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
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.
To mark them as immutable or stable would require adding compose to the module though and then it's not a problem anymore 😅
Hello, which emulator you use?
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.
Please create one more tutorial with firebase
amazing
👍🏻
Does anyone knows that is there any issue to use @composable inside a class?
No issues, but I also don't see a reason to do that
@@PhilippLackner thank you philipp, my reason to use it that way is to make sure view structures implemented from a same interface
209th...Thanks Philipp
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"