bky373 / kotlin-blackjack

๐Ÿ“ TDD, MVC ํŒจํ„ด์„ ํ™œ์šฉํ•œ ๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ๋„๋ฉ”์ธ ๊ตฌํ˜„(์ง์ ‘ ๊ตฌํ˜„, Readme ์ฐธ๊ณ )

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

๐Ÿƒ ๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ๋„๋ฉ”์ธ ๊ตฌํ˜„

Contents

  1. Intro
  2. ๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ์ฝ”๋“œ
  3. ๋‹ค๋ฅธ ๊ฒŒ์ž„ ์ฝ”๋“œ
  4. ๋ธ”๋ž™์žญ ๊ธฐ๋ณธ ๊ทœ์น™
  5. ๊ธฐ๋Šฅ ๊ตฌํ˜„ ๋ชฉ๋ก
  6. ๋ฐฐ์šด ์ 
  7. ๋Š๋‚€ ์ 

Intro

4์ฃผ ๋™์•ˆ NextStep์˜ Effective Kotlin 1๊ธฐ ๊ณผ์ •์— ์ฐธ์—ฌํ•˜์—ฌ
4๊ฐ€์ง€ ๊ฒŒ์ž„์˜ ๋„๋ฉ”์ธ ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—์„œ๋Š” TDD๋ฅผ ํ™œ์šฉํ•˜์—ฌ, ๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ๋„๋ฉ”์ธ ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์ง„ํ–‰ ๋ฐฉ์‹: next-step์˜ ๋น„์–ด์žˆ๋Š” ๊ฒŒ์ž„ Repository๋ฅผ Forkํ•˜๊ณ ,
์ˆ˜๊ฐ•์ƒ ๊ฐ์ž์˜ ๋กœ์ปฌ์—์„œ ๋กœ์ง์„ ๊ตฌํ˜„ํ•œ ํ›„ Pull Request -> Review -> Merge ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ณผ์ •์„ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ์ฝ”๋“œ

๋ธ”๋ž™์žญ ๊ฒŒ์ž„์˜ ๊ฒฝ์šฐ, step4 ๋ธŒ๋žœ์น˜์—์„œ ์™„์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ๊ฒŒ์ž„ ์ฝ”๋“œ

์ž๋™์ฐจ ๊ฒฝ์ฃผ
๋กœ๋˜
์ง€๋ขฐ์ฐพ๊ธฐ

๋ธ”๋ž™์žญ ๊ธฐ๋ณธ ๊ทœ์น™

  • ์นด๋“œ์˜ ์ˆซ์ž ๊ณ„์‚ฐ์€ ์นด๋“œ ์ˆซ์ž๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•˜๋ฉฐ, ์˜ˆ์™ธ๋กœ Ace๋Š” 1 ๋˜๋Š” 11๋กœ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, King, Queen, Jack์€ ๊ฐ๊ฐ 10์œผ๋กœ ๊ณ„์‚ฐํ•œ๋‹ค.
  • ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ•˜๋ฉด ์ฐธ๊ฐ€์ž๋Š” ๋‘ ์žฅ์˜ ์นด๋“œ๋ฅผ ์ง€๊ธ‰ ๋ฐ›์œผ๋ฉฐ, ๋‘ ์žฅ์˜ ์นด๋“œ ์ˆซ์ž๋ฅผ ํ•ฉ์ณ 21์„ ์ดˆ๊ณผํ•˜์ง€ ์•Š์œผ๋ฉด์„œ 21์— ๊ฐ€๊น๊ฒŒ ๋งŒ๋“ค๋ฉด ์ด๊ธด๋‹ค
  • 21์„ ๋„˜์ง€ ์•Š์„ ๊ฒฝ์šฐ, ์ฐธ๊ฐ€์ž๋Š” ์–ผ๋งˆ๋“ ์ง€ ์นด๋“œ๋ฅผ ๊ณ„์† ๋ฝ‘์„ ์ˆ˜ ์žˆ๋‹ค
  • ๋”œ๋Ÿฌ๋Š” ์ฒ˜์Œ์— ๋ฐ›์€ 2์žฅ์˜ ํ•ฉ๊ณ„๊ฐ€ 16์ดํ•˜์ด๋ฉด ๋ฐ˜๋“œ์‹œ 1์žฅ์˜ ์นด๋“œ๋ฅผ ์ถ”๊ฐ€๋กœ ๋ฐ›์•„์•ผ ํ•˜๊ณ , 17์  ์ด์ƒ์ด๋ฉด ์ถ”๊ฐ€๋กœ ๋ฐ›์„ ์ˆ˜ ์—†๋‹ค
  • Bust๋Š” ์นด๋“œ ์ ์ˆ˜ ํ•ฉ๊ณ„๊ฐ€ 21์„ ๋„˜์€ ๊ฒฝ์šฐ๋ฅผ ๋งํ•œ๋‹ค
  • BlackJack์€ ์ฒ˜์Œ 2์žฅ์˜ ์นด๋“œ ์ ์ˆ˜ ํ•ฉ๊ณ„๊ฐ€ 21์ธ ๊ฒฝ์šฐ๋ฅผ ๋งํ•œ๋‹ค

