Hello there and welcome to my course! In this course I'm going to teach you how to build your first Android App from scratch, using a popular UI toolkit called Jetpack Compose.
I know that lots of you have been waiting for this moment, a moment when Jetpack Compose became stable! Now it's the right time to be an Android Developer! With a Jetpack Compose building Android Apps is going to be exciting, fun and a lot simpler then before. We are not going to need XML anymore.
Instead we are going to build our UI with a regular Kotlin file, using the full power of Kotlin programming language. Also creating custom UI component has been easier. So you want to build a custom UI component, no problem, just start by adding a simple function annotated with @Composable annotation.
And of course how would this course look like without a real project? Our To-Do application which we are going to develop in this course will have a Single Activity and Zero Fragments. Sounds impossible? Well it isn't. So better get used to it, because that will greatly simplify the process of developing Android apps.
Now at the beginning of this course I'm going to introduce you with Jetpack Compose in general and with some of the most important concepts as well. You will learn everything about the Lifecycle of a single composable and how Compose Compiler is doing all the hard work for you behind the scenes.
In this course we are going to use some of the most important Android Architecture components like:
- ROOM Database: To save and read the data from a local database, plus we are going to write some custom SQL queries as well.
- Compose Navigation: So we can navigate between our Screen Composables. And At the end of the course you will also learn how to add some beautiful transition animations as well.
- ViewModel: Which will contain all the logic needed to work with our app.
- Preference DataStore: To persist a simple key-value pairs.
- And you'll learn about a popular dependency injection library called Dagger-Hilt. You will see how to inject a ViewModel with different dependencies without needing to create a ViewModel Factory.
By default our application will support Dark Mode as well, and you will learn how easy it is to have two different themes of your app with a Jetpack Compose. You will also learn how to build your own custom UI components.We will use some of the most popular material components along with a Scaffold, which is an amazing composable function that uses SLOT API, to place all your UI components in the place they belong by the rules of material design documentation.
To-Do app on which we are going to work on will have an animated Splash Screen, as some other components in our app. Also an Animated Swipe to Delete functionality which will allow us to easily remove an item from the list. Along with that we will add a safety feature called UNDO deleted item, which will display a SnackBar whenever we delete an item from the list, so we can get it back by one click. You will learn planty of other things related to the new way of developing Android Apps.
And finally this course will be constantly updated with new videos whenever needed. Whenever we find a bug in our app, then I'm going to record a video about it and we are going to fix it together. Plus you'll be in contact with me throughout this whole course, and you can always ask me a question related to this course and even suggest some code cleanup for the project if you are skilled enough to find it.
Overall this is going to be quite a journey.
So what are you waiting my friend, let's start learning!