๐Ÿš€
Growth log
  • About me
  • I LEARNED
    • General
      • ๊ฐœ๋ฐœ์ž ๊ฟ€ํŒ
      • ๊ทธ๋กœ์Šคํ•ดํ‚น ๊ธฐ์ดˆ
      • ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋„๋ฉ”์ธ ์ง€์‹์€ ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ• ๊นŒ?
      • DTO ๋…ผ์Ÿ์— ๋Œ€ํ•˜์—ฌ
      • MSA๋ž€?
    • Seminar
      • ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 100% - SLASH 21
      • TDD๊ฐ€ ์‹คํŒจํ•˜๋Š” ์ด์œ  - by ์ด๊ทœ์›๋‹˜
      • ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ ํŠœ๋‹ ๋…ธํ•˜์šฐ ๋‹ค ์•Œ๋ ค ๋“œ๋ฆผ|๋ผ์ธ๊ฐœ๋ฐœ์‹ค๋ก
      • ๊ฒฐ์ œ ์‹œ์Šคํ…œ์˜ SDK์™€ API ๋””์ž์ธ - SLASH 21
    • Web
      • SOP์™€ CORS
    • Spring & OOP
      • DTO vs VO
    • Ruby On Rails
      • Rails lib ๋””๋ ‰ํ† ๋ฆฌ์— ๋Œ€ํ•˜์—ฌ
      • Rails์˜ concerns๋ž€?
      • Rails์—์„œ์˜ GC ์ž‘๋™์›๋ฆฌ
      • Eager loading vs Lazy loading
      • Rails ํ™˜๊ฒฝ ๊ตฌ์„ฑ
      • ActionCable
      • ๐Ÿ“”Perfect ruby on rails
        • MVC ํŒจํ„ด์ธ Rails
        • Ruby on Rails ๊ธฐ๋ณธ - ์ปจํŠธ๋กค๋Ÿฌ
        • Ruby on Rails ๊ธฐ๋ณธ - ๋ทฐ
        • Ruby on Rails ๊ธฐ๋ณธ - ๋ชจ๋ธ
        • ์Šค์บํด๋”ฉ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•œ Rails ๊ฐœ๋ฐœ ๊ธฐ์ดˆ
        • ๋ทฐ ๊ฐœ๋ฐœ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋‚™๊ด€์  ๋™์‹œ ์‹คํ–‰ ์ œ์–ด
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ตฌํ˜„
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - Association
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ์ฝœ๋ฐฑ
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜
        • ๋ชจ๋ธ ๊ฐœ๋ฐœ - ๋ฐ์ดํ„ฐ ์ดˆ๊ธฐํ™”
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์š”์ฒญ ์ •๋ณด ์ถ”์ถœ
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์‘๋‹ต
        • ์ปจํŠธ๋กค๋Ÿฌ ๊ฐœ๋ฐœ - ์ƒํƒœ ๊ด€๋ฆฌ
        • ๋ผ์šฐํŒ… - RESTful
        • ๋ผ์šฐํŒ… - RESTful ์ธํ„ฐํŽ˜์ด์Šค์˜ ์‚ฌ์šฉ์ž ์ •์˜ํ™”
        • ๋ผ์šฐํŒ… - RESTful ํ•˜์ง€ ์•Š์€ ๋ผ์šฐํŠธ ์ •์˜
        • ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - ์ค€๋น„
        • ํ…Œ์ŠคํŠธ - Unit ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - Functional ํ…Œ์ŠคํŠธ
        • ํ…Œ์ŠคํŠธ - Integration ํ…Œ์ŠคํŠธ
        • ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ - Sprockets vs Webpacker
        • ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ - Sprockets
    • Node.js & Express
      • ๊ธฐ๋ณธ ๊ฐœ๋…
      • npx
    • Programing Language
      • Java
        • JavaDoc์— ๋Œ€ํ•ด
        • invocation์— ๋Œ€ํ•ด์„œ
        • ์–ด๋…ธํ…Œ์ด์…˜
        • ์ถ”์ƒํด๋ž˜์Šค & ์ธํ„ฐํŽ˜์ด์Šค
        • Package
        • ์˜ค๋ฒ„๋กœ๋”ฉ vs ์˜ค๋ฒ„๋ผ์ด๋”ฉ
      • Javascript
        • TCP School ํ›‘์–ด๋ณด๊ธฐ
          • ํƒ€์ž…
          • ํ˜• ๋ณ€ํ™˜
          • ๋ณ€์ˆ˜
          • ์—ฐ์‚ฐ์ž
          • ๋ฐ˜๋ณต๋ฌธ
          • ๋ฐฐ์—ด(array)
          • ํ•จ์ˆ˜
          • ํ•จ์ˆ˜ - ์Šค์ฝ”ํ”„์™€ ํ˜ธ์ด์ŠคํŒ…
          • ํ•จ์ˆ˜ - ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ธ์ˆ˜
          • ํ•จ์ˆ˜ - ๋ฏธ๋ฆฌ ์ •์˜๋œ ์ „์—ญ ํ•จ์ˆ˜
          • ๊ฐ์ฒด
          • ํ”„๋กœํ† ํƒ€์ž…
          • DOM
          • BOM - Window ๊ฐ์ฒด
          • ์ด๋ฒคํŠธ(event)
      • Ruby
        • ๐Ÿ“”ํผํŽ™ํŠธ ๋ฃจ๋น„
    • DB
      • Redis
        • Redis ๊ฐœ์š”
      • Index(์ธ๋ฑ์Šค)?
      • DB Transaction & Lock
      • ๋™์‹œ์„ฑ ์ œ์–ด์— ๊ด€ํ•˜์—ฌ
      • Lock(์ž ๊ธˆ)์ด๋ž€?
      • ActiveRecord lock vs with_lock
      • Table lock vs Row lock
      • WHERE 1=1 ๊ตฌ๋ฌธ์— ๋Œ€ํ•˜์—ฌ
      • COUNT(*) vs COUNT(indexed column)
      • ๐Ÿ“•๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹ค์ „์ž…๋ฌธ
      • ๐Ÿ“”SQL ์ฒซ๊ฑธ์Œ
      • ๐Ÿ“”๋ชจ๋‘์˜ SQL
    • Design Patterns
      • Observer pattern
      • Flyweight pattern
      • Singleton pattern
    • OOP
      • ๐Ÿ“”์˜ค๋ธŒ์ ํŠธ
        • 6์žฅ ๋ฉ”์‹œ์ง€์™€ ์ธํ„ฐํŽ˜์ด์Šค
      • ํด๋ž˜์Šค๊ฐ„ ๊ด€๊ณ„ ๊ฐ„๋‹จ ์ •๋ฆฌ
    • Regex
    • Collaboration
      • Git
      • Sourcetree
  • DAILY REVIEW
    • 2021
      • August
        • 2021-08-25(Wed)
        • 2021-08-23(Mon)
        • 2021-08-11(Wed)
        • 2021-08-04(Wed)
        • 2021-08-03(Tue)
        • 2021-08-02(Mon)
      • July
        • 2021-07-29(Thu)
        • 2021-07-26(Mon)
        • 2021-07-23(Fri)
        • 2021-07-22(Thu)
        • 2021-07-21(Wed)
        • 2021-07-20(Tue)
        • 2021-07-19(Mon)
        • 2021-07-15(Thu)
        • 2021-07-14(Wed)
        • 2021-07-13(Tue)
        • 2021-07-12(Mon)
      • June
        • 2021-06-05(Sat)
        • 2021-06-04(Fri)
        • 2021-06-03(Thu)
        • 2021-06-02(Wed)
        • 2021-06-01(Tue)
      • May
        • 2021-05-31(Mon)
        • 2021-05-29(Sat)
        • 2021-05-28(Fri)
        • 2021-05-27(Thu)
        • 2021-05-26(Wed)
        • 2021-05-25(Tue)
        • 2021-05-24(Mon)
        • 2021-05-22(Sat)
        • 2021-05-21(Fri)
        • 2021-05-20(Thu)
        • 2021-05-19(Wed)
        • 2021-05-18(Tue)
        • 2021-05-17(Mon)
        • 2021-05-15(Sat)
        • 2021-05-13(Thu)
        • 2021-05-12(Wed)
        • 2021-05-11(Tue)
        • 2021-05-10(Mon)
        • 2021-05-03(Mon)
      • April
        • 2021-04-30(Fri)
        • 2021-04-29(Thu)
        • 2021-04-28(Wed)
        • 2021-04-27(Tue)
        • 2021-04-26(Mon)
        • 2021-04-24(Sat)
        • 2021-04-23(Fri)
        • 2021-04-21(Wed)
        • 2021-04-20(Tue)
        • 2021-04-19(Mon)
        • 2021-04-18(Sun)
        • 2021-04-16(Fri)
        • 2021-04-15(Thu)
        • 2021-04-14(Wed)
        • 2021-04-12(Mon)
        • 2021-04-11(Sun)
        • 2021-04-09(Fri)
        • 2021-04-08(Thu)
        • 2021-04-06(Tue)
        • 2021-04-05(Mon)
        • 2021-04-04(Sun)
        • 2021-04-03(Sat)
        • 2021-04-02(Fri)
        • 2021-04-01(Thu)
      • March
        • 2021-03-29(Mon)
        • 2021-03-28(Sun)
        • 2021-03-26(Fri)
        • 2021-03-25(Thu)
        • 2021-03-24(Wed)
        • 2021-03-23(Tue)
        • 2021-03-22(Mon)
        • 2021-03-21(Sun)
        • 2021-03-20(Sat)
        • 2021-03-17(Wed)
        • 2021-03-16(Tue)
        • 2021-03-15(Mon)
        • 2021-03-12(Fri)
        • 2021-03-11(Thu)
        • 2021-03-10(Wed)
        • 2021-03-09(Tue)
        • 2021-03-08(Mon)
        • 2021-03-07(Sun)
        • 2021-03-05(Fri)
        • 2021-03-03(Wed)
        • 2021-03-02(Tue)
        • 2021-03-01(Mon)
      • Feb
        • 2021-02-26(Fri)
        • 2021-02-25(Thu)
        • 2021-02-24(Wed)
        • 2021-02-23(Tue)
        • 2021-02-22(Mon)
        • 2021-02-19(Fri)
        • 2021-02-18(Thu)
        • 2021-02-17(Wed)
        • 2021-02-16(Tue)
        • 2021-02-15(Mon)
        • 2021-02-14(Sun)
        • 2021-02-13(Sat)
        • 2021-02-12(Fri)
        • 2021-02-10(Wed)
        • 2021-02-09(Tue)
        • 2021-02-08(Mon)
        • 2021-02-07(Sun)
        • 2021-02-05(Fri)
        • 2021-02-03(Wed)
        • 2021-02-02(Tue)
        • 2021-02-01(Mon)
      • Jan
        • 2021-01-29(Fri)
        • 2021-01-28(Thu)
        • 2021-01-27(Wed)
        • 2021-01-26(Tue)
        • 2021-01-25(Mon)
        • 2021-01-23(Sat)
        • 2021-01-22(Fri)
        • 2021-01-20(Wed)
        • 2021-01-19(Tue)
        • 2021-01-18(Mon)
        • 2021-01-12(Tue)
        • 2020-01-11(Mon)
        • 2021-01-08(Fri)
        • 2021-01-07(Thu)
        • 2021-01-06(Wed)
        • 2021-01-05(Tue)
        • 2021-01-04(Mon)
        • 2021-01-01(Fri)
    • 2020
      • Dec
        • 2020-12-30(Thu)
        • 2020-12-25(Fri)
        • 2020-12-24(Thu)
        • 2020-12-23(Wed)
        • 2020-12-22(Tue)
        • 2020-12-21(Mon)
        • 2020-12-18 (Fri)
      • Nov
        • 2020-11-30(Mon)
        • 2020-11-28(Sat)
        • 2020-11-26(Thu)
        • 2020-11-25(Wed)
        • 2020-11-24(Tue)
        • 2020-11-23(Mon)
        • 2020-11-22(Sun)
        • 2020-11-20(Fri)
        • 2020-11-19(Thu)
        • 2020-11-18(Wed)
        • 2020-11-17(Tue)
        • 2020-11-14(Sat)
        • 2020-11-13(Fri)
        • 2020-11-12(Thu)
        • 2020-11-11(Wed)
        • 2020-11-09(Mon)
        • 2020-11-07(Sat)
        • 2020-11-05(Thu)
        • 2020-11-04(Wed)
        • 2020-11-03(Tue)
        • 2020-11-02(Mon)
    • Good article ์•„์นด์ด๋น™
