SlideShare a Scribd company logo
1 of 15
Download to read offline
This work is licensed under the Apache 2.0 License
Compose Camp
Android Basics with Compose
Unit 2 Pathway 2
This work is licensed under the Apache 2.0 License
Welcome Back
Any Questions
This work is licensed under the Apache 2.0 License
TOPIC TIME
Create a Dice Roller App 0:00 - 0:00
Debugger in Android Studio 0:00 - 0:00
Interacting with UI using state 0:00 - 0:00
Create a Tip Calculator App 0:00 - 0:00
Write Automated Tests 0:00 - 0:00
Wrap Up 0:00 - 0:00
Today’s Schedule
This work is licensed under the Apache 2.0 License
Android basics
with Compose
course
This work is licensed under the Apache 2.0 License
Create a Dice Roller App
Hands-on project with Jetpack Compose
This work is licensed under the Apache 2.0 License
Debugger in android is a very powerful tool which
allows the developer to deep dive into the
application to look into an error and solve it. It is also
used by other developers to understand the flow
control and behaviour of the application.
Debugger in Android
This work is licensed under the Apache 2.0 License
State is any value that can change over
time. By default, composables do not
remember their state.
Understanding State
in Jetpack Compose
This work is licensed under the Apache 2.0 License
Before understanding how state is
maintained, let’s take a sneak peek at
how composition works.
How recomposition
works??
This work is licensed under the Apache 2.0 License
Composable function can store objects
across compositions using the
remember function.
A value computed by remember is
stored during composition and is
remembered during recomposition.
remember() function
This work is licensed under the Apache 2.0 License
mutableStateOf()
function
The mutableStateOf() function creates
an absorbable state holder that allows
Compose to observe the change and
trigger recomposition.
This work is licensed under the Apache 2.0 License
Extracting the state from a local
composable function to a parent
composable function is called state hoisting.
State Hoisting
This work is licensed under the Apache 2.0 License
Create a Tip Calculator App
Hands-on using Jetpack Compose
g.co/android/basics-compose
This work is licensed under the Apache 2.0 License
Start here:
This work is licensed under the Apache 2.0 License
Share what you’ve
learned using
.#ComposeCamp
on Twitter
For a chance to be
featured by Android,
submit your tips on
learning Compose to
goo.gle/compose-tips
This work is licensed under the Apache 2.0 License
See you at the next Compose Camp Session!
Optional resources to check out:
Official Android Developers Site: developer.android.com
Official Android Developers Blog (for announcements)
Android Developers Medium Blog (for more technical articles)
Android Developers YouTube Channel
Follow @AndroidDev on Twitter
Follow @AndroidDev on LinkedIn
Subscribe to Android Developer Newsletter

More Related Content

Similar to Google Compose Camp Session 3.pptx.pdf

Android Study Jams - New to Programming [27th december]
Android Study Jams - New to Programming [27th december]Android Study Jams - New to Programming [27th december]
Android Study Jams - New to Programming [27th december]
PragatiVerma31
 

Similar to Google Compose Camp Session 3.pptx.pdf (20)

Compose Camp Day 2.pptx
Compose Camp Day 2.pptxCompose Camp Day 2.pptx
Compose Camp Day 2.pptx
 
Compose Camp by GDSC NSUT
Compose Camp by GDSC NSUTCompose Camp by GDSC NSUT
Compose Camp by GDSC NSUT
 
ANDROID info session.pdf
ANDROID info session.pdfANDROID info session.pdf
ANDROID info session.pdf
 
Compose Camp.pptx
Compose Camp.pptxCompose Camp.pptx
Compose Camp.pptx
 
Copy of Compose Camp _ Looking through the view.pptx
Copy of Compose Camp _ Looking through the view.pptxCopy of Compose Camp _ Looking through the view.pptx
Copy of Compose Camp _ Looking through the view.pptx
 
Compose Camp Day 3.pptx
Compose Camp Day 3.pptxCompose Camp Day 3.pptx
Compose Camp Day 3.pptx
 
Compose Camp 3.pdf
Compose Camp 3.pdfCompose Camp 3.pdf
Compose Camp 3.pdf
 
Compose Camp Slide.pptx (1).pdf
Compose Camp Slide.pptx (1).pdfCompose Camp Slide.pptx (1).pdf
Compose Camp Slide.pptx (1).pdf
 
Android Study Jams - New to Programming [27th december]
Android Study Jams - New to Programming [27th december]Android Study Jams - New to Programming [27th december]
Android Study Jams - New to Programming [27th december]
 
Compose Camp Slide Session 1
Compose Camp Slide Session 1Compose Camp Slide Session 1
Compose Camp Slide Session 1
 
Android study jams
Android study jamsAndroid study jams
Android study jams
 
Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]Android study jams 2021 [collab] [master]
Android study jams 2021 [collab] [master]
 
GDSC - IIITB: Android Study Jams - Introductory Session
GDSC - IIITB: Android Study Jams - Introductory SessionGDSC - IIITB: Android Study Jams - Introductory Session
GDSC - IIITB: Android Study Jams - Introductory Session
 
Android Study Jams - Session 1
Android Study Jams - Session 1Android Study Jams - Session 1
Android Study Jams - Session 1
 
