Skip to content

๐Ÿ’ต ๋กœ๋˜ ๊ฒŒ์ž„ ๊ตฌํ˜„

Notifications You must be signed in to change notification settings

gonza-st/lotto-playground

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Lotto Playground

๋ธŒ๋žœ์น˜

  • ๋ณธ์ธ์˜ ๊นƒํ—™ ์•„์ด๋”” ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ex) currenjin <-- main ์—ญํ• 
  • ํ•ด๋‹น ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…์šฉ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ex) currenjin/features <-- feature ์—ญํ• 
  • ์ž‘์—…์ด ์™„๋ฃŒ๋˜๋ฉด ๋ณธ์ธ์˜ ๊นƒํ—™ ์•„์ด๋”” ๋ธŒ๋žœ์น˜๋กœ PR์„ ์˜ฌ๋ฆฐ๋‹ค. ex) currenjin <- currenjin/features PR
  • ๋ฆฌ๋ทฐ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ๋ชจ๋“  ์ฐธ์—ฌ์ž๊ฐ€ Approveํ•˜๋ฉด Mergeํ•œ๋‹ค.

๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ

  • ๋กœ๋˜ ๊ตฌ์ž… ๊ธˆ์•ก์„ ์ž…๋ ฅํ•˜๋ฉด ๊ตฌ์ž… ๊ธˆ์•ก์— ํ•ด๋‹นํ•˜๋Š” ๋กœ๋˜๋ฅผ ๋ฐœ๊ธ‰ํ•ด์•ผ ํ•œ๋‹ค.
  • ๋กœ๋˜ 1์žฅ์˜ ๊ฐ€๊ฒฉ์€ 1000์›์ด๋‹ค.
  • ๊ตฌํ˜„์€ README -> README-1 -> README-2 ์ˆœ์œผ๋กœ ๋ฐ˜๋“œ์‹œ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๋ฉฐ ๋’ค์˜ ๊ตฌํ˜„์„ ๋ฏธ๋ฆฌ๋ณด๊ณ  ์ƒ๊ฐํ•ด์„œ ๊ตฌ์กฐ๋ฅผ ์ •ํ•˜์ง€ ์•Š๋Š”๋‹ค

์‹คํ–‰ ๊ฒฐ๊ณผ

๊ตฌ์ž…๊ธˆ์•ก์„ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”.
14000
14๊ฐœ๋ฅผ ๊ตฌ๋งคํ–ˆ์Šต๋‹ˆ๋‹ค.
[8, 21, 23, 41, 42, 43]
[3, 5, 11, 16, 32, 38]
[7, 11, 16, 35, 36, 44]
[1, 8, 11, 31, 41, 42]
[13, 14, 16, 38, 42, 45]
[7, 11, 30, 40, 42, 43]
[2, 13, 22, 32, 38, 45]
[23, 25, 33, 36, 39, 41]
[1, 3, 5, 14, 22, 45]
[5, 9, 38, 41, 43, 44]
[2, 8, 9, 18, 19, 21]
[13, 14, 18, 21, 23, 35]
[17, 21, 29, 37, 42, 45]
[3, 8, 27, 30, 35, 44]

๋‹น์ฒจ ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”.
1, 2, 3, 4, 5, 6

๋‹น์ฒจ ํ†ต๊ณ„
---------
3๊ฐœ ์ผ์น˜ (5,000์›)- 1๊ฐœ
4๊ฐœ ์ผ์น˜ (50,000์›)- 0๊ฐœ
5๊ฐœ ์ผ์น˜ (1,500,000์›)- 0๊ฐœ
6๊ฐœ ์ผ์น˜ (2,000,000,000์›)- 0๊ฐœ
์ด ์ˆ˜์ต๋ฅ ์€ 0.35์ž…๋‹ˆ๋‹ค.(๊ธฐ์ค€์ด 1์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฐ๊ณผ์ ์œผ๋กœ ์†ํ•ด๋ผ๋Š” ์˜๋ฏธ์ž„)