๊ธฐ๋Šฅ ๊ตฌํ˜„ ๋ชฉ๋ก

1. ๊ฒŒ์ž„ ์ƒ์„ฑ

  • ์ฐธ๊ฐ€์ž๋“ค์˜ ์ด๋ฆ„์„ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค (์‰ผํ‘œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌ)
  • ์ฐธ๊ฐ€์ž๋“ค์˜ ๋ฒ ํŒ… ๊ธˆ์•ก์„ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค
  • ์œ„ ๋‘ ๊ฐ€์ง€ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ๊ฒŒ์ž„์„ ์ƒ์„ฑํ•œ๋‹ค

2. ๊ฒŒ์ž„ ๊ธฐ๋ณธ ์„ธํŒ…

  • ๋”œ๋Ÿฌ๋Š” ์นด๋“œ 2์žฅ์„ ๋ฝ‘๋Š”๋‹ค

    ๋‘ ์žฅ ์ค‘ ์นด๋“œ ํ•œ ์žฅ์„ ์ถœ๋ ฅํ•œ๋‹ค
    ๋‘ ์žฅ์˜ ํ•ฉ๊ณ„๊ฐ€ 21์ด๋ฉด ์ƒํƒœ(Status)๋ฅผ BlackJack์œผ๋กœ ํ•œ๋‹ค (๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด Hit)

  • ์ฐธ๊ฐ€์ž๋“ค์€ ์นด๋“œ 2์žฅ์”ฉ ๋ฐ›๋Š”๋‹ค

    ๋ณด์œ  ์ค‘์ธ ์นด๋“œ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค
    ์ ์ˆ˜๊ฐ€ 21์ด๋ฉด ์ƒํƒœ(Status)๋ฅผ BlackJack์œผ๋กœ ํ•œ๋‹ค (๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด Hit)

3. ์ฐธ๊ฐ€์ž๋“ค ํ”Œ๋ ˆ์ด

  • ๊ฐ ์ฐธ๊ฐ€์ž์—๊ฒŒ ์นด๋“œ ํ•œ ์žฅ์„ ๋” ๋ฐ›์„ ๊ฑด์ง€ ๋ฌป๊ณ , ๋Œ€๋‹ต์„ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค (์˜ˆ๋Š” y, ์•„๋‹ˆ์˜ค๋Š” n)

    • y์ด๋ฉด ์นด๋“œ ํ•œ ์žฅ์„ ๋ฐ›๋Š”๋‹ค
      • ์ ์ˆ˜๊ฐ€ 21์„ ๋„˜์œผ๋ฉด ์ƒํƒœ๋ฅผ Bust๋กœ ํ•œ๋‹ค
      • ์ •ํ™•ํžˆ 21์ด๋ฉด Stay๋กœ ํ•œ๋‹ค
      • 21๋ณด๋‹ค ๋‚ฎ์œผ๋ฉด Hit์œผ๋กœ ํ•œ๋‹ค
      • ๋ณด์œ  ์ค‘์ธ ์นด๋“œ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค
    • n์ด๋ฉด ์นด๋“œ๋ฅผ ๋ฐ›์ง€ ์•Š๋Š”๋‹ค
      • ํ˜„์žฌ ์ƒํƒœ๊ฐ€ BlackJack, Bust๋ฉด ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•˜๊ณ , Hit์ด๋ฉด Stay๋กœ ๋ฐ”๊พผ๋‹ค
      • ์ฒ˜์Œ ๋‚˜๋ˆ ์ค€ ์นด๋“œ 2์žฅ๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ, ๋ณด์œ  ์ค‘์ธ ์นด๋“œ๋ฅผ ํ•œ ๋ฒˆ ๋” ์ถœ๋ ฅํ•œ๋‹ค

