본문 바로가기
[9oorm x kakao] 구름톤 유니브 3기/[구름톤 유니브] 교내 스터디

[자몽꿈 - 5주차] Compose 컴포넌트 (1)

by 조희우 2024. 9. 30.

kakao x 9oorm 구름톤 유니브 3기

 

교내 스터디 - 자몽꿈


#0 팀 회의

지난 주차에 스터디 주제를 바꾸면서 9월 첫째 주, 목요일인 9월 5일에 회의를 한 번 더 진행했었다.

공부 주제와 세미나에 대한 회의도 진행하여서 5주 차 회의는 진행하지 않았다.

카카오톡으로 이번 주에 진행할 스터디 주제를 공유하는 시간 정도 가졌다.

5 주차 회의 - 빠른 주제 공유

 


#1 Compose

이번 주차부터 Compose에 대하여 학습하기로 했다.

이전에 학습하다가 1 주차만 하고 스터디원의 사정으로 스터디가 사라졌었다.

이번 기회에 같은 주제로 학습을 하기로 하였다.

 

4 주차 학습 md 파일에 적었었지만, 저번 주차 내용이 길어져 이번 주차에 올린다.

주차를 계산해 보니 딱 스터디 끝나는 날까지 가능해서 럭키비키였다.🍀

# 섹션 1 - 컴포즈 컴포넌트 익히기

## 1주차

- Text, Button, [Modifier](https://developer.android.com/jetpack/compose/modifiers?hl=ko)
- Surface, Box, Row, Column
- BoxWithConstraints

## 2주차

- Image, Icon, Checkbox, TextField, Spacer, Divider
- Slot Api, Scaffold

## 3주차

- LazyColumn
- Dialog, SnackBar

# 섹션 2 - 컴포즈 개념 익히기 + 컴포넌트 활용

## 4주차

- [Compose 이해](https://developer.android.com/jetpack/compose/mental-model?hl=ko)
- [상태 관리](https://developer.android.com/jetpack/compose/state?hl=ko)


## 5주차

- [수명 주기](https://developer.android.com/jetpack/compose/lifecycle?hl=ko)
- [부수 효과](https://developer.android.com/jetpack/compose/side-effects?hl=ko)


## 6주차

- [단계](https://developer.android.com/jetpack/compose/phases?hl=ko)
- [성능](https://developer.android.com/jetpack/compose/performance?hl=ko)


## 7주차

- [CompositionLocal](https://developer.android.com/jetpack/compose/compositionlocal?hl=ko)
- [컴포즈 안티 패턴 1-5](https://velog.io/@mraz3068/Jetpack-Compose-Top-20-mistakes-1-5)
- [컴포즈 안티 패턴 6-10](https://velog.io/@mraz3068/Jetpack-Compose-Top-20-mistakes-6-10)
- [컴포즈 안티 패턴 11-15](https://velog.io/@mraz3068/Jetpack-Compose-Top-20-mistakes-11-15)
- [컴포즈 안태 패턴 16-20](https://velog.io/@mraz3068/Jetpack-Compose-Top-20-mistakes-16-20)
- [Compose Stability설명](https://medium.com/@wind.orca.pe/compose-stability%EC%84%A4%EB%AA%85-8a071b4eda83)
- [Immutable collection vs Persistent collection](https://github.com/Kotlin/kotlinx.collections.immutable)

 


#2 학습

이번 학습은 compose 1주 차로 아래와 같이 진행했다.

- Text, Button, Modifier
- Surface, Box, Row, Column
- BoxWithConstraints

 

이번 주차 학습은 이전에 진행했던 스터디 내용을 기반으로 복습을 진행했다.

이미 학습을 진행했던 내용이었지만 다시 보니 새로운 내용을 접하는 기분이었다.

다시 봐도 compose는 xml과 너무 달라서 신기하다.


#3 PR 리뷰

팀원은 Flutter를 학습하여 개인 스터디가 되어 주제가 달라지니 내용이 신기했다.

팀원은 이번에 Dart 비동기 프로그래밍과 공부를 하며 발생했던 에러에 대하여 PR을 작성하였다.

비동기 프로그램의 특성과 코드들이 재미있었다.

특히 비동기 응답을 한 번만 받을 때 사용하는 클래스의 이름이 'Future'여서 귀엽게 느껴졌었다.

이전보다 다른 코드를 리뷰하니 깊이 있는 리뷰는 힘들지만, 새로운 내용을 접할 수 있어서 흥미로웠다.


#4 후기 및 PR 링크

개인 스터디로 주제를 바꾸기까지 많은 우여곡절이 있었던 거 같다.

그래도 이번 스터디를 계기로 compose를 끝까지 학습해 보고 싶다.

혼자 하게 되었지만 KDT 풀스택 과정도 열심히 수강해야겠다.

하고 싶은 일도 많고 해야 할 일도 많지만 하나하나 끝내다 보면 언젠가는 다 할 수 있다는 마음으로 열심히 임해야겠다.

 

 

[Mobile/Full-Stack] 5week/huiwoo-jo by huiwoo-jo · Pull Request #19 · 9oormthon-univ-dmu/GFD-Mobile

관련 이슈 resolved [5주차] 개별 학습 - Flutter 비동기 처리 / Compose 컴포넌트 (1) #17 내용 요약 Text, Button, Modifier Surface, Box, Row, Column BoxWithConstraints 후기 교내 스터디가 바뀌면서 Compose 학습을 시작하

github.com