2024๋…„ 6์›”์„ ๋˜๋Œ์•„๋ณด๋ฉฐ ๐ŸŒŸ

6์›”์€ ์—ฌ๋Ÿฌ๋ชจ๋กœ ๋ฐ”์˜๋ฉด์„œ๋„ ์˜๋ฏธ ์žˆ๋Š” ์‹œ๊ฐ„๋“ค์ด ๋งŽ์•˜๋˜ ํ•œ ๋‹ฌ์ด์—ˆ๋‹ค. ์—…๋ฌด์™€ ๊ฐœ์ธ์ ์ธ ์ผ๋“ค์ด ์ž˜ ์–ด์šฐ๋Ÿฌ์ ธ ์•Œ์ฐฌ ์‹œ๊ฐ„์„ ๋ณด๋ƒˆ๋‹ค.


์ฃผ์š” ์ด๋ฒคํŠธ ๐ŸŽ‰

  • 6์›” 7์ผ: ์ „์‚ฌ ํœด๋ฌด๋กœ ํœด๊ฐ€๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. ๐Ÿ–๏ธ ์˜ค๋žœ๋งŒ์— ํ‘น ์‰ฌ๋ฉฐ ์žฌ์ถฉ์ „ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ์‹œ๊ฐ„์ด์—ˆ๋‹ค.
  • 6์›” 14์ผ: ํƒ€๋ถ€์„œ ๋ถ€์žฅ๋‹˜๊ณผ ํ•จ๊ป˜ ์ ์‹ฌ์‹์‚ฌ๋ฅผ ํ–ˆ๋‹ค. ๐Ÿฒ ํƒ€ ๋ถ€์„œ์™€์˜ ๊ต๋ฅ˜ ๋•์— ์—…๋ฌด์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์‹œ๊ฐ์„ ์–ป์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  • 6์›” 15์ผ: QAํŒ€ ๊ณผ์žฅ๋‹˜์˜ ๊ฒฐํ˜ผ์‹์— ๋‹ค๋…€์™”๋‹ค. ๐Ÿ’ ์ˆ˜์›์—์„œ ์—ด๋ฆฐ ๊ฒฐํ˜ผ์‹์ธ๋ฐ, ๊ธธ์„ ์žƒ์–ด 40๋ถ„ ์ •๋„ ๋Šฆ๊ฒŒ ๋„์ฐฉํ–ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ฒฐํ˜ผ์‹์€ ๋งค์šฐ ์žฌ๋ฏธ์žˆ๊ณ  ๊ฐ๋™์ ์ด์—ˆ๋‹ค.
  • 6์›” 26์ผ: ๊ฑด๊ฐ•๊ฒ€์ง„์„ ๋ฐ›์•˜๋‹ค. ๐Ÿฉบ ํ•œ ์‚ด ํ•œ ์‚ด ๋จน์„์ˆ˜๋ก ๋ชธ์— ์ด์ƒ์ด ์ƒ๊ธฐ๋Š” ๊ธฐ๋ถ„์„ ๋А๋ผ๊ฒŒ ๋˜์—ˆ๊ณ , ๊ฑด๊ฐ• ๊ด€๋ฆฌ์˜ ์ค‘์š”์„ฑ์„ ๋‹ค์‹œ๊ธˆ ๊นจ๋‹ฌ์•˜๋‹ค.

๊ธฐ์ˆ ์  ์„ฑ๊ณผ ๐Ÿ’ป

์ด๋ฒˆ ๋‹ฌ์—๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๊ธฐ์ˆ ์  ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋ฉฐ, ์—…๋ฌด ํšจ์œจ์„ฑ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œ์ผฐ๋‹ค.

1. ์ฃผ๊ฐ„ ํ•™์Šตํ˜„ํ™ฉ ๋ฐฐ์น˜ ๊ฐœ๋ฐœ ๐Ÿ”„

  • ๊ตฌ์กฐ๊ฐœ์„ 
    • ๐Ÿ“š ์˜ค๋Š˜์˜ ํ•™์Šต ๋ฐ์ดํ„ฐ ์—ฐ๋™
    • ๐Ÿ“… ์ฃผ์ฐจ ๋ ˆํฌํŠธ ๋ฐ์ดํ„ฐ ์—ฐ๋™
    • ๐Ÿ“Š ์›”๊ฐ„ ๋ ˆํฌํŠธ ๋ฐ์ดํ„ฐ ์—ฐ๋™ (TODO)
  • ์ฃผ๊ฐ„ ํ•™์Šตํ˜„ํ™ฉ ๊ธฐ๋Šฅ ๊ฐœ์„ 
    • ๊ธฐ์กด GET -> POST -> GET ๋ฐฉ์‹์—์„œ, body๋ฅผ query parameter๋กœ ๋ณ€๊ฒฝ ๐Ÿ› ๏ธ
    • SQL ๋ฌธ๋ฒ• ์˜ค๋ฅ˜ ์ˆ˜์ • (group by score -> planned_study_time_data.average_score) ๐Ÿ“
    • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์กฐํšŒ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ์™„๋ฃŒ โšก
    • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ์™€ ๋ฐฐ์น˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์กฐํšŒ ๊ฐ€๋Šฅ ๐Ÿ”
  • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์กฐํšŒ
    • action / plan ์ค‘์‹ฌ์˜ ์‘๋‹ต ๐Ÿ’ก
  • ๋ฐฐ์น˜ ๋ฐ์ดํ„ฐ ์กฐํšŒ
    • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ๋ฐฐ์น˜๋กœ ๋Œ๋ ค ์ƒ์„ฑ๋œ row๋ฅผ ์กฐํšŒํ•˜์—ฌ ์‘๋‹ต ๐Ÿ—‚๏ธ
  • DateTimeUtil ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    1. getStartAndEndOfWeek(Date): ํŠน์ • ๋‚ ์งœ์— ํ•ด๋‹นํ•˜๋Š” ์ฃผ์˜ ์‹œ์ž‘์ผ๊ณผ ์ข…๋ฃŒ์ผ์„ ์‘๋‹ต ๐Ÿ“†
    2. getWeekOfMonth(Calendar): ์ž…๋ ฅ๋œ ๋‚ ์งœ์˜ ์ฃผ์ฐจ๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ์‘๋‹ต ๐Ÿ“…