4. ๋”œ๋Ÿฌ ํ”Œ๋ ˆ์ด

  • ์ ์ˆ˜๊ฐ€ 17 ์ด์ƒ์ด ๋  ๋•Œ๊นŒ์ง€ ์นด๋“œ๋ฅผ ํ•œ ์žฅ์”ฉ ์ƒˆ๋กœ ๋ฝ‘๋Š”๋‹ค

    ์ ์ˆ˜๊ฐ€ 21์„ ๋„˜์œผ๋ฉด ์ƒํƒœ๋ฅผ Bust๋กœ ํ•œ๋‹ค

  • ๋”œ๋Ÿฌ ์ˆ˜์ต ๊ณ„์‚ฐ

    • ์ฐธ๊ฐ€์ž๊ฐ€ ๋”œ๋Ÿฌ ์ ์ˆ˜๋ณด๋‹ค ๋†’์œผ๋ฉด, ๋ฒ ํŒ…ํ•œ ๊ธˆ์•ก๋งŒํผ ์–ป๋Š”๋‹ค

    • ์ฐธ๊ฐ€์ž๊ฐ€ BlackJack์ด๋ฉด ๋ฒ ํŒ… ๊ธˆ์•ก์˜ 1.5 ๋ฐฐ๋ฅผ ๋ฐ›๋Š”๋‹ค

    • ๋”œ๋Ÿฌ์™€ ์ฐธ๊ฐ€์ž ๋ชจ๋‘ BlackJack์ด๋ฉด ์ฐธ๊ฐ€์ž๋Š” ๋ฒ ํŒ…ํ•œ ๊ธˆ์•ก์„ ๋Œ๋ ค๋ฐ›๋Š”๋‹ค

    • ์ฐธ๊ฐ€์ž๊ฐ€ ๋”œ๋Ÿฌ ์ ์ˆ˜๋ณด๋‹ค ๋‚ฎ๊ฑฐ๋‚˜, Bust์ด๋ฉด ๋ฒ ํŒ… ๊ธˆ์•ก์„ ๋ชจ๋‘ ์žƒ๋Š”๋‹ค

    • ๋”œ๋Ÿฌ๊ฐ€ Bust์ด๋ฉด ๊ทธ ์‹œ์ ๊นŒ์ง€ ๋‚จ์•„ ์žˆ๋˜ ์ฐธ๊ฐ€์ž๋“ค์€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํŒจ์— ์ƒ๊ด€ ์—†์ด ์Šน๋ฆฌํ•ด ๋ฒ ํŒ… ๊ธˆ์•ก์„ ๋ฐ›๋Š”๋‹ค

5. ๊ฒŒ์ž„ ์ข…๋ฃŒ

  • ๋”œ๋Ÿฌ์™€ ์ฐธ๊ฐ€์ž๋“ค์˜ ์นด๋“œ์™€ ์ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค
  • ๋”œ๋Ÿฌ์™€ ์ฐธ๊ฐ€์ž๋“ค์˜ ์ตœ์ข… ์ˆ˜์ต์„ ์ถœ๋ ฅํ•œ๋‹ค

๋ฐฐ์šด ์ 

๋ฐฐ์šด ๋‚ด์šฉ์— ๊ด€ํ•ด์„œ๋Š”,
๋ฌด์—‡๋ณด๋‹ค TDD, Clean Code, ๊ทธ๋ฆฌ๊ณ  OOP ๋‚ด์šฉ์ด ๋งŽ์ด ์ƒ๊ฐ๋‚ฉ๋‹ˆ๋‹ค.

์ด ๋ถ€๋ถ„์€ ์ˆ˜์—…์ด๋‚˜ ๋ฆฌ๋ทฐ ๋•Œ๋งˆ๋‹ค ๊ณ„์† ๊ฐ•์กฐํ•˜์…”์„œ
๋‚˜๋ฆ„.. ๋งŽ์ด ์‹ ๊ฒฝ์“ฐ๋ฉด์„œ ์ž‘์—…ํ–ˆ์Šต๋‹ˆ๋‹ค.

4๋ฒˆ์˜ ์ˆ˜์—…์ด ์ดˆ๋ณด์ž์—๊ฒŒ๋Š” ํ„ฑ์—†์ด ๋ถ€์กฑํ•œ ์‹œ๊ฐ„์ด์—ˆ์ง€๋งŒ,,
์ง€์‹์ด ์ „๋ฌดํ–ˆ์„ ๋•Œ๋ณด๋‹ค๋Š” ์„ฑ์žฅํ–ˆ๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ์—๋„,
TDD์™€ OOP๋งŒ ๋†“๊ณ  ๋ณธ๋‹ค๋ฉด ์†”์งํžˆ ์„ฑ์žฅํ–ˆ๋‹ค๊ณ  ๋งํ•˜๊ธฐ๋„ ์ข€ ๊ทธ๋ ‡๋„ค์š”ใ… ใ… 
ํŠนํžˆ ๋งˆ์ง€๋ง‰ ์ˆ˜์—…์—์„œ ์ƒํƒœ ํŒจํ„ด์„ ๋ฐฐ์› ์„ ๋•Œ,
๋‚ด๊ฐ€ ์•Œ๋˜ OOP๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ดˆ๋ณด์ ์ด์—ˆ๋Š”์ง€ ์ƒˆ์‚ผ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค,,

๋ณด๋‹ค ๊ตฌ์ฒด์ ์œผ๋กœ ๊ธฐ์–ต์— ๋‚จ๋Š” ๊ฑด
์•„๋ž˜ ์›์น™๋“ค์ž…๋‹ˆ๋‹ค.

  • README ํŒŒ์ผ ์ž‘์„ฑํ•˜๊ธฐ (๊ธฐ๋Šฅ ๋ชฉ๋ก ์ž‘์„ฑ ํ›„ ์ด๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ)

  • ํ•ต์‹ฌ ๋กœ์ง๊ณผ UI ๋กœ์ง ๋ถ„๋ฆฌํ•˜๊ธฐ

  • TDD (Red-Green-Refactoring) / ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๋งŒ๋“ค๊ธฐ

  • ๊ฐ€๋…์„ฑ์ด ์ข‹์€ ๋ณ€์ˆ˜ ์ด๋ฆ„, ํ•จ์ˆ˜ ์ด๋ฆ„, ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ

  • ํ•จ์ˆ˜์˜ ๋“ค์—ฌ์“ฐ๊ธฐ ๊ทœ์น™ ์ง€ํ‚ค๊ธฐ

  • if/else ์ค‘๋ณต ์ œ๊ฑฐํ•˜๊ธฐ

  • ๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ๊บผ๋‚ด์ง€ ๋ง๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๊ธฐ

  • ํ•„์š”ํ•˜๋‹ค๋ฉด ์ƒ์† ๊ตฌํ˜„ํ•˜๊ธฐ

  • ๋ถˆ๋ณ€ ๊ฐ์ฒด ๋งŒ๋“ค๊ธฐ

  • ์ผ๊ธ‰ ์ปฌ๋ ‰์…˜ ๋งŒ๋“ค๊ธฐ (์ด ๋ถ€๋ถ„์€ ์•„์ง ์ข€ ์–ด๋ ต๋„ค์š”..)

  • ๋“ฑ๋“ฑ ...

