diff --git a/README.md b/README.md index ee1842c2..2353a948 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,122 @@ # JJBACSA-ANDROID -JJBACSA-ANDROID + +## ๐Ÿฝ ์ฉ์ฉ๋ฐ•์‚ฌ ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๐Ÿฝ + +## Technology Stacks + +- Kotlin +- Coroutine Flow +- Hilt +- Retrofit 2 + +## App Architecture + +Clean architecture + MVVM Design pattern + +### Layer Declaration + +- domain +- data +- app + +## Code Convention + +> ์•„๋ž˜ ๋ช…์‹œ๋œ ์ปจ๋ฒค์…˜์˜ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ๊ฒฌ๋˜๋ฉด ์ด์Šˆ๋ฅผ ์—ด์–ด์„œ ์ปจ๋ฒค์…˜ ์ถ”๊ฐ€/์ˆ˜์ • ๋“ฑ ๊ฒ€ํ†  + +### XML id + +``` +[view]_[where]_[purpose] +``` + +- [view] : View์˜ ์ด๋ฆ„์„ snack_case๋กœ ๋ณ€ํ™˜ + - TextView -> text_view_... + - RecyclerView -> recycler_view_... + - Toolbar -> toolbar_... +- [where] : View๊ฐ€ ์œ„์น˜ํ•˜ ๊ณณ์„ ๋ช…์‹œ + - Main screen text view -> text_view_main_... +- [purpose] : View์˜ ์‚ฌ์šฉ ์šฉ๋„๋ฅผ ๋ช…์‹œ + - ๋กœ๊ทธ์ธ->๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ EditText -> edit_text_login_password + +### Shape drawables (button shape, dialog shape, ...) + +``` +shape_[rect|circ|oval...](_[colorcode]_stroke)(_[colorcode]_solid)(_etc variables).xml +``` + +- shape_rect_ff1234_stroke_f1f2f3_solid_radius_4.xml +- shape_circ_4321fe_solid.xml + +### State list drawables (checked, unchecked, selected, unselected, ...) + +``` +sel_[where]_[what].xml +``` + +### Kotlin code convention + +- ktlint +- detekt + +### Architectual convention + +- usecase๊ฐ€ ๋‹จ์ˆœ repository๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒฝ์šฐ์—๋„ usecase ํ•„์ˆ˜ ์ ์šฉ +- usecase์˜ ๋ฐ˜ํ™˜๊ฐ’์„ `kotlin.Result`๋กœ ๋ž˜ํ•‘ +- API request/response <-> Repository Model ๊ฐ„ ๋งคํ•‘(mapper ์‚ฌ์šฉ) + +### Git convention + +#### ๊ณตํ†ต ์‚ฌํ•ญ + +[type] + +- fix : ๋ฒ„๊ทธ, ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ```[fix] #10 - callback error``` +- add : Feat ์ด์™ธ์˜ ๋ถ€์ˆ˜์ ์ธ ์ฝ”๋“œ ์ถ”๊ฐ€, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€, ์ƒˆ๋กœ์šด View๋‚˜ Activity ์ƒ์„ฑ ```[add] #11 - LoginActivity``` ```[add] #12 - CircleImageView Library``` +- feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„ ```[feat] #11 - google login``` +- del : ์“ธ๋ชจ์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ [del] ```#12 - unnecessary import package``` +- docs : README๋‚˜ WIKI ๋“ฑ์˜ ๋ฌธ์„œ ๊ฐœ์ • ```[docs] update readme``` +- refactor : ๋‚ด๋ถ€ ๋กœ์ง์€ ๋ณ€๊ฒฝ ํ•˜์ง€ ์•Š๊ณ  ๊ธฐ์กด์˜ ์ฝ”๋“œ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๋ฆฌํŒฉํ† ๋ง ์‹œ [refactor] ```#15 - MVP architecture to MVVM``` +- chore : ๊ทธ ์ด์™ธ์˜ ์žก์ผ/ ๋ฒ„์ „ ์ฝ”๋“œ ์ˆ˜์ •, ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ, ํŒŒ์ผ ์ด๋™, ๊ฐ€๋…์„ฑ์ด๋‚˜ ๋ณ€์ˆ˜๋ช…, reformat ๋“ฑ [chore] #20 - delete unnecessary import package ```[chore] #21 - reformat MainActivity``` +- ui : xml ํŒŒ์ผ๋งŒ ์ˆ˜์ •ํ•œ ๊ฒฝ์šฐ ```[ui] #30 - use constraintlayout in activity_main.xml``` +- mod : ๊ทธ ์™ธ์˜ ๋‚˜๋จธ์ง€๋ฅผ ์ˆ˜์ •ํ•œ ๊ฒฝ์šฐ ```[mod] #31 - modify login process``` +- test : ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ + +#### Issue + +``` +[[type]] ์ž‘์—… ๋‚ด์šฉ +``` + +๋ชจ๋“  ์ž‘์—… ์ „ ์ด์Šˆ ์ƒ์„ฑ์ด ์„ ํ–‰๋˜์–ด์•ผ ํ•œ๋‹ค. + +- [ui] Add login view +- [feat] Integrate login api + +#### Branch + +``` +#[issue number]-[type] ์ž‘์—…-๋‚ด์šฉ +``` + +- #1-ui-Add-login-View +- #2-feat-Integrate-login-api + +#### Commit Message + +``` +#[issue number] [[type]] [commit message] +``` + +commit message๋Š” ํ˜„์žฌ ์‹œ์ œ๋กœ, ์ตœ๋Œ€ํ•œ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑ + +- #1 [ui] Make password invisible +- #1 [ui] Add sns login button + +#### Pull Request + +``` +#[issue number] [[type]] ์ž‘์—… ๋‚ด์šฉ +``` + +branch ์ด๋ฆ„์„ ๊ทธ๋Œ€๋กœ ๋„˜๊ฒจ๋ฐ›์•„ ์ž‘์„ฑ +