230726(์)
๐ค ์ฑ์ฅ์ผ์ง 6.0
์ฑ
ํ๋ณตํ ์ด๊ธฐ์ฃผ์์(์จ์ธ ๋ค์ด์ด)
์ ๋ด์ฉ์ ์๊ทน๋ฐ์ ์์ํ๋ ์๋ฐํ ์ฑ์ฅ๊ธฐ๋ก
์ด์์๋ ๊ฝ๊ณผ ์ฃฝ์ ๊ฝ์ ์ด๋ป๊ฒ ๊ตฌ๋ณํ๋๊ฐ?
์ฑ์ฅํ๊ณ ์๋ ๊ฒ์ด ์ด์ ์๋ ๊ฒ์ด๋ค.
์๋ช ์ ์ ์ผํ ์ฆ๊ฑฐ๋ ์ฑ์ฅ์ด๋ค!
๐พ (4.0)ํ์ต ํค์๋์์ ์ต๋ํ ๊ฐ๋จํ ์ ๋ณด ์ ๊ณต, ๊ณ ๋ฏผ์์ ๋ด ๊ฒฝํ์ ์์ธํ ์ ์!
๐ฅ (5.0)ํ์ต ํค์๋๋ ํ์ค์ ํต์ฌ์ผ๋ก๋ง ์ ๋ฆฌ, ์ฑ๊ณต/์คํจ ์ผ์ง ์์ฑํ๊ธฐ! ์ด ๋, ์คํจ์ ๊ฒฝํ์ ์์ธํ ์ ๊ธฐ!
๐ (6.0)<์์ ๊ฐํธ!!!> ๋งค์ผ ์ต๊ด์ ์ผ๋ก ํต์ฌ๋ง ์ ์ ์ ์๊ฒ ํ๋ ์ ๋ณ๊ฒฝ. ์ฑ๊ณต๋ณด๋จ ์คํจ์ ์ด์ ์ ๋ง์ถ๊ธฐ.
- ๐ (6.1)<์์ > ๋งค๋ฒ ์ฑ๊ณต, ์คํจ๋ฅผ ๋ฐ๋ก ์ ๋ ๊ฒ๋ณด๋จ ๊ฒฝํ์ผ๋ก ํํํ์
๐ ์ค๋์ ๊ฐ์
๊ทธ ๋์ ๋ญ๊ฐ ์กฐ๊ธ ๊ณ์ ๋ต๋ตํ๋ค๋ ๋๋์ ๋ฐ์๋๋ฐ, ์ด์ ๊ทธ ๋ฐฉํฅ์ ์กฐ๊ธ ์ ๊ฒ ๊ฐ๋ค. input์ด ์๋ output์ ์ค์ฌ์ผ๋ก ๊ณํ์ ์ธ์ฐ์. ์ง๊ธ๊น์ง ๋ด๊ฐ ์ธ์ด ๊ณํ๋ค์ ๋๋ถ๋ถ input์ ์ค์ฌ์ผ๋ก
์ธ์ ๋ค. ์ด์ ๋ถํฐ๋ input์ด ์๋ output
์ ์ง์คํด์ ๊ณํ์ ์ธ์๋ณด๋ ค ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ output์ด ๊ทธ ๋ ์ ๋ชฉํ๊ฐ ๋๋ ๊ฒ์ด๋ค.
๐ซง ์ค๋์ ๊ณ ๋ฏผ
Proxy ๊ฐ์ฒด ํ์ฉ ๋ฐฉ๋ฒ
Proxy ๊ฐ์ฒด๋ฅผ ํตํด์ ๊ฐ์ฒด์ getter, setter ์ ํน์ ๋์์ ์ถ๊ฐํ ์ ์์์ ์์๋ค. ๋ค๋ง, ์ด๋ฅผ ์ค์ ํ๋ก์ ํธ์์๋ ์ด๋ป๊ฒ ํ์ฉํ ์ ์์์ง ๋ชจ๋ฅด๊ฒ ๋ค. Proxy ํจํด์ผ๋ก ๊ตฌํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๊ฐ ์๋์ง ์ฐพ์๋ณด๋ ค ํ๋ค. ์ง๊ธ ๋๋ ํ์ฉ์ ์ด๋ค ์ฝ๋ฐฑ์ ์ธ์๋ก ๋ฐ๋ ํจ์์์ ๊ฐ์ฒด๋ฅผ ๋ฐํํ๊ณ ๊ทธ ๊ฐ์ฒด์ ํ๋กํผํฐ๋ฅผ ์ฌ์ฉํ ๋ ํน์ ๋์(์ธ์๋ก ๋ฐ์ ์ฝ๋ฐฑ)์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ด ์์ง ์์๊น ์ถ๋ค.
โ๏ธ ์ค๋์ ๊ฒฝํ
Deque ์๋ฃ๊ตฌ์กฐ
Deque๋ Double-ended Queue์ ์ฝ์๋ก, ์๋ฐฉํฅ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๊ฑฐ๋ ์ญ์ ํ ์ ์๋ ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์ฆ, ์คํ๊ณผ ํ๋ฅผ ํฉ์น ์๋ฃ๊ตฌ์กฐ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. head์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ , ์ ๊ฑฐ๊ฐ ๊ฐ๋ฅํ๊ณ tail์์๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ , ์ ๊ฑฐ๊ฐ ๊ฐ๋ฅํ๋ค. ์ด ์๋ฃ๊ตฌ์กฐ๋ฅผ ๊ตฌํํ๊ธฐ ์ํด์๋ ์๋ฐฉํฅ ๋ฆฌ์คํธ๊ฐ ํ์ํ๋ค. ์๋ฐฉํฅ ๋ฆฌ์คํธ๋ฅผ ๊ตฌํํ๊ณ Deque๋ฅผ ๊ตฌํํ๋ฉด ์คํ๊ณผ ํ๋ ์ ๋ง ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ค.
๐พ ์ค๋์ ๊ตํ
์์ผ๋ก ๊ณํ์ output์ ์์ฃผ๋ก ์์ฑํ๋ค. input๋ณด๋ค output์ ์ง์คํ๊ณ ๊ทธ ๋ ์ ์ฑ๊ณผ๋ฅผ output์ผ๋ก ์ธก์ ํด์ ๊ธฐ์ตํ์.