Android Study Jams - Session 3
Android Study Jams - Session 3Android Study Jams - Session 3
Android Study Jams - Session 3
 
Compose Camp S1.pptx
Compose Camp S1.pptxCompose Camp S1.pptx
Compose Camp S1.pptx
 
Introduction to compose camps.pdf
Introduction to compose camps.pdfIntroduction to compose camps.pdf
Introduction to compose camps.pdf
 
Google Solution Challenge Android Awesomeness.pptx
Google Solution Challenge Android Awesomeness.pptxGoogle Solution Challenge Android Awesomeness.pptx
Google Solution Challenge Android Awesomeness.pptx
 
Compose Camp 2.pdf
Compose Camp 2.pdfCompose Camp 2.pdf
Compose Camp 2.pdf
 
Compose Camp.pdf
Compose Camp.pdfCompose Camp.pdf
Compose Camp.pdf
 

Recently uploaded

Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
EADTU
 
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
中 央社
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
Peter Brusilovsky
 

Recently uploaded (20)

Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportBasic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
 
Supporting Newcomer Multilingual Learners
Supporting Newcomer  Multilingual LearnersSupporting Newcomer  Multilingual Learners
Supporting Newcomer Multilingual Learners
 
UChicago CMSC 23320 - The Best Commit Messages of 2024
UChicago CMSC 23320 - The Best Commit Messages of 2024UChicago CMSC 23320 - The Best Commit Messages of 2024
UChicago CMSC 23320 - The Best Commit Messages of 2024
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
 
8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital Management8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital Management
 
Observing-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptxObserving-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptx
 
An overview of the various scriptures in Hinduism
An overview of the various scriptures in HinduismAn overview of the various scriptures in Hinduism
An overview of the various scriptures in Hinduism
 
Trauma-Informed Leadership - Five Practical Principles
Trauma-Informed Leadership - Five Practical PrinciplesTrauma-Informed Leadership - Five Practical Principles
Trauma-Informed Leadership - Five Practical Principles
 
Book Review of Run For Your Life Powerpoint
Book Review of Run For Your Life PowerpointBook Review of Run For Your Life Powerpoint
Book Review of Run For Your Life Powerpoint
 
Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"
 
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽會考英聽
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.ppt
 
Graduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxGraduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptx
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
 
24 ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH SỞ GIÁO DỤC HẢI DƯ...
24 ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH SỞ GIÁO DỤC HẢI DƯ...24 ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH SỞ GIÁO DỤC HẢI DƯ...
24 ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH SỞ GIÁO DỤC HẢI DƯ...
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
 

Google Compose Camp Session 3.pptx.pdf

  • 1. This work is licensed under the Apache 2.0 License Compose Camp Android Basics with Compose Unit 2 Pathway 2
  • 2. This work is licensed under the Apache 2.0 License Welcome Back Any Questions
  • 3. This work is licensed under the Apache 2.0 License TOPIC TIME Create a Dice Roller App 0:00 - 0:00 Debugger in Android Studio 0:00 - 0:00 Interacting with UI using state 0:00 - 0:00 Create a Tip Calculator App 0:00 - 0:00 Write Automated Tests 0:00 - 0:00 Wrap Up 0:00 - 0:00 Today’s Schedule
  • 4. This work is licensed under the Apache 2.0 License Android basics with Compose course
  • 5. This work is licensed under the Apache 2.0 License Create a Dice Roller App Hands-on project with Jetpack Compose
  • 6. This work is licensed under the Apache 2.0 License Debugger in android is a very powerful tool which allows the developer to deep dive into the application to look into an error and solve it. It is also used by other developers to understand the flow control and behaviour of the application. Debugger in Android
  • 7. This work is licensed under the Apache 2.0 License State is any value that can change over time. By default, composables do not remember their state. Understanding State in Jetpack Compose
  • 8. This work is licensed under the Apache 2.0 License Before understanding how state is maintained, let’s take a sneak peek at how composition works. How recomposition works??
  • 9. This work is licensed under the Apache 2.0 License Composable function can store objects across compositions using the remember function. A value computed by remember is stored during composition and is remembered during recomposition. remember() function
  • 10. This work is licensed under the Apache 2.0 License mutableStateOf() function The mutableStateOf() function creates an absorbable state holder that allows Compose to observe the change and trigger recomposition.
  • 11. This work is licensed under the Apache 2.0 License Extracting the state from a local composable function to a parent composable function is called state hoisting. State Hoisting
  • 12. This work is licensed under the Apache 2.0 License Create a Tip Calculator App Hands-on using Jetpack Compose
  • 13. g.co/android/basics-compose This work is licensed under the Apache 2.0 License Start here:
  • 14. This work is licensed under the Apache 2.0 License Share what you’ve learned using .#ComposeCamp on Twitter For a chance to be featured by Android, submit your tips on learning Compose to goo.gle/compose-tips
  • 15. This work is licensed under the Apache 2.0 License See you at the next Compose Camp Session! Optional resources to check out: Official Android Developers Site: developer.android.com Official Android Developers Blog (for announcements) Android Developers Medium Blog (for more technical articles) Android Developers YouTube Channel Follow @AndroidDev on Twitter Follow @AndroidDev on LinkedIn Subscribe to Android Developer Newsletter