2. ๊ต์‚ฌ ๊ด€๋ฆฌ ๐Ÿ‘ฉโ€๐Ÿซ

  • ํ•™์Šต ์ด๋ ฅ
    • ํฌ๋งท ์ˆ˜์ • ๋ฐ ํฐํŠธ ์‚ฌ์ด์ฆˆ ์กฐ์ ˆ ๐Ÿ”ค
    • ์ทจ์†Œ ๋ฒ„ํŠผ ์ถ”๊ฐ€ (ํŒ์—…์ฐฝ ๋‹ซ๊ธฐ ๊ธฐ๋Šฅ) โŒ
    • ๊ณ„ํš ๋ฏธ๋ฃจ๊ธฐ UI ์ˆ˜์ • ๋ฐ JS ๊ธฐ๋Šฅ ์ˆ˜์ •/์ถ”๊ฐ€ ๐Ÿ’ป
    • ์Šค์ผ€์ค„ ์‚ญ์ œ ๋ฐ ๋ฏธ๋ฃจ๊ธฐ ์‹œ ํ•™์Šต ์ฝ˜ํ…์ธ  ์ด๋ ฅ ์ผ๊ด„ ์‚ญ์ œ ๐Ÿ—‘๏ธ
  • ๋งž์ถค ํ•™์Šต ์Šค์ผ€์ค„๋ง ๋กœ์ง ๋ณ€๊ฒฝ
    • ๊ธฐ์กด ๋ฐฉ์‹์œผ๋กœ ํšŒ๊ท€ ๐Ÿ”„
    • ํ•™์Šต ์Šค์ผ€์ค„๋ง 1์ผ์ฐจ ์˜ต์…˜ ๋ฒ„ํŠผ๋งŒ ์œ ํšจ, ๋‚˜๋จธ์ง€๋Š” ์ˆจ๊น€ ์ฒ˜๋ฆฌ ๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ
    • ์ผ์ฐจ ์˜ต์…˜์— ๋”ฐ๋ฅธ ์ตœ์ข… ํ•™์Šต์ผ ๊ณ„์‚ฐ์‹ ๋ณ€๊ฒฝ ๋ฐ ๋ฒ„๊ทธ ์ˆ˜์ • ๐Ÿ› ๏ธ
    • ์ผ์ฐจ ์˜ต์…˜์— ๋งž๊ฒŒ ์Šค์ผ€์ค„๋ง์ด ์•ˆ๋˜๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • ๐Ÿ›
    • CSS ๋ณ€๊ฒฝ, ํ…์ŠคํŠธ ์ถ”๊ฐ€, ๊ธฐํš์„œ ๋ฐ˜์˜ ๐ŸŽจ
    • ์ฃผ๋ง/ํ‰์ผ ๊ตฌ๋ถ„ํ•˜์—ฌ ๋ฏธ๋ฃจ๊ธฐ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ๐Ÿ“…
    • ๋ฒ„ํŠผ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๐Ÿ“
    • ๋งž์ถค ํ•™์Šต ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ฐœ์„ 
      1. ๋นˆ ์ผ์ฐจ ์ƒ์„ฑ ๐Ÿ“…
      2. ๋นˆ ์ผ์ฐจ ๊ฑด๋„ˆ๋›ฐ๋ฉฐ ๋งž์ถค ํ•™์Šต ์ถ”๊ฐ€ โžก๏ธ
      3. ๋งž์ถค ํ•™์Šต ์ถ”๊ฐ€ ์‹œ ์„ ํƒ ์ฝ”์Šค ์‚ญ์ œ ๊ธฐ๋Šฅ ์ˆ˜์ • โŒ
      4. ๋งž์ถค ํ•™์Šต ์ถ”๊ฐ€ ์‹œ ์ „์ฒด ์ฝ”์Šค ์‚ญ์ œ ๊ธฐ๋Šฅ ์ˆ˜์ • ๐Ÿ”„
    • ํ•™์Šต ์ด๋ ฅ ์ผ์ž์˜ +1 ์ผ ์ดํ›„๋กœ ๋ฏธ๋ฃจ๋Š” ๋ฒ”์œ„ ์„ ํƒ ๊ฐ€๋Šฅํ•˜๋„๋ก ์ˆ˜์ • โฉ
    • ํ•™์Šต ๋ฏธ๋ฃจ๊ธฐ #1-2 7์˜ ๋ฐฐ์ˆ˜ ์ฒ˜๋ฆฌ ํ”„๋ก ํŠธ ์—”๋“œ ์ ์šฉ ๐Ÿงฎ
    • deleteArray ๋ณ„๋„ ๋Œ€์‘ ๐Ÿ—‚๏ธ
    • ํŽ˜์ด์ง€ ์ถ”๊ฐ€ ๋ฐ plan ์ผ๊ด€ ์‚ญ์ œ ๋ฐ ์ถ”๊ฐ€ ๐Ÿ“„

3. ํ•™์ƒ ๊ด€๋ฆฌ ๐Ÿง‘โ€๐ŸŽ“

  • ํ•™์Šต ์ง„ํ–‰ํ‘œ ํ™”๋ฉด ์ˆ˜์ • ๐Ÿ“ˆ
  • ์ข‹์€ ๋ถ€๋ชจ ์•ฑ
    • ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ํ˜„ํ™ฉ ์ˆ˜์ • ๐Ÿ› ๏ธ
    • ํ•™์Šต ๋ชจ๋‹ˆํ„ฐ๋ง์—์„œ ํ•™์Šต ์ƒํƒœ ์ถ”๊ฐ€ ๐Ÿ”

6์›”์€ ๋งŽ์€ ๊ธฐ์ˆ ์  ๊ณผ์ œ๋“ค์„ ์™„๋ฃŒํ•˜๋ฉฐ ์˜๋ฏธ ์žˆ๋Š” ์„ฑ๊ณผ๋ฅผ ์–ป์€ ๋‹ฌ์ด์—ˆ๋‹ค. ์•ž์œผ๋กœ๋„ ๋” ๋‚˜์€ ์„ฑ๊ณผ๋ฅผ ์œ„ํ•ด ๊พธ์ค€ํžˆ ๋…ธ๋ ฅํ•ด์•ผ๊ฒ ๋‹ค. ๐Ÿš€