Powered by GitBook
On this page
  • ์ƒ์„ธ ํ•™์Šต ๋‚ด์šฉ
  • ํ† ๋„ˆ๋จผํŠธ ์˜คํผ๋ ˆ์ด์…˜
  • seed ๋””์ž์ธ
  • ํ•™์Šต ๋‚ด์šฉ์— ๋Œ€ํ•œ ๊ฐœ์ธ์ ์ธ ์ดํ‰
  • ๋‹ค์Œ ํ•™์Šต ๊ณ„ํš

Was this helpful?

  1. DAILY REVIEW
  2. 2021
  3. Feb

2021-02-23(Tue)

ํ•ญ๋ชฉ

๋‚ด์šฉ

ํ•™์Šต ๋‚ ์งœ

2021-02-23(ํ™”)

ํ•™์Šต ์‹œ๊ฐ„

11:00~24:00

ํ•™์Šต ๋ฒ”์œ„ ๋ฐ ์ฃผ์ œ

Tournament

ํ•™์Šต ๋ชฉํ‘œ

Tournament ํŽ˜์ด์ง€ ๋ฐฑ์—”๋“œ๋ฅผ ์™„์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๋กœ์ง์„ ์ •ํ•œ๋‹ค.

๋™๋ฃŒ ํ•™์Šต ๋ฐฉ๋ฒ•

eunhkim๋‹˜๊ณผ ํŽ˜์–ด์ฝ”๋”ฉ์„ ์ง„ํ–‰ํ–ˆ๋‹ค.

์ƒ์„ธ ํ•™์Šต ๋‚ด์šฉ

๋ฐ์ดํ„ฐ ๋ฝ‘์•„๋‚ด๋Š” ํ˜•์‹. ๊ฐ™์€ ๊ฒƒ์ด ์–ด๋–ค ๊ตฌ์กฐ๊ฐ€ ์ œ์ผ ์ข‹์„๊นŒ?

Tournament ์ž์ฒด์˜ ๋กœ์ง์„ ์งœ์•ผํ–ˆ๋‹ค. eunhkim๋‹˜๊ณผ ํ•˜๋‹จ์ฒ˜๋Ÿผ

ํ† ๋„ˆ๋จผํŠธ ์œ ์Šค์ผ€์ด์Šค

  1. ํ† ๋„ˆ๋จผํŠธ ์‹ ์ฒญ์„ ๋ฐ›๋Š”๋‹ค. ์œ ์ €๊ฐ€ ๋“ฑ๋กํ•œ๋‹ค.

    • ํ† ๋„ˆ๋จผํŠธ์— ๋“ฑ๋กํ•œ ์œ ์ €๋“ค์ด ์ž์‹ ์˜ ํ† ๋„ˆ๋จผํŠธ ๊ฒฝ๊ธฐ๊ฐ€ ์–ธ์ œ ์‹œ์ž‘๋˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

    • ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ๋ฐ์ด๊ฐ€ ๋˜๋ฉด ํ† ๋„ˆ๋จผํŠธ์— ๋“ฑ๋กํ•œ ์œ ์ €๋Š” ์ž์‹ ์ด ๋ˆ„๊ตฌ์™€ ๋งž๋ถ™๋Š”์ง€ ๋“ฑ ์ •๋ณด๋ฅผ ์•Œ๊ฒŒ ๋œ๋‹ค.

  2. ์˜ˆ์ •๋œ ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ์‹œ๊ฐ„์ด ๋˜๋ฉด ๊ฐ ์œ ์ €๊ฐ€ ๊ฒŒ์ž„์— ์ฐธ์—ฌํ•  ์ค€๋น„๋ฅผ ํ•œ๋‹ค.

    • ๋‘˜ ๋‹ค ์ค€๋น„๊ฐ€ ๋œ ๊ฒฝ์šฐ: ๋งค์น˜ ์‹œ์ž‘

    • ํ•œ๋ช…๋งŒ ์ค€๋น„๊ฐ€ ๋œ ๊ฒฝ์šฐ: ์ค€๋น„ ์•ˆ๋œ ์ธก ํŒจ๋ฐฐ, ์ค€๋น„ ๋œ ์ธก ์Šน๋ฆฌ

    • ๋‘˜ ๋‹ค ์ค€๋น„๊ฐ€ ์•ˆ๋œ ๊ฒฝ์šฐ: ์ŠนํŒจ ์—†์Œ.

  3. ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ์ดํ›„ ์ŠนํŒจ๊ฐ€ ๋ฐ˜์˜๋œ๋‹ค.

    • ์Šน๋ฆฌ์ž: ํ† ๋„ˆ๋จผํŠธ์—์„œ ์Šน๋ฆฌํ–ˆ์Œ์„ ์•ˆ๋‚ด ๋ฐ›๊ณ , ๋‹ค์Œ ์ƒ๋Œ€๊ฐ€ ๊ฒฐ์ •๋˜๋ฉด ์ด๋ฅผ ์•ˆ๋‚ด ๋ฐ›๋Š”๋‹ค.

    • ํŒจ๋ฐฐ์ž: ํ•ด๋‹น ํ† ๋„ˆ๋จผํŠธ์—์„œ ํƒˆ๋ฝํ–ˆ์Œ์„ ์•ˆ๋‚ด ๋ฐ›๊ณ , ์ž์‹ ์˜ ํ”„๋กœํ•„์—์„œ ๊ทธ ๊ธฐ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

  4. ํ† ๋„ˆ๋จผํŠธ๊ฐ€ ๊ฒฐ์Šน ์Šน๋ฆฌ์ž๊ฐ€ ํ† ๋„ˆ๋จผํŠธ ์šฐ์Šน์ž๊ฐ€ ๋˜๋ฉฐ, ๊ด€๋ฆฌ์ž๊ฐ€ '์ƒํ’ˆ'์œผ๋กœ ๋“ฑ๋กํ•œ ๊ฒƒ์„ ๋ฐ›๋Š”๋‹ค.

