[๐Ÿ”ฅ Project Review] ์„ธ์ผ ์ •๋ณด๋ฅผ ์•Œ๋ ค์ฃผ๋Š”, Salendar ๐Ÿ—“

YOU KNOW I MEANยท2021๋…„ 2์›” 25์ผ
4
post-thumbnail
post-custom-banner

Salendar ์†Œ๊ฐœ์— ์•ž์„œ,

I Think... ๐Ÿคซ

Salendar ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ๋งˆ๊ตฌ์žก์ด๋กœ Vue ์ฝ”๋“œ๋ฅผ ์จ๋‚ด๋ฆฌ๋˜ 1ํ•™๊ธฐ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐ˜์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ถ€์กฑํ•œ ๋ฉด์„ ํŒŒ์•…ํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

I Learned... ๐Ÿ‘จโ€๐Ÿ’ป

โœ”๏ธ chrome Vue devtool ๊ณผ chrome console ์„ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธํ•˜๋ฉฐ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ Vuex ์— ๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ๋‹ด์•„ ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ๋กœ๊ทธ์ธ์ด ํ’€๋ฆฌ์ง€ ์•Š๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ JWT ํ† ํฐ ์„ ์ด์šฉํ•ด ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ axios ๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐฑ์—”๋“œ์™€ ํ†ต์‹ ํ–ˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ Vuetify ๋ฅผ ์‚ฌ์šฉํ•ด ํ™”๋ฉด์„ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ git flow ๋ฅผ ์ ์šฉํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜์˜€๊ณ  ํ„ฐ๋ฏธ๋„ git ๋ช…๋ น์–ด๋ฅผ ์ตํ˜”์Šต๋‹ˆ๋‹ค.

I Decided... ๐Ÿ‘Š

โญ๏ธ Vue LifeCycle์ธ watch, created, mounted ๋“ฑ.. ์„ ๊ณต๋ถ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
โญ๏ธ ํ™”๋ฉด์— ๋ณด์—ฌ์ง€๋Š” ์ปดํฌ๋„ŒํŠธ๋“ค์˜ ์ •๋ ฌ ๋ฐฉ์‹ (flex, md, sm..) ์— ๋Œ€ํ•ด ํ•™์Šตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
โญ๏ธ ๋‹ค์Œ๋ฒˆ์—” ๋””์ž์ธ ํ•˜๋Š๋ผ ์ฐธ์—ฌํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๋ฐฐํฌ ์ฐธ์—ฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.



Salendar ๋ž€?

"์˜ฌ๋ฆฌ๋ธŒ์˜์— ๊ฐ”๋Š”๋ฐ ์‚ฌ๊ณ  ์‹ถ์€ ํ‹ดํŠธ ์„ธ์ผ์ด ์–ด์ œ ๊นŒ์ง€์˜€๋‹ค? ์„ธ์ผ ์ •๋ณด๋ฅผ ๋ฏธ๋ฆฌ ์•Œ์•˜์œผ๋ฉด ์ข‹์•˜์„ํ…๋ฐ.." ๋ผ๋Š” ๊ฒฝํ—˜์—์„œ ๋‚˜์˜จ ์•„์ด๋””์–ด ์—์„œ ์ถœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ์„ค๋ ˆ๋Š” ์„ธ์ผ์ •๋ณด๋ฅผ ์•Œ๋ ค์ฃผ๋Š” Salendar, ์„ค๋ Œ๋‹ค ์ž…๋‹ˆ๋‹ค.

  • ๋ž„๋ผ๋ธ”๋ผ, ์˜ฌ๋ฆฌ๋ธŒ์˜, ์—๋›ฐ๋“œํ•˜์šฐ์Šค, ๋”ํŽ˜์ด์Šค์ƒต, ๋ฏธ์ƒค, ํ† ๋‹ˆ๋ชจ๋ฆฌ, ์•„๋ฆฌ๋”ฐ์›€ 7๊ฐœ ๋งค์žฅ์˜ ์„ธ์ผ ์ •๋ณด๋ฅผ ์บ˜๋ฆฐ๋” ํ˜•ํƒœ๋กœ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.


Stack โš™๏ธ

Backend

Frontend

Team Collaboration Tool

build

์ฃผ์š”๊ธฐ๋Šฅ ๐Ÿ’ก

'์„ค๋ Œ๋‹ค' ๋Š” ์ฝ”์Šค๋ฉ”ํ‹ฑ ๋กœ๋“œ์ƒต์˜ ์„ธ์ผ ์ •๋ณด ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

1) ์บ˜๋ฆฐ๋”

- ์„ธ์ผ ์ผ์ •์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- ๋งค์žฅ, ์›”๋ณ„๋กœ ํ•„ํ„ฐ๋ง์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

2) ์„ธ์ผ ์ƒ์„ธ ์ •๋ณด

- ์„ธ์ผ ์ œ๋ชฉ, ๊ธฐ๊ฐ„, ์‹ค์ œ ์›น์‚ฌ์ดํŠธ ๋งํฌ, ์„ธ์ผ ํ™๋ณด ์ด๋ฏธ์ง€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

3) ์„ธ์ผ ์•Œ๋ฆฌ๋ฏธ

- ํŒ”๋กœ์šฐ์ค‘์ธ ๋งค์žฅ์˜ ์„ธ์ผ ์ •๋ณด๋ฅผ ๋งค ๋‹ฌ 1์ผ, ๋ฉ”์ผ๋กœ ์ „๋‹ฌ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4) ์ฐœ ํ•˜๊ธฐ

- ์›ํ•˜๋Š” ๋งค์žฅ์„ ์ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
- ์ฐœํ•œ ๋งค์žฅ์€ ์ฐœ ๋ชฉ๋ก์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ถ”๊ฐ€, ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

5) ๊ฒŒ์‹œํŒ

- ์ž์œ  ๊ฒŒ์‹œํŒ, ๋ฆฌ๋ทฐ ๊ฒŒ์‹œํŒ, ์„ธ์ผ ์ œ๋ณด ๊ฒŒ์‹œํŒ์—์„œ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค๊ณผ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- ๊ฒŒ์‹œํŒ CRUD, ๋Œ“๊ธ€ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ ์™ธ ๊ธฐ๋Šฅ ๐Ÿ’ก

1) ๋กœ๊ทธ์ธ & ํšŒ์›๊ฐ€์ž…

- ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
- ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ์˜์–ด, ์ˆซ์ž ํฌํ•จ 8์ž๋ฆฌ ์ด์ƒ์œผ๋กœ ๊ตฌ์„ฑํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
- ์ค‘๋ณต๋œ ๋‹‰๋„ค์ž„์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

2) ๋งˆ์ดํŽ˜์ด์ง€

- ๋‹‰๋„ค์ž„, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

3) ํŒ€ ์†Œ๊ฐœ

- Salendar์˜ ๋งŒ๋“ ์ด๋“ค์„ ์†Œ๊ฐœํ•˜๋Š” ํŽ˜์ด์ง€์ž…๋‹ˆ๋‹ค.


My Roles ๐Ÿ˜‡

'์„ค๋ Œ๋‹ค' ์•„์ด๋””์–ด๋ฅผ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ™”๋ฉด๊ธฐ๋Šฅ๋””์ž์ธ
๋žœ๋”ฉํŽ˜์ด์ง€๋ฉ”์ธํŽ˜์ด์ง€ ์ด๋™ ๋ฒ„ํŠผ๊ธ€์”จ์ฒด ๋ณ€๊ฒฝ, ์ „์ฒด์ ์ธ ๋””์ž์ธ
๋กœ๊ทธ์ธJWT ํ† ํฐ์„ ์ด์šฉํ•ด ๊ตฌํ˜„๋ฒ„ํŠผ ์ƒ‰, ๋กœ๊ทธ์ธ ์ด๋ฏธ์ง€
ํšŒ์›๊ฐ€์ž…Axios Post ์š”์ฒญ์„ ๋ณด๋ƒ„๋ฒ„ํŠผ ์ƒ‰, ํšŒ์›๊ฐ€์ž… ์ด๋ฏธ์ง€
๋งˆ์ดํŽ˜์ด์ง€๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ • (์ค‘๋ณต ์ฒ˜๋ฆฌ, ํ™•์ธ), ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ, ์ด๋ฏธ์ง€ ์ถ”๊ฐ€๋ฒ„ํŠผ ์ƒ‰, ์ •๋ ฌ
์„ธ์ผ์บ˜๋ฆฐ๋”FullCalendar API์บ˜๋ฆฐ๋” ๊ธ€์”จ์ฒด, ๋ถˆํ•„์š”ํ•œ ๋ฒ„ํŠผ ์ œ๊ฑฐ, ์ „์ฒด์ ์ธ ์ƒ‰ ์กฐํ•ฉ ๊ตฌ์ƒ
์ฐœ๋ชฉ๋กAxios Get์œผ๋กœ Follow ๋งค์žฅ ๋ถˆ๋Ÿฌ์™€ ์ฐœ ์‚ญ์ œ ๊ธฐ๋Šฅ ๊ตฌํ˜„์ฐœ ๋ชฉ๋ก ์—†์„ ์‹œ ํ™”๋ฉด ๊ตฌ์„ฑ, v-card ํ˜•ํƒœ ๋””์ž์ธ
๊ฒŒ์‹œํŒX๊ฒŒ์‹œํŒ ๋ชฉ๋ก ๋””์ž์ธ ๊ตฌ์„ฑ
์„ธ์ผ๋ฆฌ์ŠคํŠธ์„ธ์ผ ์ƒ์„ธ ํŽ˜์ด์ง€์˜ ์ œ๋ชฉ, ๊ธฐ๊ฐ„, ์ด๋ฏธ์ง€ ์š”์ฒญ ๋ฐ›์•„์„œ ์ฒ˜๋ฆฌ, ํ™ˆํŽ˜์ด์ง€ ์ด๋™modal ํ˜•ํƒœ๋กœ ๋””์ž์ธ
ํ—ค๋”๋กœ๊ทธ์ธ ์—ฌ๋ถ€์— ๋งž๋Š” ์ƒ๋‹จ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ ์ž‘์—…Vuetify Appbar๋กœ ๊ตฌ์„ฑ
  • ์ „์ฒด์ ์ธ ๋””์ž์ธ์„ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
    - ๋ฉ”์ธํŽ˜์ด์ง€, ๋žœ๋”ฉํŽ˜์ด์ง€, ํŒ€ ์†Œ๊ฐœํŽ˜์ด์ง€, ์บ˜๋ฆฐ๋”ํŽ˜์ด์ง€, ์ฐœ๋ชฉ๋กํŽ˜์ด์ง€, ๋งˆ์ดํŽ˜์ด์ง€, ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€, ๊ฒŒ์‹œํŒ ๋ชฉ๋ก ํŽ˜์ด์ง€๋ฅผ ๋””์ž์ธํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Axios๋กœ ๋ฐฑ์—”๋“œ์™€ ํ†ต์‹ ํ•ด ์ฐœ๋ชฉ๋ก ๋ฐ ๊ด€๋ฆฌ, ์บ˜๋ฆฐ๋”, ๋งˆ์ดํŽ˜์ด์ง€๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Axios Get, Post์œผ๋กœ ์š”์ฒญํ•ด ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž…์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
post-custom-banner

2๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2021๋…„ 2์›” 26์ผ

์‚ฌ์šฉํ•œ ๊ธฐ์ˆ ์Šคํƒ์„ ํ•œ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ์ •๋ฆฌ๋ฅผ ์ž˜ ํ•ด๋†“์œผ์…จ๋„ค์š”

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ
comment-user-thumbnail
2021๋…„ 2์›” 26์ผ

์ˆ˜๊ณ  ๋งŽ์œผ์…จ์Šต๋‹ˆ๋‹ค :)

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