Skip to content
@Pohanghang-Compose

Pohanghang-Compose

DO SOPT 33rd Compose Study Team

header

🗓️ Seasons

Season 1 : 23.10 ~ 23.12
Season 2 : 24.02 ~ 24.05
Season 3 : Comming Soon...



👨‍👩‍👧‍👦 Members

2기 멤버

👑박동민 박강희 조관희 강유리 이태희
1기 멤버
👑박동민 박강희 조관희 강유리


📚 과제 제출 방식

  • 본인 이름으로 레포지토리를 생성합니다.
  • feat/week1 등 새 브렌치를 만들고 해당하는 폴더를 생성하여 과제를 진행해주세요.
    ex) week1 폴더 생성 및 week1 브랜치 생성 후 작업
  • PR에 구현 사진 혹은 시연 영상을 포함하여야 합니다.
  • 과제는 다음 스터디 시작일 하루 전까지 완료하셔야 합니다.
    ex) 10월 26일 스터디 진행 -> 25일까지 과제
  • 서로서로 리뷰를 달아주며 공부합니다!


🧾 과제 목차

2기 과제 목차

1주차 : MVI 공부해오기
2주차 ~ 3주차 : MVI + orbit을 적용한 Compose 프로젝트 클론코딩
4주차 : DO SOPT Android 1주차 Migration to Compose + MVI
5주차 : DO SOPT Android 2주차 Migration to Compose + MVI
6주차 : DO SOPT Android 3주차 Migration to Compose + MVI
7주차 : DO SOPT Android 4주차 Migration to Compose + MVI

1기 과제 목차

1기 과제 목차

1주차 : 프로필 카드 구현
2주차 : 카탈로그 앱 구현
3주차 : 만족도 조사 앱 구현
4주차 : 만족도 조사 앱 with 애니메이션
6주차 : rememver vs LivdData

포항항의 공부 레퍼런스 바로가기

🤖 커리큘럼

진행 상황 진행 전 진행 중 완료 실패
👨‍💻 🔥 🙆‍♂️ 🙅‍♀️

2기 커리큘럼



WEEK 1
2/14 ~ 2/23
MVI란 무엇일까? 어떻게 쓰고, 왜 쓰는지 공부해오기
과제 대면 발표 자료 준비 및 발표
성취도 동민 강희 관희 유리 ??
🙆‍♂️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️ ??
WEEK 2 ~ WEEK 3
2/24 ~ 3/5
Compose + orbit 프로젝트 클론코딩하기
과제 야무지게 구현해오기
성취도 동민 강희 관희 유리 태희
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️ 🙅‍♀️
WEEK 4
3/6 ~ 3/12
SOPT 1주차 내용 적용하여 Compose + MVI로 코드구현
과제 야무지게 구현해오기
성취도 동민 강희 관희 유리 태희
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
WEEK 5
3/13 ~ 3/19
SOPT 2주차 내용 적용하여 Compose + MVI로 코드구현
과제 야무지게 구현해오기
성취도 동민 강희 관희 유리 태희
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
WEEK 6
3/20 ~ 3/26
SOPT 3주차 내용 적용하여 Compose + MVI로 코드구현
과제 야무지게 구현해오기
성취도 동민 강희 관희 유리 태희
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙅‍♀️ 🙆‍♂️
< 중간고사 대비기간>
2주 동안 스터디도 쉬어갑니다 👋🏻
WEEK 7
4/10 ~ 4/16
SOPT 4주차 내용 적용하여 Compose + MVI로 코드구현
과제 야무지게 구현해오기
성취도 동민 강희 관희 유리 태희
🙅‍♀️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
< 포항항 2기 스터디 종료!! >
여기까지 함께하신 모든분들의 열정에 박수를 보냅니다 👏

1기 커리큘럼

1기 커리큘럼