์—ฌ๊ธฐ์— ๋”ํ•˜์ž๋ฉด,
์กฐ๊ธˆ ๋” Kotlin์Šค๋Ÿฌ์šด ์ฝ”๋”ฉ ์Šคํƒ€์ผ

  • data class ์ด์šฉ

  • ๋žŒ๋‹ค์‹๊ณผ ํ”„๋กœํผํ‹ฐ ์ด์šฉ

  • ์—ฐ์‚ฐ์ž ์˜ค๋ฒ„๋กœ๋”ฉ

  • null์„ ์ด์šฉํ•œ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋“ฑ์ด ๋  ์ˆ˜ ์žˆ๊ฒ ๋„ค์š”.

๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ
git, slack๊ณผ ๋” ์นœํ•ด์ง„ ๊ฒƒ๊นŒ์ง€!

์•„๋ฌด๊ฒƒ๋„ ๋ชจ๋ฅด๋˜ ์ œ๊ฐ€ ์ด๊ฒƒ๋“ค์„ ์ง€ํ‚ค๊ณ  ํ™œ์šฉํ•ด๋ดค๋‹ค๋ฉด
๊ทธ๊ฒƒ ์ž์ฒด๋กœ๋„ ํ•œ์ธต ๋” ์„ฑ์žฅํ•œ ๊ฒŒ ์•„๋‹๊นŒ์š”!

๋ฌผ๋ก  ์ด์™ธ์—๋„ ์ •๋ง ์–ป์–ด๊ฐ€๋Š” ๊ฒŒ ๋งŽ์€ ์ˆ˜์—…์ด์—ˆ์Šต๋‹ˆ๋‹ค.
์•ž์œผ๋กœ ์‹ฌํ™” ๊ณผ์ •์ด ์—ด๋ฆฐ๋‹ค๋ฉด ๊ผญ ์ฐธ์—ฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค!!

๋Š๋‚€ ์ 

