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

Lect & Tip146

๋ฆฌ์•กํŠธ ์ปค์Šคํ…€ ํผ ์ปดํฌ๋„ŒํŠธ์™€ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ธฐ๋ฒ• ๋ฆฌ์•กํŠธ ์ปค์Šคํ…€ ํผ ์ปดํฌ๋„ŒํŠธ์™€ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ธฐ๋ฒ•๋ฆฌ์•กํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํผ์€ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ๋ฐ›์•„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ํ•ต์‹ฌ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ๋‹จ์ˆœํ•œ ์ž…๋ ฅ ์š”์†Œ๋ถ€ํ„ฐ ๋ณต์žกํ•œ ํผ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ์˜ ํผ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉด์„œ, ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์™€ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ ์šฉํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜(UX) ํ–ฅ์ƒ๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•ˆ์ •์„ฑ์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ฆฌ์•กํŠธ์—์„œ ์ปค์Šคํ…€ ํผ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ํ•จ๊ป˜, ๋Œ€ํ‘œ์ ์ธ ํผ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ Formik๊ณผ React Hook Form์„ ํ™œ์šฉํ•˜์—ฌ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.ํผ ์ปดํฌ๋„ŒํŠธ ๊ตฌ์„ฑ์˜ ์ค‘์š”์„ฑํผ ์ปดํฌ๋„ŒํŠธ๋Š” ๋‹จ์ˆœํžˆ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š” ์—ญํ• ์„ ๋„˜์–ด์„œ, ์‚ฌ์šฉ์ž์™€์˜ ์ธํ„ฐ๋ž™์…˜์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์˜ ์ •ํ™•์„ฑ์„ ๋ณด์žฅํ•˜๊ณ , ์˜ค๋ฅ˜ ๋ฐœ์ƒ ์‹œ ๋ช…ํ™•ํ•œ .. 2025. 8. 19.
๋ฆฌ์•กํŠธ) ๋ฐ˜์‘ํ˜• ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ” ๋ฐ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„ ๋ฐ˜์‘ํ˜• ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ” ๋ฐ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„ํ˜„๋Œ€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค ํ™˜๊ฒฝ์— ๋งž์ถฐ UI๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ, ๋ฐ˜์‘ํ˜• ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”์™€ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์›น์‚ฌ์ดํŠธ ๋‚ด์—์„œ ์‰ฝ๊ฒŒ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ํ•ต์‹ฌ ์š”์†Œ์ž…๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ฐ˜์‘ํ˜• ์›น ๋””์ž์ธ์„ ๊ณ ๋ คํ•œ ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”์™€ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด์˜ UI/UX ๋””์ž์ธ ํŒจํ„ด๊ณผ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ์ƒ์„ธํžˆ ์‚ดํŽด๋ณด๊ณ , ์‹ค์ œ ์ฝ”๋“œ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ๋‹จ๊ณ„๋ณ„ ๊ตฌํ˜„ ์ „๋žต์„ ์†Œ๊ฐœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.๋ฐ˜์‘ํ˜• ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”์˜ ํ•„์š”์„ฑ๊ณผ ๊ธฐ๋ณธ ์›์น™๋ฐ˜์‘ํ˜• ์›น ๋””์ž์ธ์€ ๋ฐ์Šคํฌํƒ‘, ํƒœ๋ธ”๋ฆฟ, ๋ชจ๋ฐ”์ผ ๋“ฑ ๋‹ค์–‘ํ•œ ํ™”๋ฉด ํฌ๊ธฐ์— ๋”ฐ๋ผ ์œ ๋™์ ์ธ ๋ ˆ์ด์•„์›ƒ์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ดํŠธ ์ „์ฒด๋ฅผ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ค‘์š”ํ•œ ๋ฉ”๋‰ด๋“ค์„ ์ œ๊ณตํ•˜๋Š”๋ฐ, ๋ฐ˜์‘ํ˜•.. 2025. 8. 15.
centos 7, ์šฐ๋ถ„ํˆฌ, ๋ฆฌ๋ˆ…์Šค root ๋น„๋ฐ€๋ฒˆํ˜ธ ์ดˆ๊ธฐํ™”, ๋ณ€๊ฒฝ centos 7, ์šฐ๋ถ„ํˆฌ, ๋ฆฌ๋ˆ…์Šค root ๋น„๋ฐ€๋ฒˆํ˜ธ ์ดˆ๊ธฐํ™”, ๋ณ€๊ฒฝ๋ฆฌ๋ˆ…์Šค ์„œ๋ฒ„๋ฅผ ์šด์šฉํ•˜๋‹ค ๋ณด๋ฉด root ๊ณ„์ • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ถ„์‹คํ•˜๊ฑฐ๋‚˜ ๊ต์ฒดํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ CentOS 7๊ณผ Ubuntu๋Š” ๋ถ€ํŒ… ๋กœ๋”์™€ ์ดˆ๊ธฐํ™” ์ ˆ์ฐจ๊ฐ€ ์ƒ์ดํ•˜๋ฏ€๋กœ ๊ฐ ๋ฐฐํฌํŒ์— ๋งž๋Š” ์ ˆ์ฐจ๋ฅผ ์ˆ™์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.์ด ๊ธ€์—์„œ๋Š” CentOS 7, Ubuntu, ๊ทธ๋ฆฌ๊ณ  ๊ธฐํƒ€ ๋ฆฌ๋ˆ…์Šค ๋ฐฐํฌํŒ์—์„œ root ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์•ˆ ๊ด€์ ์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ •์ฑ…, SELinux ๊ณ ๋ ค ์‚ฌํ•ญ, UEFI/Legacy ๋ชจ๋“œ ์ฐจ์ด๋ฅผ ๋‹ค๋ฃจ์–ด ์•ˆ์ •์ ์ธ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ๋ฅผ ๋•์Šต๋‹ˆ๋‹ค.์™œ root ๋น„๋ฐ€๋ฒˆํ˜ธ ์ดˆ๊ธฐํ™”๊ฐ€ ํ•„์š”ํ•œ๊ฐ€?๋น„๋ฐ€๋ฒˆํ˜ธ ๋ถ„์‹ค ์‹œ ์›๊ฒฉ ์ ‘์† ๋ถˆ๊ฐ€๋กœ ๊ธด๊ธ‰ ๋ณต๊ตฌ ํ•„์š”๊ด€๋ฆฌ์ž ๊ต์ฒด ๋˜๋Š” ํ‡ด์‚ฌ์— ๋”ฐ๋ฅธ ๋ณด์•ˆ ์ •์ฑ… ๊ฐ•ํ™”์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ ์˜ค๋ฅ˜๋กœ .. 2025. 6. 29.
๋ชจ๋“ˆ์‹ CSS์™€ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ ์Šคํƒ€์ผ๋ง ์ „๋žต ๋ชจ๋“ˆ์‹ CSS์™€ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ ์Šคํƒ€์ผ๋ง ์ „๋žตํ˜„๋Œ€ ์›น ๊ฐœ๋ฐœ์—์„œ๋Š” ์ปดํฌ๋„ŒํŠธ ๋‹จ์œ„๋กœ UI๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ , ๊ฐ๊ฐ์˜ ์ปดํฌ๋„ŒํŠธ์— ๋…๋ฆฝ์ ์ธ ์Šคํƒ€์ผ์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๋Š” ํ•ต์‹ฌ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ(React) ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ๋Š” CSS ํŒŒ์ผ์ด ์ „์—ญ์ ์œผ๋กœ ์ ์šฉ๋˜๊ฑฐ๋‚˜, ์Šคํƒ€์ผ์ด ์ค‘๋ณต๋˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“ˆ์‹ CSS ์ ‘๊ทผ๋ฒ•์ด ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” CSS Modules, SASS, LESS ๋“ฑ ๋‹ค์–‘ํ•œ ์Šคํƒ€์ผ๋ง ๊ธฐ๋ฒ•์„ ํ™œ์šฉํ•˜์—ฌ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ์˜ ์Šคํƒ€์ผ์„ ๋ชจ๋“ˆํ™”ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ตฌ์ฒด์ ์œผ๋กœ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.๋ชจ๋“ˆ์‹ CSS์˜ ํ•„์š”์„ฑ๊ณผ ๊ฐœ๋…์ „ํ†ต์ ์ธ CSS ๋ฐฉ์‹์€ ์ „์—ญ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฌธ์ œ๋กœ ์ธํ•ด ์Šคํƒ€์ผ ์ถฉ๋Œ, ์ค‘๋ณต ์ฝ”๋“œ ๋“ฑ์˜ ๋ฌธ์ œ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ํŠนํžˆ ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์ˆ˜.. 2025. 6. 23.
์‚ฌ์šฉ์ž ํ–‰๋™ ๋ถ„์„์„ ํ†ตํ•œ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ปดํฌ๋„ŒํŠธ ๊ฐœ์„  ์‚ฌ์šฉ์ž ํ–‰๋™ ๋ถ„์„์„ ํ†ตํ•œ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ปดํฌ๋„ŒํŠธ ๊ฐœ์„ ํ˜„๋Œ€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ๋‹จ์ˆœํ•œ ๋””์ž์ธ์ด๋‚˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ๊ฒฝํ—˜(UX)์„ ๊ทน๋Œ€ํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‹ค์ œ ์‚ฌ์šฉ์ž์˜ ํ–‰๋™ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ง€์†์ ์œผ๋กœ ๊ฐœ์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์‚ฌ์šฉ์ž ํ–‰๋™ ๋ถ„์„ ํˆด๊ณผ ์ด๋ฒคํŠธ ํŠธ๋ž˜ํ‚น์„ ํ™œ์šฉํ•˜์—ฌ ์‹ค์ œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ , ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ปดํฌ๋„ŒํŠธ ์ธํ„ฐ๋ž™์…˜์„ ๊ฐœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ตฌ์ฒด์ ์œผ๋กœ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.์‚ฌ์šฉ์ž ํ–‰๋™ ๋ถ„์„์˜ ์ค‘์š”์„ฑ์‚ฌ์šฉ์ž ํ–‰๋™ ๋ถ„์„์€ ์‚ฌ์šฉ์ž๊ฐ€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ์–ด๋–ป๊ฒŒ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š”์ง€ ํŒŒ์•…ํ•˜๋Š” ํ•ต์‹ฌ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋А ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋Š”์ง€, ์Šคํฌ๋กค ํŒจํ„ด์€ ์–ด๋– ํ•œ์ง€, ์–ด๋А ์œ„์น˜์—์„œ ์ดํƒˆํ•˜๋Š”์ง€ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๋ถ„์„ํ•จ์œผ๋กœ์จ, ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋ฌธ์ œ์ ์„ ๋ฐœ๊ฒฌํ•˜๊ณ  ๊ฐœ์„  ๋ฐฉ.. 2025. 6. 19.
๋ฆฌ์•กํŠธ ์ปจํ…์ŠคํŠธ API๋ฅผ ํ™œ์šฉํ•œ ๊ธ€๋กœ๋ฒŒ ์ƒํƒœ ๊ด€๋ฆฌ ๋ฆฌ์•กํŠธ ์ปจํ…์ŠคํŠธ API๋ฅผ ํ™œ์šฉํ•œ ๊ธ€๋กœ๋ฒŒ ์ƒํƒœ ๊ด€๋ฆฌ๋ฆฌ์•กํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ ์  ๋ณต์žกํ•ด์ง์— ๋”ฐ๋ผ, ์—ฌ๋Ÿฌ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ณต์œ ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•œ ๊ณผ์ œ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ „ํ†ต์ ์œผ๋กœ๋Š” props๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ–ˆ์ง€๋งŒ, ๊นŠ์€ ์ปดํฌ๋„ŒํŠธ ํŠธ๋ฆฌ ๊ตฌ์กฐ์—์„œ๋Š” props ๋“œ๋ฆด๋ง(props drilling) ๋ฌธ์ œ๋กœ ์ธํ•ด ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ํฌ๊ฒŒ ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฆฌ์•กํŠธ๋Š” ์ปจํ…์ŠคํŠธ API(Context API)๋ฅผ ๋„์ž…ํ•˜์˜€์œผ๋ฉฐ, ์ด๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๊ธ€๋กœ๋ฒŒ ์ƒํƒœ๋ฅผ ์†์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•˜๊ณ , UI ์ปดํฌ๋„ŒํŠธ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ฆฌ์•กํŠธ ์ปจํ…์ŠคํŠธ API์˜ ๊ธฐ๋ณธ ๊ฐœ๋…, ์‚ฌ์šฉ ๋ฐฉ๋ฒ•, ๊ทธ๋ฆฌ๊ณ  ์‹ค์ œ ์‚ฌ๋ก€๋ฅผ ํ†ตํ•ด ๊ธ€๋กœ๋ฒŒ ์ƒํƒœ ๊ด€๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด .. 2025. 6. 16.