All right, so now that we are finally down with the basics of Scotland, let's jump into jetpack compose
and see what it has to offer and what it even is.
So in the past couple of years, developing native Android applications has improved quite significantly,
ranging from architecture improvements to the tools and libraries that help in speeding up development.
But the way we create UI widgets and its interactions remains the same where we most times needs to
have a layout built with XML and then an activity or fragment that we have to write with either Java
or codling to interact with the user interface widgets in the layout.
The good news is all of this changes with the newest UI framework Jetpack Compose.
So Jetpack Compose is a declarative toolkit for creating high quality user interface components, making
it easier and faster to write beautiful applications with less code.
So there is no need for separate Exmor layouts or multiple activities.
So just one activity that will serve as an entry point into the API is required.
Composable functions are capable of building, maintaining and updating the user interface.
And since XML files are no longer required, there's no need for find few bayad view binding or data
mining, which each were quite complicated and cumbersome to a degree, while find few body was quite
simple but had its flaws by itself.
So all of those techniques, they were there and they served their purpose.
But now it's time to have a better approach, which is jetpack compose.
So Jetpack Compose is interoperable with the traditional way of developing Android applications and
can be added to already existing projects while you migrate gradually to using composable only is just
about a normal function with the at composable annotation.
So we have this function my app here, where, for example, we have the greeting while we'll call the
greeting function and pass.
Welcome to tutorials you and we're going to see how this actually works in an actual application.
We're going to build a bunch of composable.
We're going to use existing composable but also build.
Many of them are selves.
We're even going to go as far as to build entirely custom composable that are going to be quite advanced
and complex, but super powerful and not too difficult to understand because of the beauty of jetpack
compose in general.
So let's go ahead and see this in action.