Skip to content

๐Ÿ‘— UMC 7๊ธฐ PM DAY ํ”„๋กœ์ ํŠธ : Upstyle - ์ผ์ƒ ์† ํŒจ์…˜ ์Šคํƒ€์ผ์„ ๊ธฐ๋กยท๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” Android ์•ฑ

Notifications You must be signed in to change notification settings

UMC-UPSTYLE/upstyle-android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

403 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

upstyle-android

<Github ํ™˜๊ฒฝ ์„ค์ •>

  • ์‚ฌ์šฉํ•  ๊ธฐ์ˆ  ์Šคํƒ: Kotlin
  • ์‚ฌ์šฉํ•  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
    • Glide: ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ
    • Retrofit: HTTP API๋ฅผ ์‰ฝ๊ฒŒ ํ˜ธ์ถœํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
    • flexbox: ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ์„ ์œ„ํ•ด ์‚ฌ์šฉ
    • navigation component: Fragment ์ „ํ™˜์„ ์œ„ํ•ด ์‚ฌ์šฉ

Branch ์ „๋žต

Git-Flow ์ „๋žต์„ ์‚ฌ์šฉ.

  • master : ์ œํ’ˆ์œผ๋กœ ์ถœ์‹œ๋  ์ˆ˜ ์žˆ๋Š” ๋ธŒ๋žœ์น˜
  • develop : ๋‹ค์Œ ์ถœ์‹œ ๋ฒ„์ „์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • feature : ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • release : ์ด๋ฒˆ ์ถœ์‹œ ๋ฒ„์ „์„ ์ค€๋น„ํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • hotfix : ์ถœ์‹œ ๋ฒ„์ „์—์„œ ๋ฐœ์ƒํ•œ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ธŒ๋žœ์น˜

โ‡’ ์ž‘์—…์€ ๊ฐ์ž feature_(n์ฃผ์ฐจ)_(์ž‘์—…์ž๋ช…) ๋ธŒ๋žœ์น˜์—์„œ ํ•˜๊ณ  ๋‹ค ๋๋‚˜๋ฉด develop ๋ธŒ๋žœ์น˜์— merge

(merge ์ดํ›„์—๋Š” ์ž‘์—…ํ•œ feature ๋ธŒ๋žœ์น˜ ์‚ญ์ œ)


Commit convention

  • ๊ธฐ๋ณธ์ ์ธ ํ˜•์‹์€ ์ œ๋ชฉ, ๋ณธ๋ฌธ, ๊ผฌ๋ฆฌ๋ง ์„ธ ๊ฐ€์ง€ ํŒŒํŠธ

  • ์ œ๋ชฉ ํ˜•์‹ Type: ์ œ๋ชฉ ๋‚ด์šฉ

    Type:(๊ณต๋ฐฑ 1์นธ)์ œ๋ชฉ ๋‚ด์šฉ.

    ex) Feat: ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„

  • Type ๋ชฉ๋ก

    • Featย : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • Fixย : ๋ฒ„๊ทธ ์ˆ˜์ •
    • Docsย : ๋ฌธ์„œ ์ˆ˜์ •
    • Styleย : ์ฝ”๋“œ ํฌ๋งทํŒ…, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ์ฝ”๋“œ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
    • Refactorย : ์ฝ”๋“œ ๋ฆฌํŽ™ํ† ๋ง
    • Testย : ํ…Œ์ŠคํŠธ ์ฝ”๋“œ, ๋ฆฌํŽ™ํ† ๋ง ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€
    • Choreย : ๋นŒ๋“œ ์—…๋ฌด ์ˆ˜์ •, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์ˆ˜์ •
    • Style : ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ์ˆ˜์ •

Code convention

๊ธฐ๋ณธ์ ์œผ๋กœ ์ฝ”ํ‹€๋ฆฐ ๊ณต์‹ ๋ฌธ์„œ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ฝ”๋“œ ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ(https://kotlinlang.org/docs/coding-conventions.html#source-code-organization)๋ฅผ ๋”ฐ๋ฆ„

  • ์†Œ์ŠคํŒŒ์ผ ์ด๋ฆ„

    • Kotlin ํŒŒ์ผ์— ๋‹จ์ผ ํด๋ž˜์Šค ๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค(๊ด€๋ จ๋œ ์ตœ์ƒ์œ„ ์„ ์–ธ์„ ํฌํ•จํ•  ์ˆ˜๋„ ์žˆ์Œ)๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ํŒŒ์ผ์˜ ์ด๋ฆ„์€ ํด๋ž˜์Šค์˜ ์ด๋ฆ„๊ณผ ๋™์ผํ•˜๋ฉฐ ํ™•์žฅ์ž๋กœ .kt๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•จ.
    • ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ์“ฐ๊ณ  ๋‚˜๋จธ์ง€๋Š” ๋Œ€๋ฌธ์ž์™€ ์†Œ๋ฌธ์ž๋ฅผ ํ˜ผ์šฉํ•˜๋Š” ๋Œ€๋ฌธ์ž ์นด๋ฉœ ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•จ.
  • ํด๋ž˜์Šค ๋ ˆ์ด์•„์›ƒ

    • ํด๋ž˜์Šค์˜ ๋‚ด์šฉ์€ ๋‹ค์Œ ์ˆœ์„œ๋กœ ์ž‘์„ฑ๋˜์–ด์•ผ ํ•จ.
      1. ์†์„ฑ ์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™” ๋ธ”๋ก
      2. ๋ณด์กฐ ์ƒ์„ฑ์ž
      3. ๋ฉ”์„œ๋“œ ์„ ์–ธ
      4. Companion object
  • ๋„ค์ด๋ฐ ๋ฃฐ

    • ํŒจํ‚ค์ง€ ์ด๋ฆ„์€ ํ•ญ์ƒ ์†Œ๋ฌธ์ž๋กœ ์ž‘์„ฑํ•˜๊ณ  ์–ธ๋”์Šค์ฝ”์–ด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ. (org.example.project)
    • ์—ฌ๋Ÿฌ ๋‹จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ถŒ์žฅ๋˜์ง€ ์•Š์ง€๋งŒ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋‹จ์–ด๋ฅผ ์—ฐ๊ฒฐํ•˜๊ฑฐ๋‚˜ ์นด๋ฉœ ์ผ€์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ. (org.example.myProject).
    • ํด๋ž˜์Šค์™€ ๊ฐ์ฒด์˜ ์ด๋ฆ„์€ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๊ณ  ์นด๋ฉœ ์ผ€์ด์Šค๋ฅผ ์‚ฌ์šฉํ•จ.
    • ๋ฉ”์†Œ๋“œ, ์†์„ฑ ๋ฐ ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์€ ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๊ณ  ์บ๋ฉ€ ์ผ€์ด์Šค(camel case)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ ๋ฐ‘์ค„์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ.
    • ์ƒ์ˆ˜์˜ ์ด๋ฆ„(๊ฐ’์ด ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ์†์„ฑ์œผ๋กœ const๋กœ ํ‘œ์‹œ๋˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ์ž ์ง€์ • get ํ•จ์ˆ˜๊ฐ€ ์—†๋Š” ์ตœ์ƒ์œ„ ๋˜๋Š” ๊ฐ์ฒด val ์†์„ฑ)์€ ๋Œ€๋ฌธ์ž ๋ฐ‘์ค„๋กœ ๊ตฌ๋ถ„๋œ ์ด๋ฆ„(Screaming Snake Case)์„ ์‚ฌ์šฉํ•ด์•ผ ํ•จ.
    • xml ํŒŒ์ผ๋ช…์€ _ ์ˆœ์œผ๋กœ ์ž‘์„ฑ (iv_main_background.xml)

<Android Studio ํ™˜๊ฒฝ ์„ค์ •>

  • Android Studio ๋ฒ„์ „: Koala Feature Drop 2024.1.2

  • targetSDK: 35

  • minSDK: 24

  • IDE ๋‚ด Emulator๋กœ ํ…Œ์ŠคํŠธ

About

๐Ÿ‘— UMC 7๊ธฐ PM DAY ํ”„๋กœ์ ํŠธ : Upstyle - ์ผ์ƒ ์† ํŒจ์…˜ ์Šคํƒ€์ผ์„ ๊ธฐ๋กยท๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” Android ์•ฑ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages