UChicago CMSC 23320 - The Best Commit Messages of 2024
Compose Camp 1.pdf
1. This work is licensed under the Apache 2.0 License
Compose Camp
GDSC India TTT
2. This work is licensed under the Apache 2.0 License
Everywhere
3. This work is licensed under the Apache 2.0 License
Declarative UI
You completely describe your
UI for a given state
The framework updates your
UI when the state changes
4. This work is licensed under the Apache 2.0 License
5. This work is licensed under the Apache 2.0 License
Why Jetpack Compose?
Less code
Do more with less code
and avoid entire classes
of bugs. Code is simpler
and easier to maintain.
Intuitive
Just describe your UI,
and Compose takes care
of the rest. As app state
changes, your UI
automatically updates.
Accelerates
Development
Compatible with all
your existing code so
you can adopt when
and where you want.
Iterate fast with live
previews and full
Android Studio support.
Powerful
Create beautiful apps
with direct access to
the Android platform
APIs and built-in
support for Material
Design, Dark theme,
animations, and more.
6. This work is licensed under the Apache 2.0 License
● Learning content and sample slide decks.
● Logistics for how to plan successful Compose Camp
sessions.
● Marketing graphics and templates that are available
for you to customize to promote your event(s).
What you will learn today
7. This work is licensed under the Apache 2.0 License
What to expect
Beginner
New to Android app development. May or may not
have prior programming experience.
Intermediate
Experienced Android developers (already familiar
with Kotlin and the View system) who are new to
Compose.
8. This work is licensed under the Apache 2.0 License
Program Overview
9. This work is licensed under the Apache 2.0 License
Pathways
10. This work is licensed under the Apache 2.0 License
Quiz and Badges
11. This work is licensed under the Apache 2.0 License
To start, choose a track for your community
Beginner
New to Android app development. May or may not
have prior programming experience.
Experienced
Experienced Android developers (already familiar
with Kotlin and the View system) who are new to
Compose.
13. This work is licensed under the Apache 2.0 License
This track is for people who are new to Android app development,
whether they have programming experience or not.
Pre-requisites
• Basic computer literacy
• Basic math skills
What you will
learn
• Kotlin programming
language basics
• How to build Android app
UIs using Compose
• Best practices of Modern
Android Development
Beginner Track
14. This work is licensed under the Apache 2.0 License
2
3
1 Introduction to Kotlin
Set up Android Studio
Build a basic layout (4 hours)
(3 hours)
(4 hours)
Learn introductory programming concepts in Kotlin to
prepare for building Android apps in Kotlin.
Install and set up Android Studio, create your first
project, and run it on a device or emulator.
Learn the basics of layouts in Android by creating your
very own birthday card app!
this is where you will truly start learning Compose!
Android Basics with Compose Course
Unit 1
15. This work is licensed under the Apache 2.0 License
2
3
1 Kotlin fundamentals
Add a button to an app
Interact with UI and state (4 hours)
(3 hours)
(4 hours)
Learn more fundamentals of Kotlin, object-oriented
programming, and lambdas.
Learn how to respond to a button click in an
Android app.
Create a tip calculator app that calculates the tip from
user input.
Android Basics with Compose Course
Unit 2
16. This work is licensed under the Apache 2.0 License
2
3
1 More Kotlin fundamentals
Build a scrollable list
Build beautiful apps (4 hours)
(3 hours)
(4 hours)
Learn additional Kotlin programming concepts that will
enable you to build more interesting and fun Android apps.
Create an app that displays a scrollable list of
text and images using Compose.
Make your apps more beautiful and intuitive to use with Material
Design, animations, and accessibility best practices.
Android Basics with Compose Course
Unit 3
17. This work is licensed under the Apache 2.0 License
2
3
1 Architecture Components
Navigation in Jetpack
Compose
Adapt for different screen
sizes
(4+ hours)
(4 hours)
(4 hours)
Learn about app architecture and how to use ViewModels,
StateUi and StateFlow to build more complex apps.
Learn how to use the Navigation component to build
more complex apps with more screens and how to
navigate and pass data between different composables.
In this pathway, you'll learn how to adapt your app to different
screen sizes and provide a better user experience, as well as
how to test your adaptive UI.
Android Basics with Compose Course
Unit 4
More units coming soon!
More units coming soon!
18. This work is licensed under the Apache 2.0 License
How to navigate the course
No programming
experience
Go through each pathway of each unit in order, since the concepts
build on each other.
Already have
programming
experience
Skip the pathways focused on Kotlin concepts that don’t contain
Android, which are the first pathway of each unit from Units 1 to 3.
Work through the remaining pathways in each unit in order to learn
Android concepts.
Quick Tip: If a developer is new to Kotlin, they can do Kotlin Koans online exercises as a quick jumpstart to
become familiar with Kotlin syntax & idioms (~ 5 hours).
19. This work is licensed under the Apache 2.0 License
Additional resources
Practice problems
These appear throughout the Android Basics with Compose course for learners to apply what
they just learned in the context of a new app. These practice problems are optional. Learners
can start on them if they finish early at a session, or do them at home.
Open-ended projects
At the end of each unit, there are opportunities for learners to create their own app, with some
guidelines to help them. Since these apps will be unique to each individual, the apps could be
added to their portfolio of work, and even uploaded to GitHub.
Unit 1 - Business Card app Unit 2 - Art Space app Unit 3 - 30 Days app
20. This work is licensed under the Apache 2.0 License
THANK YOU
for hosting Compose Camp
for your community!