ํžŒํŠธ

  • ๋กœ๋˜ ์ž๋™ ์ƒ์„ฑ์€ Collections.shuffle() ๋ฉ”์†Œ๋“œ ํ™œ์šฉํ•œ๋‹ค.
  • Collections.sort() ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•ด ์ •๋ ฌ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ArrayList์˜ contains() ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ์–ด๋–ค ๊ฐ’์ด ์กด์žฌํ•˜๋Š”์ง€ ์œ ๋ฌด๋ฅผ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”๊ตฌ์‚ฌํ•ญ

  • ์ž๋ฐ” ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์ง€ํ‚ค๋ฉด์„œ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•œ๋‹ค.
    • ๊ธฐ๋ณธ์ ์œผ๋กœ Google Java Style Guide์„ ์›์น™์œผ๋กœ ํ•œ๋‹ค.
    • ๋‹จ, ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” '2 spaces'๊ฐ€ ์•„๋‹Œ '4 spaces'๋กœ ํ•œ๋‹ค.
  • indent(์ธ๋ดํŠธ, ๋“ค์—ฌ์“ฐ๊ธฐ) depth๋ฅผ 3์ด ๋„˜์ง€ ์•Š๋„๋ก ๊ตฌํ˜„ํ•œ๋‹ค. 2๊นŒ์ง€๋งŒ ํ—ˆ์šฉํ•œ๋‹ค.
    • ์˜ˆ๋ฅผ ๋“ค์–ด while๋ฌธ ์•ˆ์— if๋ฌธ์ด ์žˆ์œผ๋ฉด ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” 2์ด๋‹ค.
    • ํžŒํŠธ: indent(์ธ๋ดํŠธ, ๋“ค์—ฌ์“ฐ๊ธฐ) depth๋ฅผ ์ค„์ด๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์€ ํ•จ์ˆ˜(๋˜๋Š” ๋ฉ”์†Œ๋“œ)๋ฅผ ๋ถ„๋ฆฌํ•˜๋ฉด ๋œ๋‹ค.
  • else ์˜ˆ์•ฝ์–ด๋ฅผ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
    • ํžŒํŠธ: if ์กฐ๊ฑด์ ˆ์—์„œ ๊ฐ’์„ returnํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•˜๋ฉด else๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.
    • else๋ฅผ ์“ฐ์ง€ ๋ง๋ผ๊ณ  ํ•˜๋‹ˆ switch/case๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ switch/case๋„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • 3ํ•ญ ์—ฐ์‚ฐ์ž๋ฅผ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
  • ํ•จ์ˆ˜(๋˜๋Š” ๋ฉ”์†Œ๋“œ)๊ฐ€ ํ•œ ๊ฐ€์ง€ ์ผ๋งŒ ํ•˜๋„๋ก ์ตœ๋Œ€ํ•œ ์ž‘๊ฒŒ ๋งŒ๋“ค์–ด๋ผ.
  • ๋ชจ๋“  ๊ธฐ๋Šฅ์„ TDD๋กœ ๊ตฌํ˜„ํ•ด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๊ฐ€ ์กด์žฌํ•ด์•ผ ํ•œ๋‹ค. ๋‹จ, UI(System.out, System.in) ๋กœ์ง์€ ์ œ์™ธ
    • ํ•ต์‹ฌ ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๋Š” ์ฝ”๋“œ์™€ UI๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๋กœ์ง์„ ๊ตฌ๋ถ„ํ•œ๋‹ค.
    • UI ๋กœ์ง์„ InputView, ResultView์™€ ๊ฐ™์€ ํด๋ž˜์Šค๋ฅผ ์ถ”๊ฐ€ํ•ด ๋ถ„๋ฆฌํ•œ๋‹ค.
  • ๋ชจ๋“  ์›์‹œ ๊ฐ’๊ณผ ๋ฌธ์ž์—ด์„ ํฌ์žฅํ•œ๋‹ค.
  • ์ผ๊ธ‰ ์ปฌ๋ ‰์…˜์„ ์“ด๋‹ค.

๊ธฐ๋Šฅ ๋ชฉ๋ก ๋ฐ commit ๋กœ๊ทธ ์š”๊ตฌ์‚ฌํ•ญ

  • ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์ „์— README.md ํŒŒ์ผ์— ๊ตฌํ˜„ํ•  ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ์ •๋ฆฌํ•ด ์ถ”๊ฐ€ํ•œ๋‹ค.
  • git์˜ commit ๋‹จ์œ„๋Š” ์•ž ๋‹จ๊ณ„์—์„œ README.md ํŒŒ์ผ์— ์ •๋ฆฌํ•œ ๊ธฐ๋Šฅ ๋ชฉ๋ก ๋‹จ์œ„๋กœ ์ถ”๊ฐ€ํ•œ๋‹ค.
    • ์ฐธ๊ณ ๋ฌธ์„œ: AngularJS Commit Message Conventions

AngularJS Commit Message Conventions ์ค‘

  • commit message ์ข…๋ฅ˜๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ๋ถ„
feat (feature)
fix (bug fix)
docs (documentation)
style (formatting, missing semi colons, โ€ฆ)
refactor
test (when adding missing tests)
chore (maintain)

About

๐Ÿ’ต ๋กœ๋˜ ๊ฒŒ์ž„ ๊ตฌํ˜„

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published