ํ† ๋„ˆ๋จผํŠธ ์ƒ์„ฑ/์ง„ํ–‰ ๊ณผ์ •

  1. ํ† ๋„ˆ๋จผํŠธ ์‹ ์ฒญ์„ ๋ฐ›์œผ๋ฉด, ํ•ด๋‹น user์™€ ์‹ ์ฒญํ•œ ํ† ๋„ˆ๋จผํŠธ id๋ฅผ ์ฐธ์กฐํ•˜์—ฌ TournamentMembership๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. ์ด ๋•Œ TournamentMembership์€ pending์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  Tournament์˜ status๋„ pending ์ด๋‹ค.

    • ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ๋ฐ์ด ์ž์ •

      ์— ์‚ฌ์ด๋“œํ‚ฅ ์ ฌ์„ ์ด์šฉํ•˜์—ฌ 'ํ† ๋„ˆ๋จผํŠธ์— ์ฐธ์—ฌํ•œ user ๋“ค๊ฐ„์˜ match'๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด match๊ฐ€ ๊ฐ ์œ ์ €์˜ tournamentMembership์— ๊ธฐ๋ก๋œ๋‹ค.

      • user์˜ ์ˆ˜์— ๋”ฐ๋ผ

        round

        ๋ฅผ ๊ฒฐ์ •ํ•ด์•ผํ•œ๋‹ค.

        • membership์˜ status๊ฐ€ 'pending'์ธ ์œ ์ €์˜ ์ˆ˜์— ๋”ฐ๋ผ ๊ฒฐ์ •ํ•˜์ž.

          • 0๋ช…: ํ† ๋„ˆ๋จผํŠธ ์‚ญ์ œ, ๋งค์น˜ ์ƒ์„ฑ x

          • 1๋ช…: ์šฐ์Šน์ž 1๋ช…, ๋งค์น˜ ์ƒ์„ฑ x

          • 2๋ช…: final round

          • 3๋ช…: 2๋ช…์€ ๋ถ™์ด๊ณ  ๋‚˜๋จธ์ง€ 1๋ช…์€ dummy์™€ ๋ถ™์ด๊ณ  ๋ถ€์ „์Šน์ž„์„ ์•Œ๋ ค์ค€๋‹ค.

          • 4๋ช…: Semifinals

          • 8๋ช…: Quarter_finals

          • 16๋ช…: Eighth_finals

          • 32๋ช…: sixteenth_finals

  2. ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ์ค‘ ์ตœ์ดˆ์˜ ๋งค์น˜๊ฐ€ ์ง„ํ–‰๋˜๋ฉด Tournament์˜ status๊ฐ€ progress๊ฐ€ ๋œ๋‹ค. ๋งค์น˜์— ์ฐธ์—ฌํ•œ ์œ ์ €๋“ค์˜ tournament status๋„ ์ผ์‹œ์ ์œผ๋กœ 'progress'๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค๊ฐ€, ์ŠนํŒจ๊ฐ€ ๊ฐˆ๋ฆฌ๋ฉด ์Šน์ž๋Š” 'progress' ๋ฅผ ์œ ์ง€, ํŒจ์ž๋Š” 'completed'๊ฐ€ ๋œ๋‹ค.

  3. ์˜ˆ์ •๋œ ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ์‹œ๊ฐ„์ด ๋˜๋ฉด ๊ฐ ์œ ์ €๊ฐ€ ๋กœ๊ทธ์ธ ๋˜์–ด์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๋‘˜ ๋‹ค ๋กœ๊ทธ์ธ ๋˜์–ด์žˆ๋‹ค๋ฉด 'ํ† ๋„ˆ๋จผํŠธ ์ฐธ์—ฌ' ๋ชจ๋‹ฌ์„ ๋„์›Œ์ค€๋‹ค. โ† ๋ชจ๋‹ฌ ์—†์ด ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ

    • ๋งŒ์•ฝ ์œ ์ €๊ฐ€ ๋กœ๊ทธ์ธ ๋˜์–ด์žˆ์ง€ ์•Š๊ฑฐ๋‚˜ ์ •ํ•ด์ง„ ์‹œ๊ฐ„ ๋™์•ˆ ๋ชจ๋‹ฌ์— ์‘๋‹ต์„ ํ•˜์ง€ ์•Š์œผ๋ฉด, ์‹ค๊ฒฉ์ฒ˜๋ฆฌ๋œ๋‹ค.

    • ๊ฐ ์œ ์ €๊ฐ€ ๋ชจ๋‹ฌ์˜ '์ฐธ์—ฌ' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋Š” ์ˆœ์„œ๋Œ€๋กœ scorecard๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. ๋‘˜๋‹ค '์ฐธ์—ฌ' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๊ฒŒ์ž„์ด ์‹œ์ž‘๋จ.

    • ๊ฒŒ์ž„ ์ŠนํŒจ๊ฐ€ ๊ฐˆ๋ฆฐ ๋‹น์ผ ์ž์ •์— membership status๊ฐ€ progress์ธ ์œ ์ €๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ๋‹ค์Œ round๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค.

