๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด๊ธ€54

CSR SSR ๋‹จ์  ๋ณด์™„ ๋ฐฉ๋ฒ• ์ •๋ฆฌํ•ด๋ณด๊ธฐ ์ง€๋‚œ ์‹œ๊ฐ„์— CSR, SSR์˜ ๊ฐœ๋…๊ณผ ์žฅ๋‹จ์ ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด ๋ณด์•˜๋Š”๋ฐ, ๊ทธ๋ ‡๋‹ค๋ฉด ์ด ๋‘˜์˜ ๋‹จ์ ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์—๋Š” ์–ด๋–ค ๊ฒƒ๋“ค์ด ์žˆ๋Š”์ง€ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. CSR ๋‹จ์  ๋ณด์™„ ๋ฐฉ๋ฒ• ๋จผ์ € CSR์€ ์ดˆ๊ธฐ ๋กœ๋”ฉ ์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค๋Š” ์ ๊ณผ SEO๊ฐ€ ๋ถˆ๋ฆฌํ•˜๋‹ค๋Š” ์ ์ด ๋‹จ์ ์ด๋‹ค. ์ด๊ฒƒ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•๋“ค์„ ์ด์šฉํ•˜์—ฌ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. Code Splitting, Tree-Shaking ์ด ๋ฐฉ๋ฒ•๋“ค์˜ ์ดˆ๊ธฐ ๋กœ๋”ฉ์— ํ•„์š”ํ•œ javaScript์˜ ํฌ๊ธฐ๋ฅผ ์ค„์—ฌ์ฃผ์–ด์„œ ๋กœ๋”ฉ ์†๋„๋ฅผ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์–ด์ค€๋‹ค. Code Splitting์€ ๋ง ๊ทธ๋Œ€๋กœ ์ฝ”๋“œ๋ฅผ ์ชผ๊ฐ ๋‹ค๋Š” ์˜๋ฏธ์ด๋ฉฐ, Tree-Shaking์€ ๋‚˜๋ฌด๋ฅผ ํ”๋“ค์–ด ์ฃฝ์€ ๋‚˜๋ฌด์žŽ์„ ๋–จ์–ดํŠธ๋ฆฌ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ฝ”๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์šฉ์–ด์ด๋‹ค. CSR์˜ .. 2022. 11. 20.
CSR SSR ๋™์ž‘ ๋‹จ๊ณ„ | CSR SSR ๊ฐœ๋…์  ์ฐจ์ด, ์žฅ๋‹จ์  ์‚ฌ์ „ ๊ฐœ๋… ์ •๋ฆฌ CSR๊ณผ SSR์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๊ธฐ ์ „์— ์•Œ์•„๋‘์–ด์•ผ ํ•˜๋Š” ์‚ฌ์ „ ์ง€์‹์— ๋Œ€ํ•ด ๋จผ์ € ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. 1. MPA์™€ SPA โ–ถ MPA (MultiPage Application) ์ „ํ†ต์  ํŽ˜์ด์ง€ Lifecycle, ํƒญ์„ ์ด๋™ํ•  ๋•Œ (๋งํฌ ํด๋ฆญ ์‹œ) ๋งˆ๋‹ค ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด HTML ํŒŒ์ผ์„ ๋ฐ›์•„์™€์„œ ํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ์ƒˆ๋กœ ๋ Œ๋”๋ง ํ•˜๋Š” ๋ฐฉ์‹ ๋ Œ๋”๋ง ๋ฐฉ์‹์œผ๋กœ SSR์„ ์‚ฌ์šฉ โ–ถ SPA (Single Page Application) ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜, ํŽ˜์ด์ง€๊ฐ€ ์ „์ฒด์ ์œผ๋กœ ๋ Œ๋”๋ง ๋˜์ง€ ์•Š๊ณ  ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๋™์ ์œผ๋กœ ๋ Œ๋”๋ง ๋˜๋Š” ๋ฐฉ์‹ ๋ Œ๋”๋ง ๋ฐฉ์‹์œผ๋กœ CSR์„ ์‚ฌ์šฉ 2. SPA ์‚ฌ์šฉ๊นŒ์ง€์˜ ์›น์˜ ์—ญ์‚ฌ โ–ถ ์˜ˆ์ „ Static Site(์ •์ ์ธ ํŽ˜์ด์ง€)๋กœ ์ฃผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ ๋ฐฉ์‹ ์„œ๋ฒ„์— ์ด๋ฏธ ์ž˜ ๋งŒ๋“ค์–ด์ง„ .. 2022. 10. 9.
React ํ”„๋กœ์ ํŠธ githubPages๋กœ ๋ฐฐํฌํ•˜๊ธฐ ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋„ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๋ฐฐํฌํ•˜๋Š” ์‚ฌ์ดํŠธ(๊นƒํ—™ ํŽ˜์ด์ง€, netlify, aws...)๋Š” ์—ฌ๋Ÿฌ ๊ณณ์ด ์žˆ์ง€๋งŒ, ๊ทธ์ค‘์—์„œ๋„ githubPages๋กœ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฃผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” githubPages์˜ ์žฅ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. github์„ ์ด์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ๋ณ„๋„๋กœ ์‚ฌ์ดํŠธ ๊ฐ€์ž…ํ•„์š” ์—†์Œ๐Ÿ™…๐Ÿป‍โ™€๏ธ ๋„๋ฉ”์ธ์„ ๊ตฌ์ž…ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค๋ฉด ๋ฌด๋ฃŒ!๐Ÿ˜ƒ Github์—์„œ ๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ•  ๋•Œ๋„ githubPages๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ๊ฐœ์ธ์ ์œผ๋กœ ๋ธ”๋กœ๊ทธ๋Š” ๊ทธ ๋ฐฉ๋ฒ•๋ณด๋‹ค๋Š” ์ด๋ฏธ ๋งŒ๋“ค์–ด์ง„ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ํŽธํ•œ ๊ฒƒ ๊ฐ™๋‹ค. githubPages๋Š” ๋ธ”๋กœ๊ทธ ์™ธ์—๋„ ์šฐ๋ฆฌ ํ”„๋กœ์ ํŠธ์˜ repository๋ฅผ ์›นํŽ˜์ด์ง€๋กœ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ค๋Š˜์€ ๊ทธ ์ค‘์—์„œ๋„ React ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํฌ์ŠคํŒ…ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. โšก ํ”„๋กœ์ ํŠธ์™€.. 2022. 6. 20.
[React] Coin Tracker - ๊ฐ’ ์–‘์ˆ˜, ์Œ์ˆ˜ ์ƒ‰์ƒ ๋‹ค๋ฅด๊ฒŒ ๋‚˜ํƒ€๋‚ด๊ธฐ ๊ตฌํ˜„ํ•˜๊ฒŒ ๋œ ์ด์œ ? ๋…ธ๋งˆ๋“œ์ฝ”๋” ์ฑŒ๋ฆฐ์ง€๋ฅผ ๋„์ „ํ•˜๋˜ ์ค‘์— ์ฃผ์‹์ด๋‚˜ ์ฝ”์ธ ์•ฑ์—์„œ ๋ณด์ด๋“ฏ์ด ๊ฐ€๊ฒฉ์ด ์˜ฌ๋ผ๊ฐ€๋ฉด ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ๋‚ด๋ ค๊ฐ€๋ฉด ํŒŒ๋ž€์ƒ‰์œผ๋กœ ํ‘œ์‹œ๋ฅผ ํ•ด๋ณด๊ณ  ์‹ถ์–ด์กŒ๋‹ค. ์–ด๋–ค ๋ฐฉ๋ฒ•์„ ์“ฐ๋ฉด ์ข‹์„์ง€ ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณด๋‹ค๊ฐ€ ์ ์ ˆํ•œ ๋ฐฉ๋ฒ•์ด ์—†์–ด์„œ ๊ณ ๋ฏผํ•˜๋˜ ์ค‘ slack ์ฑ„ํŒ…๋ฐฉ์— ๋‚˜์™€ ๋น„์Šทํ•œ ๊ณ ๋ฏผ์„ ํ•˜๋˜ ์‚ฌ๋žŒ์ด ์งˆ๋ฌธ๊ธ€์„ ์˜ฌ๋ ธ๊ณ , ์–ด๋–ค ๋ถ„์ด Math.sign์„ ํ™œ์šฉํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์˜๊ฒฌ์„ ์ฃผ์…”์„œ ๋ฐ”๋กœ ์ ์šฉํ•ด๋ณด์•˜๋‹ค. ํ•˜์ง€๋งŒ ์–ธ์ œ๋‚˜ ๊ทธ๋ ‡๋“ฏ ํ•œ ๋ฒˆ์— ์„ฑ๊ณตํ•˜์ง„ ๋ชปํ–ˆ๊ณ ๐Ÿ˜ฅ ์–ด๋–ค ์‹คํŒจ๋ฅผ ํ–ˆ์—ˆ๋Š”์ง€, ๊ฒฐ๊ตญ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ–ˆ๋Š”์ง€ ๊ธฐ๋กํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. Math.sign( ) โ“ ์ฃผ์–ด์ง„ ์ˆ˜์˜ ๋ถ€ํ˜ธ(+/-)๋ฅผ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜. ๋‹จ ์ œ๊ณตํ•œ ์ˆ˜๊ฐ€ 0์ด๋ผ๋ฉด +0/-0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๊ฐ’์ด ์–‘์ˆ˜ : 1์„ ๋ฐ˜ํ™˜ ๊ฐ’์ด ์Œ์ˆ˜ : -1์„ ๋ฐ˜ํ™˜ ๊ฐ’์ด ์–‘์˜ 0 : 0์„ ๋ฐ˜ํ™˜ ๊ฐ’์ด .. 2022. 5. 26.
๋ฐ˜์‘ํ˜•