component3 React์ SPA ๊ทธ๋ฆฌ๊ณ Component ๋ค์ด๊ฐ๋ฉฐ์ด์ ๋ Front ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋์ธ๊ฐ ๋์ด๋ฒ๋ฆฐ ๋ฉํ์ React.js์ ๋๋ค. ์ด๋ฏธ ์๋ง์ ์๋น์ค์์ React๋ฅผ ๋์ ํ๊ณ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ ์ปดํฌ๋ํธ ๊ธฐ๋ฐ๊ณผ ๊ฐ๋ ฅํ ์ ์ธํ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ์ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค. ์ ๊ฒฝ์ฐ๋ DOM์ ์ง์ ์กฐ์ํ๊ณ ๋ค๋ฃจ๋ javascript ๊ฐ๋ฐ ๋ฐฉ์๋ ๋ฌด๋ฆฌ๋ ์์ต๋๋ค. ๊ทธ๋ ๊ฒ ๋ณต์กํ๊ณ ํฐ ์ฌ์ฉ์ UI ํ๊ฒฝ์ ๊ฐ์ถ ํ๋ก์ ํธ๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ํ์ง๋ง ๋๊ท๋ชจ ํ๋ก์ ํธ์์๋ ํจ์จ์ ์ผ๋ก ์ฝ๋๋ฅผ ๊ด๋ฆฌํ๊ณ , ์ปดํฌ๋ํธ ๊ธฐ๋ฐ UI ๊ฐ๋ฐ์ ์ง์ํ๋ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ(๋ผ์ด๋ธ๋ฌ๋ฆฌ)๊ฐ ํ์ํ๋ค๋ณด๋ React๊ฐ ๊ฝค๋ ์ฃผ๋ชฉ๋ฐ์์ ๊ฑฐ๋ผ ์๊ฐํฉ๋๋ค. React๋ง์ ํน์ง1. ์ปดํฌ๋ํธ ๊ธฐ๋ฐUi๋ฅผ ์์ ๋จ์๋ก ์ชผ๊ฐ์ ์์ฑํ๋ค๋ ๋ถ๋ถ์ด ํฐ ์ฅ์ ์ด ๋ฉ๋๋ค. ์ปดํฌ๋ํธ ๋จ์๋ก UI๋ฅผ ์กฐ์ํ๋ค๋ณด๋ ์ฌ์ฌ์ฉ์ฑ๊ณผ .. 2025. 9. 10. [๋์์ธํจํด] ์ปดํฌ์งํธ(Composite) ํจํด ์ปดํฌ์งํธ ํจํด(Composite Pattern)*์ปดํฌ์งํธ ํจํด(Composite Pattern)**์ ๊ตฌ์กฐ์ ๋์์ธ ํจํด ์ค ํ๋๋ก, ๊ฐ์ฒด๋ฅผ ํธ๋ฆฌ ๊ตฌ์กฐ๋ก ๊ตฌ์ฑํ์ฌ ๋ถ๋ถ-์ ์ฒด ๊ณ์ธต์ ํํํ ๋ ์ฌ์ฉ๋ฉ๋๋ค. ์ด ํจํด์ ํด๋ผ์ด์ธํธ๊ฐ ๋จ์ผ ๊ฐ์ฒด์ ๋ณตํฉ ๊ฐ์ฒด๋ฅผ ๋์ผํ ๋ฐฉ์์ผ๋ก ๋ค๋ฃฐ ์ ์๋๋ก ํด์ค๋๋ค. ์ฆ, ๊ฐ๋ณ ๊ฐ์ฒด(Leaf)์ ๋ณตํฉ ๊ฐ์ฒด(Composite)๋ฅผ ๋์ผํ ์ธํฐํ์ด์ค๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.1. ์ปดํฌ์งํธ ํจํด์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ตฌ์ฑ ์์:Component: ๊ฐ์ฒด๋ค ๊ฐ์ ๊ณตํต ์ธํฐํ์ด์ค๋ฅผ ์ ์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ Leaf์ Composite์์ ๊ณตํต์ผ๋ก ์ฌ์ฉํ๋ ๋ฉ์๋๊ฐ ํฌํจ๋ฉ๋๋ค.Leaf: ํธ๋ฆฌ์ ๋ง๋จ ๋ ธ๋๋ฅผ ํํํ๋ฉฐ, ๋ ์ด์ ์์์ ๊ฐ์ง์ง ์๋ ๊ฐ์ฒด์ ๋๋ค. Component ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํฉ๋๋ค.Compos.. 2024. 8. 25. [๋์์ธํจํด] ๋ฐ์ฝ๋ ์ดํฐ ํจํด ๋ฐ์ฝ๋ ์ดํฐ ํจํด (Decorator Pattern)๋ฐ์ฝ๋ ์ดํฐ ํจํด์ ๊ฐ์ฒด ์งํฅ ๋์์ธ ํจํด ์ค ํ๋๋ก, ๊ฐ์ฒด์ ๋์ ์ผ๋ก ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์๋ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ํจํด์ ๊ธฐ์กด์ ํด๋์ค๋ฅผ ์์ ํ์ง ์๊ณ ๋ ๊ฐ์ฒด์ ์ถ๊ฐ์ ์ธ ์ฑ ์์ ๋ถ์ฌํ ์ ์๊ฒ ํด์ค๋๋ค. ๋ฐ์ฝ๋ ์ดํฐ ํจํด์ ์์ ๋์ ์กฐํฉ(composition)์ ํตํด ๊ธฐ๋ฅ์ ํ์ฅํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ๋ฉฐ, ์ด๋ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ ๊ฐ๋ฐฉ-ํ์ ์์น(Open-Closed Principle)์ ์ค์ํ๋ ๋ํ์ ์ธ ์์ ๋๋ค.1. ๋ฐ์ฝ๋ ์ดํฐ ํจํด์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ตฌ์ฑ ์์:์ปดํฌ๋ํธ(Component): ๊ธฐ๋ณธ ์ธํฐํ์ด์ค๋ ์ถ์ ํด๋์ค์ด๋ฉฐ, ๊ตฌ์ฒด์ ์ธ ๊ฐ์ฒด๋ค์ด ์ด๋ฅผ ๊ตฌํํฉ๋๋ค.์ฝํฌ๋ฆฌํธ ์ปดํฌ๋ํธ(Concrete Component): ์ค์ ๊ธฐ๋ฅ์ ๊ตฌํํ ํด๋์ค์ ๋๋ค. ๋ฐ์ฝ๋ ์ดํฐ.. 2024. 8. 23. ์ด์ 1 ๋ค์