ํ† ๋„ˆ๋จผํŠธ ์˜คํผ๋ ˆ์ด์…˜

ํ† ๋„ˆ๋จผํŠธ ์˜คํผ๋ ˆ์ด์…˜์€?

  1. ํ† ๋„ˆ๋จผํŠธ๋ฅผ ์ง„ํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ผ์ •์‹œ๊ฐ„์ด ๋˜๋ฉด ์„œ๋ฒ„๊ฐ€ ํ•˜๋Š” ๋™์ž‘!

  2. play

  3. ํ† ๋„ˆ๋จผํŠธ ๋ฉค๋ฒ„์‹ญ ๋“ฑ๋ก

    • ์‹œ์ž‘์ผ ์ „๋‚  23์‹œ 55๋ถ„ ์ „๊นŒ์ง€ ๋“ฑ๋ก๊ฐ€๋Šฅ

    • ํ•œ๋ฒˆ ๋“ฑ๋กํ•˜๋ฉด ์‚ญ์ œ ๋ถˆ๊ฐ€

  4. ํ† ๋„ˆ๋จผํŠธ ํผ์ŠคํŠธ ๋งค์นญ(์ฒซ ๋‚  ์ž์ •)

    • ํ˜„์žฌ ๋“ฑ๋ก๋˜์–ด ์žˆ๊ณ , tournament_membership์˜ status๊ฐ€ pending์ธ user๋“ค์„ ๋งค์นญ์‹œํ‚จ๋‹ค.

    • membership count๊ฐ€ 8 ๋ฏธ๋งŒ์ด๋ผ๋ฉด ํ† ๋„ˆ๋จผํŠธ๋ฅผ ์ทจ์†Œํ•œ๋‹ค.

  5. ํ† ๋„ˆ๋จผํŠธ ์ง„ํ–‰ ์ค‘ ๋งค์นญ

    • ํ˜„์žฌ ๋“ฑ๋ก๋˜์–ด์žˆ๊ณ , tournament_membership์˜ status๊ฐ€ progress์ธ user๋“ค์„ ๋งค์นญ์‹œํ‚จ๋‹ค.

    • ๋ถ€์ „์Šน ์ฒ˜๋ฆฌ์˜ ๊ฒฝ์šฐ ๋งค์น˜ ์นด๋“œ์™€ ์œ ์ €์˜ ์Šค์ฝ”์–ด ์นด๋“œ๋ฅผ ํ•˜๋‚˜์”ฉ ๋งŒ๋“ค๊ณ , ์Šค์ฝ”์–ด ์นด๋“œ์˜ ๊ฒฐ๊ณผ๋ฅผ ์Šน๋ฆฌ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค.

    • ๋ถ€์ „์Šน๋œ ์œ ์ €๋Š” ๋‹ค์Œ๋‚  ์œ ์ €๊ฐ€ ๋ฏธ์ •์ด๋ผ๋Š” ์ •๋ณด๋ฅผ ๋ฐ›๋Š”๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋‚˜๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ์œ ์ €๊ฐ€ ๊ธฐ๊ถŒํ•ด๋ฒ„๋ ค์„œ ๋‹ค์Œ๋‚  ์œ ์ €๊ฐ€ ๋งค์นญ๋˜๋Š” ๊ฒƒ ์—†์ด ์šฐ์Šน์„ ํ•ด๋ฒ„๋ ธ๋‹ค.. ๊ทธ๋Ÿผ ์–ด๋–ป๊ฒŒ ๋˜๋Š”๊ฑธ๊นŒ? ๋ญ ์•„๋ฌด๊ฒƒ๋„ ์•ˆํ•ด์ค€๋‹ค. ๋‹จ, ์œ ์ €ํ”„๋กœํ•„์— ํŠธ๋กœํ”ผ๊ฐ€ ์ถ”๊ฐ€๋˜๊ณ , ๋งค์น˜ ํžˆ์Šคํ† ๋ฆฌ์— ๋ถ€์ „์Šน์ด ๊ธฐ๋ก๋˜์–ด์•ผํ•œ๋‹ค.

  6. ํ† ๋„ˆ๋จผํŠธ ๋งค์น˜ ์‹œ์ž‘ ์‹œ๊ฐ

    • ์Šค์ฝ”์–ด ์นด๋“œ 2์žฅ์ด ๋ชจ๋‘ ready ์ƒํƒœ์ธ์ง€ ํ™•์ธํ•œ๋‹ค.

    • ๋ชจ๋‘ ready๊ฐ€ ์•„๋‹ ๊ฒฝ์šฐ ready์ธ ์ชฝ์˜ ์Šน๋ฆฌ, ํ˜น์€ ์–‘์ชฝ ๋ชจ๋‘์˜ ํŒจ๋ฐฐ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค.

    • ๋‘˜ ๋‹ค ready์ผ ๊ฒฝ์šฐ game start ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ธ๋‹ค.

  7. ํ† ๋„ˆ๋จผํŠธ ์ข…๋ฃŒ

    • membership๊ณผ tournament์˜ status๋ฅผ completed๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค.

    • ์ตœ์ข… ์„ฑ์ ์— ๋”ฐ๋ผ membership์˜ result๋ฅผ ์—…๋ฐ์ดํŠธํ•œ๋‹ค.

    • incentive๊ฐ€ title์ผ ๊ฒฝ์šฐ winner์˜ title์„ ๊ต์ฒดํ•œ๋‹ค.

seed ๋””์ž์ธ

์–ด๋“œ๋ฏผ

๋ธŒ๋žœ์น˜ ์ž‘์—… ใ„ฑใ„ฑ!

seed ๋””์ž์ธ

์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ผ€์ด์Šค๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ํ•˜์ž.

ํ† ๋„ˆ๋จผํŠธ

24์ผ ๊ธฐ์ค€์œผ๋กœ ์ด์ „, ๋‹น์ผ, ์ดํ›„์˜ ํ† ๋„ˆ๋จผํŠธ๊ฐ€ ์กด์žฌํ•˜๋„๋ก.

title, ์‹œ๊ฐ„์— ์—ฌ๋Ÿฌ ํฌ๋งท์ด ๋“ค์–ด๊ฐ€๋„๋ก.

Tournament.create([
  {rule_id: 1, title: "tournament_1", start_date: DateTime.new(2021,2,26), tournament_time: Time.new(2000, 1, 1, 14, 00, 0)},
  {rule_id: 1, title: "tournament_2", start_date: DateTime.new(2021,2,27), tournament_time: Time.new(2000, 1, 1, 14, 00, 0)},
  {rule_id: 1, title: "tournament_3", start_date: DateTime.new(2021,2,23), tournament_time: Time.new(2000, 1, 1, 1, 30, 0)},
  {rule_id: 1, title: "tournament_4", start_date: DateTime.new(2021,2,24), tournament_time: Time.new(2000, 1, 1, 20, 00, 0)},
  {rule_id: 1, title: "5", start_date: DateTime.new(2021,3,01), tournament_time: Time.new(2000, 1, 1, 22, 30, 0)},
  {rule_id: 1, title: "tournament_6_with_long_long_long_long_long_long_long_long_title", start_date: DateTime.new(2021,3,01), tournament_time: Time.new(2000, 1, 1, 18, 30, 0)},
])

