-
Notifications
You must be signed in to change notification settings - Fork 0
๐ค AN ๊ฐ๋ฐ ์ปจ๋ฒค์
kotlin Coding Convention ์ ๋ฐ๋ฅธ๋ค.
ํ ์ฝ๋ฉ ์ปจ๋ฒค์ ๋ ธ์ ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์!
-
ํจํค์ง ๋ค์์ ๋ฐ๋์ ์๋ฌธ์๋ก ์์ฑํ๋ค.
-
ํจํค์ง๋ ํฌ๊ฒ data, presentation, remote, local ๋ก ๋ถ๋ฆฌํ๋ค.
-
UiState
,UiEvent
์ ๊ด๋ จ๋ ์ฝ๋๋ ํ์ผ ๋ถ๋ฆฌํ๋,ViewModel
๊ณผ ๋์ผํ ํจํค์ง์ ๋ฃ๋๋ค. -
BindingAdapter
- ๊ณตํต์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ์๋
Common
- CustomView ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋
ํด๋น ํ์ผ ๋ด์ companion object
์ ์์นํ๋๋ก ํ๋ค. - ํน์ ํ๋ฉด์์๋ง ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ํด๋น
ํ๋ฉด package ์
์์ ๋ง๋ค์ด ์ฌ์ฉํ๋ค.
์์ ์๋ฃ
Resource ํ์ผ ๋ฐ ID ๋ค์ด๋ฐ์ ๊ธฐ๋ณธ์ ์ผ๋ก [where]_[what]
์ ๋ช
์ํ๋ค.
Event๋ฅผ ์ฒ๋ฆฌ ํ๋ ์ธํฐํ์ด์ค๋ XXXHandler
๋ก ํต์ผํ๋ค
๋ฐํ๊ฐ์ด ์๋ ํจ์๋ ๋น๋ ํจํด ๋ค์ด๋ฐ ํ์์ ๋ฐ๋ฅธ๋ค.
fun pocketBall(): PocketBall { .. }
// ๋ง์ฝ pocketBall ์ ์ด๋ ํ ๊ฐ๊ณต์ ํด์ ๋ฆฌํด๋ฐ์์ผ ํ๋ ๊ฒฝ์ฐ
fun availablePocketBall(): PorkcetBall { .. }
// entity
data class PocketMonEntity
// dto
data class PocketMonResponse
data class PocketMonRequest
// data - model (postfix X)
data class PocketMon
// UiModel
data class PocketMonUiModel
UiModel
-> Data
-> Dto
์ผ๋ก ๋จ๋ฐฉํฅ์ผ๋ก ํ๋ค.
์ด๋ฌํ ์์กด์ฑ ๋ฐฉํฅ์ ๊ตฌ๊ธ ๊ถ์ฅ ์ํคํ
์ฒ์ ๊ฐ๊น๋ค. (ํด๋ฆฐ ์ํคํ
์ฒ๊ฐ ์๋)
// -------------------------------------
package ~~~.presentation.model
data class PokemonUiModel(
...
)
fun Pokemon.toUi(): Pokemon = ...
// -------------------------------------
package ~~~.data.model
data class Pokemon(
...
)
fun PokemonResponse.toData(): Pokemon = ...
// -------------------------------------
package ~~~.dto.respoonse
data class PokemonResponse(
...
)
// -------------------------------------
feat : ์๋ก์ด ๊ธฐ๋ฅ ์ถ๊ฐ feat: ์ด์ฉ๊ตฌ ์ ์ฉ๊ตฌ ํ๋ค
ui : ui ๊ด๋ จ ์์
fix : ์๋ชป๋ ๋ถ๋ถ ์์
chore : ๋ฒ์ ์ฝ๋ ์์ , ํจํค์ง ๊ตฌ์กฐ ๋ณ๊ฒฝ, ํ์ผ ์ด๋, ๊ฐ๋ ์ฑ์ด๋ ๋ณ์๋ช , reformat ๋ฑ
refactor : ๋ด๋ถ ๋ก์ง์ ๋ณ๊ฒฝ ํ์ง ์๊ณ ๊ธฐ์กด์ ์ฝ๋๋ฅผ ๊ฐ์ ํ๋ ๋ฆฌํฉํ ๋ง ์
docs : README๋ WIKI ๋ฑ์ ๋ฌธ์ ๊ฐ์
build : gradle ๊ฐ์๊ฑฐ ๊ด๋ จ๋๊ฑฐ ์ถ๊ฐํ ๋
[vesion/type] ์์
๋ด์ฉ
ex)
[1.0.0/AN-UI] home XML ๊ตฌํ / ๊ท์น ๋ทฐ ๊ตฌํ
- Assignees : ์๊ธฐ ์์
- Labels : ์์
์ ํ (e.
an_feat
) - Projects : ์์
๊ด๋ จ ๋ณด๋ (e.
1์ฐจ ๋ฐฐํฌ
) - MileStone : ์์
๊ด๋ จ ๋ง์ผ์คํค (e.
ํฌ์ผ๋ก๊ทธ 1์ฐจ ๋ฐฐํฌ
)
[vesion/type] ์์
๋ด์ฉ
ex)
[1.0.0/AN-UI] home XML ๊ตฌํ / ๊ท์น ๋ทฐ ๊ตฌํ
- Reviewers : ์๋๋ก์ด๋ ํ์ ๋ชจ๋ ์ ํ
- Labels : PR, ์์ ํ์
- Projects : ์์
๊ด๋ จ ๋ณด๋ (e.
1์ฐจ ๋ฐฐํฌ
) - MileStone : ์์
๊ด๋ จ ๋ง์ผ์คํค (e.
ํฌ์ผ๋ก๊ทธ 1์ฐจ ๋ฐฐํฌ
) - Development : ํด๋น ์ด์ ์ฐ๊ฒฐ โ ๋จธ์ง์ ์๋์ผ๋ก ํด๋น ์ด์๊ฐ ๋ซํ๊ฒ ํด์ค
### ์์
๊ฐ์
### ์์
์ค๋ช
- ์์ธํ
- ๋ณด๋ ์ฌ๋ ์ดํด ์ฝ๊ฒ
### ์์
์ฌ์ง (์ ํ)
- ์์ผ๋ฉด ๋ณด๊ธฐ ํธํ ๋ฏ
### ๋ค์ ํ์คํฌ
- ์ด์๋ฅผ ์ถ๊ฐํ ๋ ํ๋ก์ ํธ๋ฅผ ์ ํํ๊ณ ์์ฑํ๋ฉด ์๋์ผ๋ก To-do ์์ ๋ค์ด๊ฐ๋ค
- PR์ ๋ง๋ค๋ฉด ์๋์ผ๋ก ์ถ๊ฐ๋๋ค
- ์ด์, PR์ด ๋ซํ๋ฉด ์๋์ผ๋ก ์ถ๊ฐ๋๋ค.