Flyweight
Flyweight ํจํด์ ์๋ง์ ๊ฐ์ฒด๋ฅผ ์์ฑํด์ผ ํ๋ ์ํฉ์์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ์ค์ด๊ณ ์ฑ๋ฅ์ ๊ฐ์ ํ๊ธฐ ์ํ ๋์์ธ ํจํด์ ๋๋ค. ์ด ํจํด์ ํต์ฌ ์์ด๋์ด๋ ๋์ผํ ์ํ๋ฅผ ๊ฐ์ง๋ ๊ฐ์ฒด๋ฅผ ์ฌ๋ฌ ๋ฒ ์์ฑํ๋ ๋์ , ์ด๋ฏธ ์์ฑ๋ ๊ฐ์ฒด๋ฅผ ์ฌ์ฌ์ฉ(๊ณต์ )ํ๋ ๋ฐฉ์์ ์์ต๋๋ค.
์บ์(cache)๋ ํ(pool) ๋ฐฉ์์์ ์ด๋ฏธ ์กด์ฌํ๋ id๋ฅผ ๊ฐ์ง ๊ฐ์ฒด๊ฐ ์๋ค๋ฉด ์ ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ์๊ณ ํด๋น ๊ฐ์ฒด๋ฅผ ๋ฐํํฉ๋๋ค. ๋ง์ฝ ํด๋น ๊ฐ์ฒด๊ฐ ์๋ค๋ฉด ์๋ก ์์ฑํ์ฌ ์ ์ฅํ ํ ๋ฐํํ๋ ๋ฐฉ์์ ๋๋ค.
๊ธฐ์กด์ id๋ฅผ ๊ฐ์ง ๊ฐ์ด ์์ผ๋ฉด ๊ทธ๊ฐ์ ์ฃผ๊ณ ์์ผ๋ฉด ์๋กญ๊ฒ ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ ์ถ๊ฐํด์ ์ฃผ๋(๊ณต์ ) ๋ฐฉ์์ ๋๋ค. Java์ ์ฌ๋ฌ Cache ์์ ์ฌ์ฉ๋๊ณ ์๋ ๋ฐฉ์์ ๋๋ค.
How do code
Last updated