Skip to content

2025314242/ceos.week3to4.react-messenger-21th

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 

Repository files navigation

3~4์ฃผ์ฐจ ๋ฏธ์…˜: React-Messenger

์„œ๋ก 

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿ™Œ๐Ÿป 20๊ธฐ ํ”„๋ก ํŠธ ์šด์˜์ง„ ์ตœ์ง€์›์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ฏธ์…˜์—์„œ๋Š” ์ง€๋‚œ ๋ฏธ์…˜์„ ํ™•์žฅํ•˜์—ฌ ์นœ๊ตฌ ๋ชฉ๋ก, ์ฑ„ํŒ…๋ฐฉ ๋ชฉ๋ก ๋“ฑ ๋ถ€๊ฐ€ ๊ธฐ๋Šฅ๋“ค์„ ์ถ”๊ฐ€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ ์  ๋” ์™„์„ฑ๋„ ๋†’์€ ๋ฉ”์‹ ์ € ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๋ฐœ์ „ํ•ด๋‚˜๊ฐ€๋Š” ๊ณผ์ •์ธ ๋งŒํผ, ๊ธฐ๋Šฅ ํ™•์žฅ๊ณผ UI์˜ ์ผ๊ด€์„ฑ์„ ๊ณ ๋ คํ•˜๋ฉด์„œ ์ง„ํ–‰ํ•ด๋ณด์„ธ์š”!

์ด๋ฒˆ ์ฃผ๋„ ๋””์ž์ด๋„ˆ์™€์˜ ํ˜‘์—…์œผ๋กœ ์ง„ํ–‰๋˜๋Š” ๋ฏธ์…˜์ž…๋‹ˆ๋‹ค. ๋””์ž์ด๋„ˆ๋ถ„๊ป˜์„œ ๋ฆฌ๋””์ž์ธํ•œ ์ƒˆ๋กœ์šด ํ™”๋ฉด์„ ์ฐธ๊ณ ํ•˜์—ฌ, ์—ฌ๋Ÿฌ๋ถ„์˜ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•ด ๋‚˜๊ฐ€์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. UI์™€ UX์˜ ์™„์„ฑ๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ํ”ผ๊ทธ๋งˆ ํŒŒ์ผ์„ ์„ธ์‹ฌํ•˜๊ฒŒ ๋ถ„์„ํ•˜๊ณ  ๊ตฌํ˜„ํ•ด ๋ณด์„ธ์š”.

๋˜ํ•œ, ์ง€๋‚œ์ฃผ์— ์ ์šฉํ•œ TypeScript์™€ TailwindCSS(๋˜๋Š” StyledComponent)๋ฅผ ํ™œ์šฉํ•˜๋ฉด์„œ ๋ถ€์กฑํ–ˆ๋˜ ๋ถ€๋ถ„์€ ์ด๋ฒˆ ๊ธฐํšŒ์— ๋ฆฌํŒฉํ† ๋งํ•ด๋ณด๋Š” ๊ฒƒ๋„ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

ํŠนํžˆ ์ด๋ฒˆ ๋ฏธ์…˜์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” React Routing ๊ธฐ๋ฒ•์— ์ต์ˆ™ํ•ด์ง€๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. **SPA(Single Page Application)**์˜ ๋ผ์šฐํŒ… ํŠน์„ฑ์„ ์ดํ•ดํ•˜๊ณ , ๋‹ค์–‘ํ•œ ํŽ˜์ด์ง€ ์ „ํ™˜์„ React Router๋กœ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๊ตฌํ˜„ํ•ด ๋ณด์„ธ์š”.

๊ทธ๋Ÿผ ์ด๋ฒˆ ๋ฏธ์…˜๋„ ํŒŒ์ดํŒ…์ž…๋‹ˆ๋‹ค! ๐ŸŽ‰

๋ฏธ์…˜

Key Questions

  • React Router์˜ ๋™์  ๋ผ์šฐํŒ…(Dynamic Routing)์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ธ์ œ ์‚ฌ์šฉํ•˜๋‚˜์š”?
  • ๋„คํŠธ์›Œํฌ ์†๋„๊ฐ€ ๋А๋ฆฐ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” UI/UX ๋””์ž์ธ ์ „๋žต๊ณผ ๊ธฐ์ˆ ์  ์ตœ์ ํ™” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  • React์—์„œ useState์™€ useReducer๋ฅผ ํ™œ์šฉํ•œ ์ง€์—ญ ์ƒํƒœ ๊ด€๋ฆฌ์™€ Context API ๋ฐ ์ „์—ญ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•˜์„ธ์š”.

๋ฏธ์…˜ ๋ชฉํ‘œ

  • TypeScript๋ฅผ ์ ๊ทน์ ์œผ๋กœ ํ™œ์šฉํ•˜์—ฌ ์ฝ”๋“œ์˜ ํƒ€์ž… ์•ˆ์ •์„ฑ์„ ํ™•๋ณดํ•ฉ๋‹ˆ๋‹ค.
  • React Router๋ฅผ ์‚ฌ์šฉํ•ด ํŽ˜์ด์ง€ ๊ฐ„ ๋ผ์šฐํŒ…์„ ๊ตฌํ˜„ํ•˜๊ณ , ๋™์  ๊ฒฝ๋กœ์™€ URL ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.
  • useState์™€ useReducer๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํฌ๋„ŒํŠธ์˜ ๋กœ์ปฌ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ , ์ƒํƒœ ๊ด€๋ฆฌ ๋กœ์ง์„ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • Tailwind CSS ํ˜น์€ Styled Components๋กœ ์Šคํƒ€์ผ๋งํ•˜์—ฌ ์ผ๊ด€๋œ ๋””์ž์ธ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐํ•œ

2025๋…„ 4์›” 26์ผ ํ† ์š”์ผ

ํ•„์ˆ˜ ๊ตฌํ˜„ ๊ธฐ๋Šฅ

  • ํ”ผ๊ทธ๋งˆ๋ฅผ ๋ณด๊ณ  ๊ฒฐ๊ณผํ™”๋ฉด๊ณผ ๊ฐ™์ด ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • ์นœ๊ตฌ ๋ชฉ๋ก ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • React Router๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์นœ๊ตฌ ๋ชฉ๋ก, ์ฑ„ํŒ…๋ฐฉ ๋ชฉ๋ก, ์ฑ„ํŒ…๋ฐฉ ๋“ฑ์˜ ํŽ˜์ด์ง€๋ฅผ ๊ฐ๊ฐ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€์— ์ฑ„ํŒ…๋ฐฉ ๋‚ด์šฉ์„ ์ €์žฅํ•˜์—ฌ ์ƒˆ๋กœ๊ณ ์นจ ์‹œ์—๋„ ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์ง€๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฉ”์„ธ์ง€์— ์œ ์ € ์ •๋ณด(ํ”„๋กœํ•„ ์‚ฌ์ง„, ์ด๋ฆ„)๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • user์™€ message ๋ฐ์ดํ„ฐ๋ฅผ json ํŒŒ์ผ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • UI๋Š” ๋ฐ˜์‘ํ˜•์„ ์ œ์™ธํ•˜๊ณ  ํ”ผ๊ทธ๋งˆํŒŒ์ผ์„ ๋”ฐ๋ผ์„œ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ๊ตฌํ˜„ ๊ธฐ๋Šฅ(์„ ํƒ ์‚ฌํ•ญ)

  • ๋ฉ”์„ธ์ง€ ์ฝ์Œ/์•ˆ์ฝ์Œ ํ‘œ์‹œ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • ์ฑ„ํŒ…๋ฐฉ ํ•€(Pin) ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • ์ฑ„ํŒ…๋ฐฉ์—์„œ ํŒŒ์ผ ๋ฐ ์ด๋ฏธ์ง€ ์ „์†ก์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด์™ธ์—๋„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๋ฉด ์ถ”๊ฐ€ํ•˜์…”๋„ ์ข‹์Šต๋‹ˆ๋‹ค.๐Ÿ™‚โ€โ†•๏ธ

๋งํฌ ๋ฐ ์ฐธ๊ณ ์ž๋ฃŒ

About

๐Ÿงฉ CEOS 21th React Messenger

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors