We may earn an affiliate commission when you visit our partners.
Abbass Masri - Doc. Ali Alaeddine

Jetpack Compose is a modern and powerful UI toolkit for building Android applications. In this comprehensive course, you will learn how to leverage Jetpack Compose to create dynamic and visually stunning user interfaces (UI) for your Android apps.

Whether you're a beginner or an experienced Android developer, this course will equip you with the skills and knowledge needed to master Jetpack Compose and take your UI development to the next level.

Course Highlights:

Read more

Jetpack Compose is a modern and powerful UI toolkit for building Android applications. In this comprehensive course, you will learn how to leverage Jetpack Compose to create dynamic and visually stunning user interfaces (UI) for your Android apps.

Whether you're a beginner or an experienced Android developer, this course will equip you with the skills and knowledge needed to master Jetpack Compose and take your UI development to the next level.

Course Highlights:

  1. Introduction to Jetpack Compose: Gain a solid understanding of the core concepts and principles behind Jetpack Compose. Learn how it differs from traditional Android UI frameworks and why it's becoming the preferred choice for UI development.

  2. Composable Functions: Explore the power of composable functions and how they enable a declarative and modular approach to building UI components. Discover the various Compose primitives, modifiers, and layouts to design responsive and flexible user interfaces.

  3. State Management: Dive into the world of state management in Jetpack Compose. Understand how to handle UI state, manage user interactions, and update the UI dynamically. Learn about the different state management options available, including state hoisting and using ViewModel.

  4. Material Design: Discover how to implement beautiful and intuitive Material Design interfaces using Jetpack Compose. Learn about the MaterialTheme, built-in components, typography, theming, and animations, enabling you to create delightful and consistent user experiences.

  5. Navigation and Routing: Master the art of navigating between screens and handling complex UI flows in your Android apps. Explore Jetpack Compose's navigation component and learn how to implement navigation graphs, handle deep links, and pass arguments between destinations.

  6. Custom UI Components: Unlock the full potential of Jetpack Compose by creating your own custom UI components. Understand the process of designing reusable and modular components and explore techniques for creating complex UI layouts.

  7. MVVM: Learn how to build apps following the clean architecture patterns "MVVM"  and getting the data from remote data source "API & JSON" and local data source "ROOM database"

  8. ROOM Database: Discover the ROOM database in android applications, and how to store data locally.

  9. Retrofit: Dive into fetching data from the servers and parse JSON files into android apps.

By the end of this course, you will have a strong foundation in Jetpack Compose and be able to build sophisticated, performant, and responsive user interfaces for your Android apps. Join us on this learning journey and unlock the true potential of Jetpack Compose to create exceptional UI experiences.

Enroll now

What's inside

