Jetpack Compose
In this Jetpack Compose Course, you’ll learn what Compose is, what its fundamental components are, and how they behave individually, and when composed together. Furthermore, you’ll learn how to build beautiful and reactive UI, with a lot of meaningful motion when it comes to animating custom components, input field state handling, error handling, and automatic state updates within an MVVM environment. By Filip Babić.
Who is this for?
This course is for Android developers who have heard about Jetpack Compose, but haven’t tried it out, and haven’t read a lot of documentation, or went through many examples. It’s also for people who know a little bit about Jetpack Compose, but don’t feel comfortable enough to start replicating their UI using Composable functions. It expects you to be familiar with Android Studio, Kotlin and the current UI toolkit in Android. Familiarity with architectural patterns such as MVVM, using the ViewModel and LiveData components is required for later parts of the course.
Covered concepts
- Composable Functions
- Simple Composables
- ViewGroups
- Lists
- Actions & Handlers
- Modifiers
- State
- Recomposition
- Ambience
- Custom Composables
- Animations
- Material Components
- Component Reusability
Part 1: Jetpack Compose Basics
Take a tour of different ways of developing UI in Android over its history. Compare imperative and declarative UI development, and their pros and cons.
Play around with some of the basic Composable functions, and learn what their parameters are, and how to display a simple Composable tree.
Learn all about Rows, Columns, Text, Button and Icon elements, and how to use said building blocks in Jetpack Compose.
Learn how to remember data within your Composable UI, and how to change and share it.
Learn how to create multiple smaller composable functions, to make them more reusable.
Use some of the simpler Material Design components in Compose, to build better input forms and user experience.
Build lists of items and common Android components, such as RatingBar
s, to style your application.
Finish more UI features of the app, to practice using Jetpack Compose and custom components you’ve built.
Learn how to add special error handling to your UI components, to disable user from performing actions until the data is ready.
Part 2: Build Complex UI with Compose
Learn how to use various handlers in Compose to add specific actions and behavior to your UI. Connect your handlers to state handling.
Expand upon actions and handlers in your application, to build custom dialogs prompting users for data input.
Learn how to easily add different themes and styles to your app, and to support day/night mode.
Now that you’ve built your fair share of the UI in the project, you can proceed to reuse it, and build more features!
Use simple animations and powerful transitions to make your app even nicer than it is!
Part 3: Manage State with Compose
Start setting up state handling and persistence, by building the MVVM pattern in your application.
Free up the UI code of business logic, by moving all of the operations to ViewModels.
Connect reactive data holders to Compose, to make the UI update itself automatically with data.
Learn how to reuse state and create CompositionLocal wrappers for your application.