ํ† ๋„ˆ๋จผํŠธ ๋ฉค๋ฒ„์‹ญ

ํ•œ ์œ ์ €๊ฐ€ ํ† ๋„ˆ๋จผํŠธ ๋ฉค๋ฒ„์‹ญ์„ 0๊ฐœ, 1~3๊ฐœ, 3๊ฐœ ์ดˆ๊ณผ๋กœ ๊ฐ€์ง€๊ฒŒ๋”.

TournamentMembership.create([
  {user_id: 1, tournament_id: 1},
  {user_id: 2, tournament_id: 1},
  {user_id: 3, tournament_id: 1},
  {user_id: 4, tournament_id: 1},
  {user_id: 5, tournament_id: 1},
  {user_id: 6, tournament_id: 1},
  {user_id: 7, tournament_id: 1},
  {user_id: 8, tournament_id: 1},
โ€‹
  {user_id: 1, tournament_id: 2},
  {user_id: 2, tournament_id: 2},
  {user_id: 3, tournament_id: 2},
  {user_id: 4, tournament_id: 2},
  {user_id: 5, tournament_id: 2},
  {user_id: 6, tournament_id: 2},
  {user_id: 7, tournament_id: 2},
โ€‹
  {user_id: 1, tournament_id: 3},
  {user_id: 1, tournament_id: 4},
  {user_id: 1, tournament_id: 5},
  {user_id: 1, tournament_id: 6},
])