Learning objectives

  • What’s jetpack compose and its advantages over the imperative way of building android apps
  • Kotlin programming basics, intermediate and advanced concepts (optional - you can skip if you need to)
  • Master how to customize ui elements in compose
  • Understand how mutablestate, and flow work with composable functions
  • Master how to build 8 jetpack compose apps that range from simple to complex (unit converter, actors app, library app, courses app, navigation app, cards app
  • Learn how to parse json data from apis using retrofit
  • Build compose apps that use the android room database
  • And so much more (check out the curriculum to get the complete list of topics!)
  • Show more
  • Show less

Syllabus

Break & Continue
Introduction
Installing Android Studio & Emulator
Installing Android Studio + SDK
Read more
Creating the Emulator (Android Virtual Device)
Kotlin Basics
Running Kotlin Projects in Android Studio
Kotlin Syntax
Printing the Output
Comments
Variables
Data Types
Numbers
Decimals
Boolean
Characters
Operators
Operators [Part 2]
Strings
Conditional Statements
When Expressions
While Loop
Do While Loop
Arrays
For Loop
Ranges
Object Oriented Programming
Creating Functions
Passing Parameters
Function Parameters
What's OOP?
Classes
Objects
Primary Constructor
What's Inheritance
Inheritance Example
Secondary Constructor
Super Keyword
Getters & Setters
Modifiers
Abstract Class
Interfaces
Nested Classes
Data Structures in Kotlin
Collections Intro
Immutable List
Mutable List
Immutable Set
Mutable Set
Immutable Map
Mutable Map
Composable Functions
@Preview Annotation
Project Structure
Basic Composables
What are Composables?
Text Composable
Customising Texts
Coding Challenge #1 - The Greetings App
Modifiers in Jetpack Compose
Scrollable Text with Modifiers
Rows & Columns
Box Layout
Arrangement & Alignment
Button Composable
Custom Buttons
Image Composable
Custom Images
State in Jetpack Compose
State in Compose
State Example
Property Delegation in Kotlin
TextField Composable
Custom TextFields
Stateless vs Stateful
Stateless vs Stateful Example
State Hoisting
More Composables
Radio Buttons Composable
Radio Group
Switch Composable
Checkbox Composable
List of Checkboxes
Circular Progress Indicator Composable
Coding Challenge #2 - The Progress App
Scaffold Composable
Top App Bar Composable
Top App Bar Customisation
Bottom Navigation Composable
Bottom Navigation Items
Floating Action Button
Extended Floating Action Button
Card Composable
Higher Order Functions in Kotlin
Function Literals in Kotlin
Lambda Expressions
Types of Lambda Expressions
Anonymous Functions

Save this course

Save Mastering Jetpack Compose: Building Dynamic User Interfaces to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Mastering Jetpack Compose: Building Dynamic User Interfaces with these activities:
Review Kotlin Fundamentals
Solidify your understanding of Kotlin syntax and core concepts before diving into Jetpack Compose. This will make learning Compose much smoother.
Browse courses on Kotlin Programming
Show steps
  • Review Kotlin documentation on variables, data types, and control flow.
  • Practice writing simple Kotlin programs using Android Studio.
  • Complete online Kotlin tutorials or coding challenges.
Review 'Android UI Development with Jetpack Compose'
Supplement the course material with a dedicated book on Jetpack Compose. This will provide a different perspective and deeper understanding.
View Alter Ego on Amazon
Show steps
  • Obtain a copy of 'Android UI Development with Jetpack Compose'.
  • Read the introductory chapters covering Compose fundamentals.
  • Refer to specific chapters as needed during the course.
Build a Simple UI with Compose
Apply what you're learning in the course by building a small, focused UI project. This hands-on experience will solidify your understanding.
Show steps
  • Design a simple UI, such as a profile screen or a basic calculator.
  • Implement the UI using Jetpack Compose composables and modifiers.
  • Add basic state management to handle user interactions.
  • Test the UI on an emulator or physical device.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Practice Compose Layouts
Reinforce your understanding of Compose layouts (Rows, Columns, Boxes) through targeted practice. This will improve your ability to create complex UIs.
Show steps
  • Create several simple layouts using different combinations of Rows, Columns, and Boxes.
  • Experiment with arrangement and alignment properties to control the positioning of elements.
  • Try to replicate common UI patterns using Compose layouts.
Document Your Compose Learning Journey
Create a blog or series of blog posts documenting your learning experience with Jetpack Compose. This will help you solidify your understanding and share your knowledge with others.
Show steps
  • Choose a platform for your blog (e.g., Medium, personal website).
  • Write about specific Compose concepts, challenges you faced, and solutions you found.
  • Include code snippets and screenshots to illustrate your points.
Contribute to a Compose Library
Deepen your understanding of Compose by contributing to an open-source library or project. This will expose you to real-world code and best practices.
Show steps
  • Find an open-source Compose library on GitHub.
  • Identify a bug or feature request that you can contribute to.
  • Fork the repository, make your changes, and submit a pull request.
Refactor an Existing App with Compose
Gain practical experience by refactoring an existing Android app to use Jetpack Compose. This will help you understand how to migrate from traditional UI frameworks.
Show steps
  • Choose a small to medium-sized Android app that you have access to.
  • Identify a screen or feature that can be easily refactored to use Compose.
  • Rewrite the UI using Compose composables and state management techniques.
  • Test the refactored screen to ensure it functions correctly.

Career center

Learners who complete Mastering Jetpack Compose: Building Dynamic User Interfaces will develop knowledge and skills that may be useful to these careers:

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Mastering Jetpack Compose: Building Dynamic User Interfaces.
Provides a comprehensive guide to building modern Android UIs using Jetpack Compose. It covers everything from basic composables to advanced state management techniques. It valuable resource for understanding the practical application of Compose concepts. This book can be used as a reference text throughout the course.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser