That's why .. I love working on Android projects because when I don't understand something I'm sure I'll find a wonderful video like this that explain what I want .. thanks a lot
For a more hands-on approach to learning Compose, you can give Codelabs-like the one below-a try! We hope this helps 😄 Jetpack Compose Basics (Codelab) → goo.gle/3I38XDZ
Thanks for the nice explanation! P.S. I am currently passing through the Jetpack Compose Course on the Android Developers website and I think that this particular video should be moved/added to 2nd path because there are steps that directly follow this video and also questions in the Quiz section so I will suggest at least add this one there too)
These videos are great! I'm curious about something you mentioned while describing the layout phase: "With a single pass through the UI tree, we were able to measure and place all the nodes. This is great for performance. When the number of nodes in the tree increases, the time spent traversing it increases in a linear fashion. In contrast, if we were to visit each node multiple times, the traversal time would increase exponentially." By "exponentially", did you literally mean an exponential time complexity (I assume it actually couldn't have been more than quadratic), or did you just mean "a large amount more than 1 pass" (but actually a multiple of n, still linear)? I assumed the latter, but the gesture you did with your hands represented a quadratic or exponential graph, so I just wanted to make sure (for the sake of my own sanity 😅). Thanks
Very informative video! The layout algorithm of Compose seems to be quite similar to that of SwiftUI. It works as follows: 1. A parent view proposes a size for its child. 2. Based on that information, the child then chooses its own size and the parent must respect that choice. 3. The parent then positions the child in its 2D coordinate space. Which begs the following question for me: When a composable measures its children in step 1, does the parent composable communicate a maximum size to the children? This information would be needed for example for a Text composable with multiple lines to know how tall it will be when its lines wrap at the maximum width of its parent.
this is like third video where I've been shown hierarchies and trees, I mean it's cool but I'm not gonna write that in an app, just do real world apps, it's much more clear
Improve update support by separating the oem layer like miui one ui vivo from the system oartition and making system partition the aosp base for easy and make google to update the system partition easily like wut you did on dsu gsi and oem partition for oem to easily update while the product partition for gapps partition and vendor for device layer . Maybe retiring the dsu gsi test on developer option and actually allowing the google server to update the system.img the aosp base and the oem partition easily via settings like wut you did on dsu gsi via developers option might help everyone to experience latest os and as well as security
That's why .. I love working on Android projects because when I don't understand something I'm sure I'll find a wonderful video like this that explain what I want .. thanks a lot
Thank you so much for the kind words, Anas! Don't forget to check out the video description for more great resources like this one 🙂
Graphics make it very easy to follow the concepts ... very well done!
Really useful video ❤️! Especially the visualization of how the tree is recursively traversed! Keep ‘em coming!
Thanks! Your comment just made our day 😎
We're glad that this was so helpful for you!
Amazing video, I love to know how compose works deep down. Thanks a lot
For a more hands-on approach to learning Compose, you can give Codelabs-like the one below-a try! We hope this helps 😄
Jetpack Compose Basics (Codelab) → goo.gle/3I38XDZ
Such a great explanation and interesting topic! Great video!!
Thanks for the nice explanation!
P.S. I am currently passing through the Jetpack Compose Course on the Android Developers website and I think that this particular video should be moved/added to 2nd path because there are steps that directly follow this video and also questions in the Quiz section so I will suggest at least add this one there too)
Thanks! Waiting for the next of these series! To the end of game;)
These videos are great!
I'm curious about something you mentioned while describing the layout phase:
"With a single pass through the UI tree, we were able to measure and place all the nodes. This is great for performance. When the number of nodes in the tree increases, the time spent traversing it increases in a linear fashion. In contrast, if we were to visit each node multiple times, the traversal time would increase exponentially."
By "exponentially", did you literally mean an exponential time complexity (I assume it actually couldn't have been more than quadratic), or did you just mean "a large amount more than 1 pass" (but actually a multiple of n, still linear)? I assumed the latter, but the gesture you did with your hands represented a quadratic or exponential graph, so I just wanted to make sure (for the sake of my own sanity 😅).
Thanks
Ok, I just learned about subcompose, and now am more open to the idea that it could be exponential time complexity if multiple measures were allowed.
Very informative video! The layout algorithm of Compose seems to be quite similar to that of SwiftUI.
It works as follows:
1. A parent view proposes a size for its child.
2. Based on that information, the child then chooses its own size and the parent must respect that choice.
3. The parent then positions the child in its 2D coordinate space.
Which begs the following question for me:
When a composable measures its children in step 1, does the parent composable communicate a maximum size to the children? This information would be needed for example for a Text composable with multiple lines to know how tall it will be when its lines wrap at the maximum width of its parent.
Yes, the parent composable communicates the maximum children size through constraints.
Awesome content!
Amazing tutorial
Thanks
Awesome content 👏 😍
Very useful video
Thinks you
Nice explanation, thks :)
Given your explanation is it possible to visit each node in paralel?
Well explained, Thanks Jolanda.
I need full course with the whole last updates, where to find the latest courses
Thanks
It sounds a lot like @flutter work. So why reinvent the wheel and not bring flutter into. As a 1st class tool
Because flutter sux and is slow as hell
this is like third video where I've been shown hierarchies and trees, I mean it's cool but I'm not gonna write that in an app, just do real world apps, it's much more clear
And this is why we are asked about trees in coding interviews.
Thank youuu
👋🏼🇨🇴🧔🏻👍🏼🤝🏻 Saludos desde Colombia.
Improve update support by separating the oem layer like miui one ui vivo from the system oartition and making system partition the aosp base for easy and make google to update the system partition easily like wut you did on dsu gsi and oem partition for oem to easily update while the product partition for gapps partition and vendor for device layer . Maybe retiring the dsu gsi test on developer option and actually allowing the google server to update the system.img the aosp base and the oem partition easily via settings like wut you did on dsu gsi via developers option might help everyone to experience latest os and as well as security
How to find new updates and depricated codes in kotlin
Hello Mohamed! You can stay up to date on new Jetpack Compose functionality and deprecations via the following link ➡️ : goo.gle/3IbJ59W
Please improve viewmodels. Give us the ability to preview composables that uses the viewModel lifecycle method
Say that you’re German without saying that you’re German ;)
🙋♂🙋♂🙋♂🙋♂