WEEK 1
10/11 ~ 10/19
Compose의 기본 컴포넌트들
Text, Button, Modifier, Surface, Box, Row, Column, BoxWithConstrints, Image, Network Image
과제 프로필 카드 구현
성취도 동민 강희 관희 유리
🙆‍♂️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
< 중간고사 대비기간>
1주 동안 스터디도 쉬어갑니다 👋🏻
WEEK 2
10/26 ~ 11/02
Recomposition이란?
Checkbox, TextField, TopAppBar, Slot API, Scaffold 사용법
과제 카탈로그 앱 구현하기
성취도 동민 강희 관희 유리
🙆‍♂️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
WEEK 3
11/3 ~ 11/9
Canvas, Dialog, Custom Dialog
DropDownMenu, SnackBakr, BottomAppBar
과제 만족도 조사 앱 구현하기
성취도 동민 강희 관희 유리
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️
WEEK 4
11/10 ~ 11/16
애니메이션
State와 State Hoisting
과제 만족도 조사 앱 with 애니메이션
성취도 동민 강희 관희 유리
🙆‍♂️ 🙅‍♀️ 🙆‍♂️ 🙆‍♂️
WEEK 5
11/17 ~ 11/23
부수효과 1
부수효과 2
과제 합동세미나를 위해 쉬어갑니다!
성취도 동민 강희 관희 유리
🙆‍♂️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
WEEK 6
11/24 ~ 11/30
ViewModel, LiveData 연동
CompositionLocal, Theme
과제 Jetpack Compose에서 LiveData or Flow를 왜 remember가 있는데 쓸까?
성취도 동민 강희 관희 유리
🙆‍♂️ 🙆‍♂️ 🙆‍♂️ 🙆‍♂️
WEEK 7
12/01 ~ 12/07
네비게이션
DI(의존성 주입), Unidirectional Data Flow
과제 앱잼 야무지게 하고 단톡방에 자랑하기!!
성취도 동민 강희 관희 유리
🔥 🔥 🔥 🔥
< 스터디 종료!! >
여기까지 함께하신 모든분들의 열정에 박수를 보냅니다 👏
도전과제
자율 수행
인트로, 수명주기
렌더링 단계, Stability
과제 미정
성취도 동민 강희 관희 유리
👨‍💻 👩‍💻 👨‍💻 👩‍💻
심화과제
자율 수행
성능 최적화 실습
과제 미정
성취도 동민 강희 관희 유리
👨‍💻 👩‍💻 👨‍💻 👩‍💻


🔖 과제 리스트

2기 과제

1주차 MVI 공부해오기

동민 : MVI란 무엇일까?
강희 : 나도한다. MVI
관희 : MVI
유리 : MVI에 대해서



2주차 3주차 클론코딩

Orbit MVI공부해오기(github)
MVI Project 클론 코딩 하기

koin -> Hilt 마이그레이션은 자유!
예시는 멀티모듈을 사용했지만, 싱글모듈로 구현해도 됩니다


조관희의 꿀팁공유



4주차 SOPT 1주차 마이그레이션

image image image


5주차 SOPT 2주차 마이그레이션

스크린샷 2024-03-13 오후 10 13 42 스크린샷 2024-03-13 오후 10 13 06


6주차 SOPT 3주차 마이그레이션

image

이것만 하면 아쉽겠죠!
기존 코드들 야무지게 정리하고 MVI스럽게!!!
레퍼런스 많이많이 찾아보고 오깅~


7주차 SOPT 4주차 마이그레이션

image

링크에 있는 api를 활용하기.
서버통신의 경우 방법은 자유입니다. ex) enqueue, hilt, repository pattern 등...
단, mvi스럽게 짜는 것이 과제입니다!


1기 과제

1기 과제

1주차 프로필 카드 구현

compose 과제

조건
위 프로필 카드 클론코딩하기
이미지는 coil 라이브러리 활용하여 이미지 로딩하기!


2주차 카탈로그 앱 구현

default.mp4

구현 조건

  1. Card 레이아웃을 활용해서 화면 구성하기
  2. item 객체를 만들고, 객체 배열을 만들기
  3. LazyColumn과 item 배열을 활용하여 영상과 비슷한 카탈로그 만들기~
  4. 이미지는 coil 라이브러리를 활용해서!!!

화면에 들어가는 내용은 자유! 단, 최소 이미지와 텍스트는 들어가야함!

3주차 만족도 조사 앱 구현

week3HomeWork.mp4

구현 조건

  1. Canvas를 활용하여 custom ProgrgrassBar 구현
  2. Dialog 사용
  3. DropDownMenu 구현
  4. 해당 기술을 사용했다면 나머진 자유!!


4주차 만족도 조사 앱 with 애니메이션

4.compose.mp4

구현 조건

  1. 3주차 과제를 활용하여 Dailog가 아닌 메인화면에 그대로 나타나게 할 것
  2. 별점을 선택할 시 별이 좌측에서 우측으로 하나씩 나타나야하고, CustomProgressBar도 실시간으로 조금씩 변경되어야함.
  3. 별점을 5점에서 1점으로 변경하였을 때 우측에서 좌측으로 하나씩 줄어들어야한다. 당연히 점수도 정상적으로 반영돼야겠죠?


6주차 rememver vs LivdData

Compose에는 remember가 있는데 왜 Flow랑 LiveData를 쓸까?
확실한 근거와 함께 조사해오기!!



포항항 공부 레퍼런스

UI

Powerful Code

Kotlin



image

Popular repositories

  1. .github .github Public

    1

  2. yuri-kang yuri-kang Public

    Kotlin 1 1

  3. dongmin_park dongmin_park Public

    Jetpack Compose 외않헤

    Kotlin

  4. kwanhee-jo kwanhee-jo Public

    달팽이 🐌

    Kotlin

  5. kanghee-park kanghee-park Public

    Kotlin

  6. yuri-kang-mvi-clone-coding yuri-kang-mvi-clone-coding Public

    Kotlin

Repositories

Showing 10 of 15 repositories

Top languages

Loading…

Most used topics

Loading…