์ฒ˜์Œ์—๋Š” ๊ณผ์ •์ด ์žฌ์ง์ž ๋Œ€์ƒ์ด์—ˆ๊ณ , ๋‚ฏ์„  ์–ธ์–ด์ธ ์ฝ”ํ‹€๋ฆฐ์œผ๋กœ ์ง„ํ–‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์—,
๋‘ ๊ฐ€์ง€ ์กฐ๊ฑด์—์„œ ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€์—ˆ๋˜ ์ €๋Š” ์ˆ˜๊ฐ•์ƒ๋“ค๊ณผ์˜ ๊ฒฉ์ฐจ๊ฐ€ ๊ฑฑ์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ํ˜„์ง์ž์˜ ํ”ผ๋“œ๋ฐฑ์„ ๊ผญ ๋“ฃ๊ณ  ์‹ถ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ•์˜๋ฅผ ํฌ๊ธฐํ•˜๋Š” ๋Œ€์‹  ์ฝ”ํ‹€๋ฆฐ ์„ ํ–‰ํ•™์Šต์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ดˆ๊ธฐ์—๋Š” ์ฑ…๊ณผ ์œ ํŠœ๋ธŒ๋ฅผ ๋ณด๋ฉฐ ๊ณ„์‚ฐ๊ธฐ ์–ดํ”Œ ๋“ฑ์„ ๋งŒ๋“ค์–ด๋ณด์•˜๊ณ ,
์—ฌ๊ธฐ์„œ ์–ป์€ ๋งŒ์กฑ๊ฐ์œผ๋กœ ๊ณ„์† ๋™๊ธฐ ๋ถ€์—ฌ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.
์ดํ›„ ๋”์šฑ ํ•™์Šต์— ๋ชฐ์ž…ํ•ด 'Udacity' ๋“ฑ ์˜จ๋ผ์ธ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ–ˆ์Šต๋‹ˆ๋‹ค.
์ฝ”ํ‹€๋ฆฐ์˜ ๋ฌธ๋ฒ•์„ ์ตํžˆ๊ณ  ์ž๋ฐ”์™€ ๋น„๊ตํ•˜๋Š” ๊ณผ์ •์ด ์žฌ๋ฐŒ์—ˆ๊ณ ,
์ด๋Ÿฌํ•œ ๊ฒฝํ—˜์€ ๋ณธ๊ฒฉ์ ์ธ ๊ณผ์ •์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „ ์ž์‹ ๊ฐ์„ ๊ฐ–๊ฒŒ ํ•ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ณผ์ •์„ ์‹œ์ž‘ํ•œ ์ดํ›„์—๋Š” ์ฑ… 'Kotlin In Action'๋„ ์กฐ๊ธˆ์”ฉ ์ฐธ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.
data class๋‚˜ null-safety ๋“ฑ ์ฝ”ํ‹€๋ฆฐ์— ๋Œ€ํ•œ ์ง€์‹์„ ๋„“ํ˜”๊ณ , ๊ตฌํ˜„ํ•œ ์ฝ”๋“œ์— ์ด๋ฅผ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ•œ ๋ฒˆ์€ ์ด๋ ‡๊ฒŒ ์ฑ…์„ ์ฐธ๊ณ ํ•ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ–ˆ๋Š”๋ฐ, ๋ฆฌ๋ทฐ์–ด๋‹˜์ด ๋กœ์ง์„ ์ž˜ ๋ฆฌํŒฉํ† ๋งํ–ˆ๋‹ค๋Š” ์นญ์ฐฌ์„ ํ•ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค.
ํ˜„์ง์ž๋กœ๋ถ€ํ„ฐ ์นญ์ฐฌ์„ ๋“ค์—ˆ์„ ๋• ๋‹ค๋ฅธ ์–ด๋Š ๋•Œ๋ณด๋‹ค ๋ฟŒ๋“ฏํ–ˆ๊ณ , ํ›จ์”ฌ ๊ฐ•๋ ฅํ•œ ์„ฑ์ทจ๊ฐ์„ ๋Š๋‚„ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ๊ฒฝํ—˜๊ณผ ์‹ค๋ ฅ์ด ํ•œ์ฐธ ๋ถ€์กฑํ•˜๋‹ค๋Š” ์ƒ๊ฐ์—, ์‚ฌ์‹ค ๋งŽ์ด ๋‘๋ ค์› ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๊ณผ์ •์„ ๊ผญ ์ˆ˜๋ฃŒํ•ด์•ผ๊ฒ ๋‹ค๋Š” ์˜์ง€๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์—,
์–ด๋–ค ์ž๋ฆฌ(๋ฒ„์Šค, ์ง€ํ•˜์ฒ )๊ฐ€ ๋˜์—ˆ๋“ , ์–ด๋–ค ์‹œ๊ฐ„์ด ๋˜์—ˆ๋“  ์ฝ”๋”ฉ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๊ฒฐ๊ตญ ๋ชจ๋“  ๋ฏธ์…˜์„ ํ†ต๊ณผํ•˜์˜€์Šต๋‹ˆ๋‹ค.
๋‹ค ์‚ฌ๋žŒ์ด ํ•˜๋Š” ์ผ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ถˆ๊ฐ€๋Šฅํ•œ ์ผ์€ ์—†๋‹ค๋Š” ๊ฒƒ, ์ด๋ฒˆ์„ ๊ณ„๊ธฐ๋กœ ๋ชธ์†Œ ๋ฐฐ์šฐ๊ณ  ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค.

About

๐Ÿ“ TDD, MVC ํŒจํ„ด์„ ํ™œ์šฉํ•œ ๋ธ”๋ž™์žญ ๊ฒŒ์ž„ ๋„๋ฉ”์ธ ๊ตฌํ˜„(์ง์ ‘ ๊ตฌํ˜„, Readme ์ฐธ๊ณ )


Languages

Language:Kotlin 100.0%