๋งค์น˜ & ์Šค์ฝ”์–ด์นด๋“œ

๋งค์น˜์™€ ์Šค์ฝ”์–ด์นด๋“œ๋Š” Tournament operation ์นด๋“œ ์ฒ˜๋ฆฌํ•  ๋•Œ ์‹œ๋“œ์žก์•„๋ณด๋˜๊ฐ€ํ•˜์ž..?

์ง€๊ธˆ ์‹œ์ ์— ์•„์‰ฌ์šด ์ 

  • API์—์„œ ๋„˜๊ฒจ์ฃผ๋Š” ๋ฐ์ดํ„ฐ ์„ค๊ณ„๋ฅผ ์ž˜ ๋ชปํ•œ ๊ฒƒ ๊ฐ™๋‹ค. ํ†ต์‹ ํšŸ์ˆ˜๋ฅผ ์ค„์ด๋ ค๋‹ค๋ณด๋‹ˆ RESTful์—์„œ ๋ฉ€์–ด์ง€๋Š” ๋А๋‚Œ์ด ๋“ ๋‹ค.

  • ์ฒ˜์Œ๋ถ€ํ„ฐ begin ~ resque ์•ˆ ์“ด ๊ฒƒ๋“ค

  • ํ…Œ์ŠคํŒ…์„ ์ œ๋Œ€๋กœ ๋ชปํ•œ ๊ฒƒ์ด ์•„์‰ฝ๋‹ค. ์‹œ๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ fixture๋กœ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์„œ ๋Œ๋ฆด ์ˆ˜ ์žˆ์–ด์•ผํ•˜๋Š”๋ฐ, ์ด๋ฅผ ์œ„ํ•œ ๋…ธ๋ ฅ์ด ๋ถ€์กฑํ–ˆ๋‹ค. ์ฃผ๋ง์— ๋ฐฉ๋ฒ•์„ ์ฐพ์•„์„œ ํŒ€์— ์ „ํŒŒํ•ด์•ผ๊ฒ ๋‹ค.

ํ•™์Šต ๋‚ด์šฉ์— ๋Œ€ํ•œ ๊ฐœ์ธ์ ์ธ ์ดํ‰

ํ† ๋„ˆ๋จผํŠธ ํ…Œ์ด๋ธ”์„ ์งœ์ง€ ์•Š๊ณ  ํ† ๋„ˆ๋จผํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ ค๊ณ  ํ•˜๋‹ค๋ณด๋‹ˆ ๋ญ”๊ฐ€ ํ† ๋„ˆ๋จผํŠธ ๋กœ์ง์ด ์ผ๋ฐ˜์ ์ด์ง€ ์•Š๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค. ํ† ๋„ˆ๋จผํŠธ๋ผ๊ธฐ๋ณด๋‹จ ๋ฐฐํ‹€๋กœ์–„ ๋А๋‚Œ??

ํ…Œ์ŠคํŠธ์ผ€์ด์Šค์— ๋Œ€ํ•œ ๊ฐˆ์ฆ์ด ๊ณ„์† ์ƒ๊ฒผ๋Š”๋ฐ, ์ฃผ๋ง์— ๊ผญ ํ•™์Šตํ•ด๋ด์•ผ๊ฒ ๋‹ค.

๋‹ค์Œ ํ•™์Šต ๊ณ„ํš

  • Tournament index ๋ฉ”์„œ๋“œ ๊ตฌํ˜„

Previous2021-02-24(Wed)Next2021-02-22(Mon)

Last updated 4 years ago

Was this helpful?

javascript์˜ this ํ‚ค์›Œ๋“œ์˜ ๋™์ž‘์„ ๊ธ€์„ ์ฝ์œผ๋ฉฐ ์ถ”๊ฐ€ํ•™์Šตํ–ˆ๋‹ค.

๋‰ด์ฉœ์ฝœ๋ผ๋ฐ”