๋๋ฒ๊น ์ ์ค๋ฅ์ ์์ธ์ ์ฐพ๊ณ ์์ ํ๋ ๊ณผ์ ์ด๋ค. ๋ค์ํ ํ๋ซํผ์์ ๊ตฌ๋๋๋ ์๋ฐ์คํฌ๋ฆฝํธ ํน์ฑ์ ํ๋ซํผ ๋ณ๋ก ๋๋ฒ๊น ๋๊ตฌ๊ฐ ๋ค์ํ๊ณ , ์ฌ์ฉ๋ฒ๋ ๊ฐ๊ธฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ณดํต "์๋ฐ์คํฌ๋ฆฝํธ ๋๋ฒ๊น ์ ์ด๋ ต๋ค"๊ณ ๋งํ๋ค. ํ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ ๋๋ฒ๊น ๋๊ตฌ๊ฐ ๋ง์ด ๋ฐ์ ํ๊ณ , ํนํ ๋ชจ๋ ๋ธ๋ผ์ฐ์ ์ ๊ฐ๋ฐ์ ๋๊ตฌ๋ ๋๋ถ๋ถ ์ ์ฌํ ๊ธฐ๋ฅ๊ณผ UI๋ฅผ ์ ๊ณตํ๋ฏ๋ก ์ด๋ ต์ง ์๊ฒ ๋๋ฒ๊น ํ ์ ์๋ค. ์ด ๊ฐ์ด๋๋ ๋๋ฒ๊น ๋๊ตฌ ์ค ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ ์ค์ฌ์ผ๋ก ์ค๋ช ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ฒ๊น ํ๊ฒฝ์ด ์กฐ๊ธ ๋ค๋ฅธ ์ธํฐ๋ท ์ต์คํ๋ก๋ฌ(์ดํ IE) ๊ฐ๋ฐ์ ๋๊ตฌ๋ ์ค๋ช ํ๋ค. ๋ค์ํ ํ๊ฒฝ์์ ๋ฐ์ํ ์ ์๋ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง ์ด์๋ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง ์ด์์์ ์ข ๋ ์์ธํ ๋ค๋ฃจ๊ธฐ๋ก ํ๋ค.
ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ๋ ํ์ฌ ์ ์ธ๊ณ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ๋๋ฒ๊น ๋๊ตฌ์ด๊ณ , ๊ฐ์ฅ ๋ง์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. Chromium(ํฌ๋กฌ์ ์คํ์์ค ํ๋ก์ ํธ)์ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํ๋ผ๋ ํฌ๋กฌ๊ณผ ๊ฐ์ ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ค.ย ์ด ๊ฐ์ด๋๋ ํฌ๋กฌ 70๋ฒ์ ์ ๊ธฐ์ค์ผ๋ก ๊ฐ๋ฐ์ ๋๊ตฌ์ ์ฃผ์ ํ๋ฉด๊ณผ ๊ธฐ๋ฅ์ ์ค๋ช ํ๋ค. ๊ทธ ์ธ ๊ธฐ๋ฅ์ ๊ณต์ ํํ์ด์ง์์ ํ์ธํ ์ ์๋ค.
ํฌ๋กฌ ๋ฉ๋ด์์ ์คํํ๊ธฐ
์น ํ์ด์ง ์์์ ์คํํ๊ธฐ
๋จ์ถํค๋ก ์คํํ๊ธฐ
Sources ํญ์์๋ ํ์ด์ง์ ๋ก๋๋ ๋ฆฌ์์ค ํ์ผ์ ํ์ธํ ์ ์์ผ๋ฉฐ, ํ์ฌ ๋ก๋๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ ํ์ฌ ํ ์คํธํ ์ ์๋ ์คํฌ๋ฆฝํธ ๋๋ฒ๊น ๊ธฐ๋ฅ์ ์ง์ํ๋ค. ์๋์ ๊ทธ๋ฆผ์ Sources ํญ ํ๋ฉด์ด๋ค. ์ผํธ์๋ ๋ก๋๋ ๋ฆฌ์์ค ํ์ผ์ ํด๋ ํธ๋ฆฌ๊ฐ, ์ค์์๋ ์์ค์ฝ๋๊ฐ, ์ค๋ฅธํธ์๋ ๋ค์ํ ๊ธฐ๋ฅ ๋ฒํผ๊ณผ ์ ๋ณด๊ฐ ์๋ค.
์์ ๊ทธ๋ฆผ์ ๊ฐ ๋ฒํธ์ ๋ํ ์์ธํ ์ค๋ช ์ ์๋์ ๊ฐ๋ค.
1 ) ์ค ๋ฒํธ๋ฅผ ํด๋ฆญํ์ฌ ์ค๋จ์ ์ ์ค์ ํ๋ค. ์ค๋จ์ ์ ์ค์ ํ๋ฉด ํด๋น ์ค ์คํ ๋จ๊ณ์์ ์คํ์ด ์ค๋จ๋๋ค. 2 ) ์คํ์ด ์ค๋จ๋ ์ํ์์ ๊ฐ ๋ฒํผ์ผ๋ก ์๋ฐ์คํฌ๋ฆฝํธ ์คํ ํ๋ฆ์ ์ ์ดํ์ฌ ์คํ ๋๋ฒ๊น ์ ํ ์ ์๋ค. 3 ) ๋๋ฒ๊น ์ ์ดํด๋ณด๊ณ ์ถ์ ๋ณ์๋ ๊ฐ์ฒด๋ฅผ Watch์ ๋ฑ๋กํ์ฌ ์ค๋จ ์์ ์ ์ด๋ค ๊ฐ์ ๊ฐ์ก๋์ง ํ์ธํ๋ค. 4 ) ์น ํ์ด์ง๊ฐ ๋ก๋๋ ์๊ฐ๋ถํฐ ์ค๋จ๋ ์๊ฐ๊น์ง์ ํจ์ ํธ์ถ ์คํ์ ํ์ธํ ์ ์๋ค. ํธ์ถ ์คํ์ ํด๋ฆญํ๋ฉด ํด๋น ์ฝ๋๋ฅผ ๋ฐ๋ก ๋ณผ ์ ์๋ค.
๋๊ฐ Sources ํญ์์ ์ํ๋ ์ค ๋ฒํธ์ ์ค๋จ์ ์ ๊ฑธ์ด์ ์ฌ์ฉํ์ง๋ง, ๋๋ฒ๊น ์ ํ๋ค ๋ณด๋ฉด ํน์ ์์น๊ฐ ์๋ ํน์ ์ํฉ์์ ์ค๋จ์ ์ ๊ฑธ๊ณ ์ถ์ ๋๊ฐ ์๋ค. ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ๋ ์ฝ๋์ ํน์ ์์น๋ฅผ ์ ํํ๊ธฐ ์ด๋ ค์ด ์๊ฐ์๋ ์ค๋จ์ ์ ์ค์ ํ ์ ์๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค.
ํน์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์์ ์ ๋๋ฒ๊น ํ๊ณ ์ถ์ ๋ Event Listener Breakpoints๋ฅผ ์ฌ์ฉํ๋ค. ์๋ฅผ ๋ค์ด ํด๋ฆญ ์ด๋ฒคํธ์ ์ค๋จ์ ์ ์ค์ ํ๋ฉด, DOM์ ํด๋ฆญ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ์์ ์คํ์ด ์ค๋จ๋๋ค. Sources ํญ โ [Event Listener Breakpoints]์์ ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์ค๋จ์ ์ผ๋ก ์ค์ ํ๊ณ , ์ดํ์ ์ค๋จ์ ์ผ๋ก ์ค์ ํ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ฉด ์คํ์ด ์ค๋จ๋๋ค.
Sources ํญ์์ ์ํ๋ ์ฝ๋์ ์ค๋จ์ ์ ์ค์ ํ๋ ๊ฒ๊ณผ ๋น์ทํ๋ฐ, ์ง์ ํ ์กฐ๊ฑด์์๋ง ์คํ์ ์ค๋จํ๋ค. ์๋ฅผ ๋ค๋ฉด ๋น๋ฒํ๊ฒ ํธ์ถ๋๋ ํจ์์์ ํน์ ๊ฐ์ ๋งค๊ฐ๋ณ์๊ฐ ์ ๋ฌ๋๋ ์๊ฐ์ด๋ ๋ฃจํ์ ๋ง์ง๋ง ์์๋ง ํ์ธํ๊ณ ์ถ์ ์๊ฐ ๋ฑ์์ ์กฐ๊ฑด๋ถ ์ค๋จ์ ์ ์ฌ์ฉํ๋ค. ์ํ๋ ์ฝ๋ ์ค ๋ฒํธ์์ ์ฐํด๋ฆญ โ [Add conditional breakpoint]์ ์ ํํ๋ฉด, ์ํ๋ ์กฐ๊ฑด์ ์ค์ ํ ์ ์๋ค.
ํ์ํ ์กฐ๊ฑด์ ์ฝ๋๋ก ์ ๋ ฅํ๋ฉด, ํด๋น ์กฐ๊ฑด์ ๋ง์กฑํ ๋๋ง ์คํ์ด ์ค๋จ๋๋ค.
ํน์ DOM์ด ๋ณ๊ฒฝ๋์์ ๋ ์คํ์ ์ค๋จํ ์ ์๋ค. ์ฆ, ํน์ DOM์ด๋ ์์ ๋ ธ๋์ ๋ณํ๊ฐ ์์ ๋๋ง ์คํ์ ์ค๋จํ๋ค. Elements ํญ โ ์ํ๋ element์์ ์ฐํด๋ฆญ โ [Break on]์ ์ ํํ๋ฉด, ์ธ ๊ฐ์ง ๋ฉ๋ด๊ฐ ๋์ค๊ณ ์ด ์ค์์ ์ํ๋ ๊ฒ์ ์ค๋จ์ ์ผ๋ก ์ค์ ํ๋ค.
ํน์ ์ฃผ์๋ก ์์ฒญ์ ๋ณด๋ด๋ Ajax ์ฝ๋๋ฅผ ์ฐพ๊ณ ์ถ์ ๋ Ajax๋ฅผ ์ค๋จ์ ์ผ๋ก ์ค์ ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด Ajax ํธ์ถ์ด ์ผ์ด๋๊ณ ์์ง๋ง ์ด๋ค ์ฝ๋์์ ์์ฒญํ๋์ง ํ์ธํ๊ธฐ ํ๋ ์ํฉ์์ ํ์ฉํ ์ ์๋ค. Source ํญ โ [XHR/Fetch Breakpoints]์์ ์ํ๋ ํจํด์ ์ถ๊ฐํ์ฌ ์ค๋จ์ ์ ์ค์ ํ๋ฉด, ํด๋น ํจํด์ Ajax ํธ์ถ์ด ์ผ์ด๋ ์ฝ๋์์ ์คํ์ด ์ค๋จ๋๋ค.
์คํญ ๋๋ฒ๊น ์ผ๋ก ๋๋ฒ๊น ์ ํ๋ค ๋ณด๋ฉด ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฝ๋๋ก ๋๋ฒ๊น ํฌ์ธํธ๊ฐ ์ด๋ํ ๋๊ฐ ์๋ค. ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฝ๋์ ๋ฒ๊ทธ๊ฐ ์๋ ๊ฒฝ์ฐ๋ ์๊ฒ ์ง๋ง ๋๋ถ๋ถ์ ์ฐ๋ฆฌ๊ฐ ์์ฑํ ๋ก์ง์ ๋๋ฒ๊น ํด์ผ ํ๋ค. ์ด๋ ๋ธ๋๋ฐ์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ฝ๋๋ฅผ ์คํญ ๋๋ฒ๊น ์์ ์จ๊ธธ ์ ์๋ค. ๋ํ, ๋๋ฒ๊น ๋์์ด ์๋ ํ์ผ(๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ธ๋ถ ํ์ผ ๋ฑ)์ ๋ธ๋๋ฐ์ค ์ฒ๋ฆฌํ๋ฉด ํด๋น ํ์ผ์ ํธ์ถ ์คํ์์ ์จ๊ธธ ์ ์๊ณ , ๊ทธ๋ผ ํธ์ถ ์คํ์๋ ํ์ํ ํ์ผ๋ง ๋จ์ ๋ด๊ฐ ์์ฑํ ์ฝ๋์ ์ง์คํด์ ๋๋ฒ๊น ํ ์ ์๋ค. ๋ธ๋๋ฐ์ค๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง์ด๋ค.
Sources ํญ์์ ๋ธ๋๋ฐ์ค๋ก ์ฒ๋ฆฌํ ํ์ผ์ ์ด๊ณ , ์ฐํด๋ฆญํ์ฌ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด [Blackbox Script]๋ฅผ ์ ํํ๋ค. ๋๋ Call Stack์์๋ ์ฐํด๋ฆญ์ผ๋ก [Blackbox Script]๋ฅผ ์ ํํ ์ ์๋ค.
[Settings] ๋ฉ๋ด โ Blackboxing ํญ์์ ๋ธ๋๋ฐ์ค ์ฒ๋ฆฌํ ํ์ผ์ ์ถ๊ฐ ํ๋ค.
Performance ํญ๊ณผ Memory ํญ์ ์ฑ๋ฅ ์ ํ ์์ธ์ ์ฐพ์ ์ ์๋ ์ค์ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค. ์ฑ๋ฅ์ ๋ํ ๋ ์์ธํ ๋ด์ฉ์ [FE ๊ฐ์ด๋] ์ฑ๋ฅ์ ์ฐธ๊ณ ํ๊ธฐ ๋ฐ๋๋ค. ์ด ๊ฐ์ด๋๋ ๋ฉ๋ชจ๋ฆฌ ๊ด์ ์์ ์ฑ๋ฅ ๊ฐ์ ํฌ์ธํธ๋ฅผ ์ฐพ์ ์ ์๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค. Memory ํญ์ ์ฌ์ฉํ๋ฉด ์๋์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ด ์ธ ๊ฐ์ง ํ๋กํ์ผ๋ง์ ์ฌ์ฉํ ์ ์๋ค. ๋ฉ๋ชจ๋ฆฌ ์ํ๋ฅผ ํ์ธํ๋ฉฐ ๋๋ฒ๊น ์ ํด์ผํ ๋, ์ธ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ ์ ํ๊ฒ ์ฌ์ฉํด๋ณด์.
์๋ฐ์คํฌ๋ฆฝํธ ๊ตฌ๋ ์์ ํ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ๋ ๊ฒ์๋ ๋ณ์, ๊ฐ์ฒด, ํด๋ก์ ๋ฑ์ด ์๊ณ , ๊ฐ๋น์ง ์ปฌ๋ ํฐ๊ฐ ๋ฉ๋ชจ๋ฆฌ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ด๋ฆฌํ๋ค. ๊ฐ๋น์ง ์ปฌ๋ ํฐ๋ ๋ ์ด์ ์ฌ์ฉํ์ง ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ํ์ํ๋๋ฐ, ์ด๋ ์ฐธ์กฐ๊ฐ ํ๋๋ผ๋ ๋จ์์๋ ๊ฐ์ฒด๋ ํ์ํ์ง ์๋๋ค. ์ด๋ ๊ฒ ๋จ์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ ๋ฉ๋ชจ๋ฆฌ ๋์๋ฅผ ๋ฐ์์ํจ๋ค. [Heap snapshot] ํ๋กํ์ผ๋ง ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ ํ์ฌ ํ ๋ฉ๋ชจ๋ฆฌ ์ํ๋ฅผ ํ์ธํ ์ ์๋ค.
์์ ๊ทธ๋ฆผ์ ๋ ๊ฐ์ ํ ์ค๋ ์ท์ ์์ฑํ์ฌ ๋น๊ตํ ํ๋ฉด์ด๋ค. Snapshot 1์ ํ์ด์ง๊ฐ ๋ก๋ฉ๋๊ณ ํ ์ค๋ ์ท์ ๊ธฐ๋กํ ๊ฒ์ด๊ณ , Snapshot 2์ ํ์ด์ง ๋ก๋ฉ ์ดํ ์ฌ๋ฌ ๋์์ ํ ๋ค ํ ์ค๋ ์ท์ ๊ธฐ๋กํ ๊ฒ์ด๋ค. ์ด๋ Snapshot 2ํ๋ฉด์์ ๋นจ๊ฐ ๋ฐ์ค ํญ๋ชฉ์ Comparison์ผ๋ก ๋ณ๊ฒฝํ๋ฉด Snapshot 2๋ฅผ ๊ธฐ์ค์ Snapshot 1๊ณผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋น๊ตํ ์ ์๋ค. ๋น์ ์์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฆ๊ฐํ๊ฑฐ๋ ํน์ ํด์ ๋์ง ์๋ ๋ถ๋ถ์ด ์๋์ง ๋ Snapshot ๋น๊ต ๊ฒฐ๊ณผ๋ก ์ ์ถํ ์ ์๋ค.
ํ์๋ผ์ธ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ๋ณํ๋ฅผ ํ์ธํ๊ณ ์ถ์ ๋๋ [Allocation instrumentation on timeline]์ ์ฌ์ฉํ์ฌ ์น ํ์ด์ง ๋์ ์ค ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ด ์ด๋ป๊ฒ ๋ณํ๋์ง ๊ธฐ๋กํ ์ ์๋ค. ์๋์ ๊ทธ๋ฆผ์ ํ์๋ผ์ธ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ธฐ๋กํ ๊ฒ์ผ๋ก ํ๋์ ๋ง๋๋ ์๋กญ๊ฒ ํ ๋น๋ ๋ฉ๋ชจ๋ฆฌ์์ ๋ํ๋ธ๋ค. ํ๋์ ๋ง๋๋ฅผ ํ ๋๋ก ๋ฉ๋ชจ๋ฆฌ ๋์๋ ์ฆ๊ฐ ํน์ ๊ฐ๋น์ง ์ปฌ๋ ํฐ๊ฐ ๋ถํ์ํ๊ฒ ๋ง์ด ์ผ์ด๋์ง๋ ์๋์ง ๋ฑ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ์ถ์ด๋ฅผ ํ์ธํ๋ค.
[Allocation sampling]์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ ๋น๋๋ ์์ ์ ๊ธฐ๋กํ๋ค. ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ ํจ์๋ณ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ด์ญ์ ๋ณด์ฌ์ฃผ๊ณ , ๊ฐ์ฅ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ ๋น๋ ํจ์๋ถํฐ ๋์ดํด์ฃผ๋ฏ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ ํจ์๋ฅผ ์ฐพ์ ์ ์๋ค.
๋ชจ๋ฐ์ผ์์ ์คํ๋ ์น ํ์ด์ง๋ฅผ ๋๋ฒ๊น ํ๋ ค๊ณ ํ ๋ ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ๋ชจ๋ฐ์ผ ํ๊ฒฝ์์ ์คํ์ํฌ ์ ์์ผ๋ ๋ง๋งํ ์ ์๋ค. ์ด๋ ํฌ๋กฌ์ด๋ ์ฌํ๋ฆฌ์ ์๊ฒฉ ๋๋ฒ๊น ์ ์ฌ์ฉํ๋ฉด ๋ชจ๋ฐ์ผ์ ๋ธ๋ผ์ฐ์ ๋ฐ ์น๋ทฐ์์ ๊ตฌ๋๋ ํ์ด์ง๋ฅผ PC์์ ๋๋ฒ๊น ํ ์ ์๋ค. ์๋๋ก์ด๋ ๊ธฐ๊ธฐ๋ ํฌ๋กฌ์, iOS ๊ธฐ๊ธฐ๋ ์ฌํ๋ฆฌ๋ฅผ ์ด์ฉํ์ฌ ์๊ฒฉ ๋๋ฒ๊น ์ ํ๋ค.
ํฌ๋กฌ์ ์๊ฒฉ ๋๋ฒ๊น ์ผ๋ก ์๋๋ก์ด๋ ๊ธฐ๊ธฐ์ ์น ํ์ด์ง๋ฅผ ๋๋ฒ๊น ํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค. ์ฐธ๊ณ ๋ก ์น๋ทฐ๋ฅผ ๋๋ฒ๊น ํ ๋๋ ์น๋ทฐ ์ดํ๋ฆฌ์ผ์ด์ ๋ด์ ์ค์ ์ด ๋ฐ๋ก ํ์ํ๋ฏ๋ก ๊ด๋ จ ๋ฌธ์๋ฅผ ํ์ธํ๊ธธ ๋ฐ๋๋ค.
๊ฐ๋ฐ์ฉ ์ปดํจํฐ์์ ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ด์ด [More tools] โ [Remote devices]๋ฅผ ์ ํํ๋ค.
๊ทธ๋ผ ์๋์ ๊ฐ์ด ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ ๋ณด๊ฐ ์ผ์ชฝ์ ํ์๋๊ณ ํด๋น ๊ธฐ๊ธฐ๋ฅผ ์ ํํ๋ฉด ์๋๋ก์ด๋ ํฌ๋กฌ์ ์ด๋ ค์๋ ๋งํฌ๋ฅผ ํ์ธํ ์ ์๋ค.
๋๋ฒ๊น ํ ํ์ด์ง์ [Inspect] ๋ฒํผ์ ๋๋ฌ ๋๋ฒ๊น ์ ํ๋ค.
์ฌํ๋ฆฌ์ ์๊ฒฉ ๋๋ฒ๊น ์ผ๋ก iOS ๊ธฐ๊ธฐ์ ์น ํ์ด์ง๋ฅผ ๋๋ฒ๊น ํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค.
๊ฐ๋ฐ์ฉ ์ปดํจํฐ์์ ์ฌํ๋ฆฌ๋ฅผ ์คํํ๊ณ , [Safari] โ [Preferences] โ [Advanced] โ [Show Develop menu in menu bar]๋ฅผ ์ค์ ํ๋ค.
๊ทธ๋ผ ๋ฉ๋ดํ์์ค์ Develop(๊ฐ๋ฐ์์ฉ) ๋ฉ๋ด๊ฐ ์๊ธฐ๊ณ , ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ ์ฐ๊ฒฐ๋ ์์ดํฐ ๊ธฐ๊ธฐ์ ์คํ ์ค์ธ ์น ํ์ด์ง๋ฅผ ํ์ธํ ์ ์๋ค. ํน์ ์ฐ๊ฒฐ๋ ์์ดํฐ ๊ธฐ๊ธฐ๊ฐ ๋ณด์ด์ง ์๋๋ค๋ฉด, ์์ดํฐ์ ์ฌํ๋ฆฌ ๋ฒ์ ๊ณผ ๋งฅ OS์ ์ฌํ๋ฆฌ ๋ฒ์ ์ด ์ผ์นํ๋์ง ํ์ธํ๊ณ , ์ผ์นํ์ง ์๋๋ค๋ฉด ๊ฐ์ ๋ฒ์ ์ผ๋ก ๋ง์ถฐ์ค๋ค.
๋๋ฒ๊น ํ๊ณ ์ ํ๋ ์น ํ์ด์ง๋ฅผ ์ ํํ๋ฉด ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ ๊ฐ๋ฐ์ ๋๊ตฌ๊ฐ ์คํ๋๊ณ , ์์ดํฐ ๊ธฐ๊ธฐ์ ์น ํ์ด์ง๋ฅผ ๋๋ฒ๊น ํ๋ค.
ํน์ ํจํท์ ์กฐ์ํ์ฌ ์๋ฒ์ ์๋ต์ ๋ค๋ฅด๊ฒ ๋ฐ๊ฑฐ๋, ์๋ฒ์ ๋ฐฐํฌ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์ ๊ต์ฒดํด์ ํ ์คํธํ๊ณ ์ถ์ ๋ Fiddler๋ Charles์ ๊ฐ์ ํ๋ฝ์ ๋๊ตฌ๊ฐ ํ์ํ๋ค. ํ๋ฝ์ ๋๊ตฌ๋ PC์ ๋คํธ์ํฌ ์์ฒญ๊ณผ ์๋ต์ ๋ชจ๋ํฐ๋งํ๊ณ ์๋ฒ์์ ์์ฒญ/์๋ต์ ์ค๋จ์ (Breakpoints)์ ๊ฑธ์ด ํจํท์ ์กฐ์ํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ํ๋ฝ์ ๋๊ตฌ๋ก ์ด๋ฏธ ์๋ฒ์ ๋ฐฐํฌ๋์ด ์๋น์ค ์ค์ธ ํ์ด์ง์ ํ์ผ(์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ, CSS ํ์ผ ๋ฑ)์ ์ํ๋ ํ์ผ๋ก ๋์ฒดํ์ฌ ํ ์คํธํด ๋ณผ ์ ์๋ค. ์ด ๊ฐ์ด๋์์๋ Fiddler์ Charles๋ฅผ ์์๋ก ๋คํธ์ํฌ ํธ๋ํฝ์ ๋ชจ๋ํฐ๋งํด๋ณด๊ณ , ์๋ฒ์ ์๋ต์ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค. ์ด ์ธ์ ๋ง์ ๊ธฐ๋ฅ์ Fiddler์ ๊ณต์ ๋ฌธ์์ Charles์ ๊ณต์ ๋ฌธ์์์ ํ์ธํ ์ ์๋ค.
Fiddler๋ก ๋คํธ์ํฌ ํธ๋ํฝ์ ๊ธฐ๋กํ๊ณ ์กฐํํ๋ฉฐ, ์๋ฒ ์์ฒญ์ ๋ํ ์๋ต์ ๋ณ๊ฒฝํ ์ ์๋ค. ์ค์น ํ์ผ์ ๊ณต์ ๋ค์ด๋ก๋ ํ์ด์ง์์ ๋ค์ด๋ก๋ํ๊ณ , ํน๋ณํ ์ค์ ์์ด [๋ค์] ๋ฒํผ์ ์ด์ฉํ์ฌ ์ค์นํ๋ค.
ํธ๋ํฝ ์บก์ฒ๋ Fiddler์ ์ฃผ์ ๊ธฐ๋ฅ ์ค ํ๋๋ก Fiddler๋ฅผ ์คํํ๋ฉด ์๋์ ๊ฐ์ด ํธ๋ํฝ์ ์กฐํํ ์ ์๋ค.
ํ์ง๋ง ๋ชจ๋ ํธ๋ํฝ์ ์บก์ฒํ๊ธฐ ๋๋ฌธ์ ๋๋ฒ๊น ์ด ์ด๋ ต๋ค. ์ด๋ด ๋ ํํฐ๋ง ๊ธฐ๋ฅ์ผ๋ก ์ํ๋ ํธ๋ํฝ๋ง ์บก์ฒํ๋ค. ์๋ ๊ทธ๋ฆผ์ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ๋ง ์บก์ฒํ๋๋ก ์ค์ ํ ์์ ์ด๋ค.
AutoResponder๋ Fiddler์ ๊ฐ์ฅ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ ์ค ํ๋๋ก, ํน์ ์์ฒญ์ ๋ํด ์๋ต ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์๋ฒ์ ๋ฐฐํฌ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ CSS ํ์ผ ๋ฑ์ ์ํ๋ ํ์ผ๋ก ๋ฐ๊ฟ ์ ์๋ค. ์๋ฅผ ๋ค์ด A ์ฌ์ดํธ์์ config.js์ ํ์ผ์ ์์๋ก ์์ ํ๊ณ ์ถ๋ค๊ณ ๊ฐ์ ํ์. ์ฐ์ config.js๋ฅผ ์์ ํ์ฌ ๋ก์ปฌ์ ์ ์ฅํ๊ณ , ์๋์ ๊ฐ์ด ์ฒดํฌ ๋ฐ์ค๋ฅผ ์ ํํ์ฌ AutoResponder๋ฅผ ํ์ฑํํ๋ค.
AutoResponder๋ฅผ ํ์ฑํํ๋ค๋ฉด, ์ข์ธก ํธ๋ํฝ ์์ญ์์ ์๋ต์ ๋ณ๊ฒฝํ ์์ฒญ์ ์ ํํ ํ [Add Rule] ๋ฒํผ์ ๋๋ฌ ์๋ต ๊ท์น์ ์ถ๊ฐํ๋ค.
๋ง์ผ ๋ณ๊ฒฝ ํ ์์ฒญ์ ์ ๊ท์์ผ๋ก ์ ์ํ๊ณ ์ถ๋ค๋ฉด "regex: ์ ๊ท์"์ ์ฌ์ฉํ๋ค. ์์ธํ ์ฌ์ฉ๋ฒ์ ๊ด๋ จ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ๊ธฐ ๋ฐ๋๋ค.
์์ฒญ ์ค์ ์ ์๋ฃํ๋ค๋ฉด, ์๋์ ๊ฐ์ด ์๋ต ์ ๋ ฅ๋์ ํด๋ฆญํ์ฌ ์๋ต ๊ท์น์ ์ค์ ํ๋ค.
[Find a file]์ ์ ํํ๋ฉด ์๋ต์ผ๋ก ๋์ฒดํ ํ์ผ์ ํ์๊ธฐ์์ ์ ํํ ์ ์๋ค. ์ด๋ ๋ก์ปฌ์์ ์์ ํ config.js ํ์ผ์ ์ ํํ๊ณ [Save] ๋ฒํผ์ ๋๋ฅธ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ธ๋ผ์ฐ์ ๋ฅผ ์๋ก๊ณ ์นจํ๋ฉด, ์ง์ ํ ํ์ผ๋ก ์๋ต์ด ๋ณ๊ฒฝ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ๋ง์ผ ์ง์ ํ ํ์ผ๋ก ์๋ต์ด ๋ณ๊ฒฝ๋์ง ์์๋ค๋ฉด, ๋ธ๋ผ์ฐ์ ์บ์๋ฅผ ์ญ์ ํ๊ณ ๋ค์ ์๋ํด๋ณธ๋ค.
Fiddler๋ฅผ ์ข ๋ฃํ์ง ์๊ณ PC๋ฅผ ๋ ๊ฒฝ์ฐ, ๋ค์ ๋ถํ ์ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด์์ ๋ ์๋์ ๊ฐ์ ํ์์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด ํ์์ด ๋ฐ์ํ ๋๋ Fiddler๋ฅผ ๋ค์ ์คํํ๊ฑฐ๋ ์ ์์ ์ผ๋ก ์ข ๋ฃํ๋ฉด ๋๋ค.
ํ์ฌ๊น์ง OSX์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ํ๋ฝ์ ๋๊ตฌ์ด๋ค. Fiddler์ AutoResponder์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ Map Local/Map Remote์ ์ธ์ ๋๋ฒ๊น ๊ธฐ๋ฅ์ด ์๋ค. HTTP์ HTTPS๋ฅผ ์ง์ํ๊ณ , ์ธ์ ์ ์์ ์์ฃผ๋ก ๋ณด๋ Sequence ํญ๊ณผ ์ฃผ์ ์์ฃผ๋ก ๋ณด๋ Structure ํญ์ด ์๋ ๊ฒ์ด ํน์ง์ด๋ค.
๊ณต์ ์ฌ์ดํธ์์ ์ ๊ณตํ๋ ์ค์น ํ์ผ์ ์ฌ์ฉํ ์ ์์ง๋ง, ์ ๋ฃ ๋ผ์ด์ผ์ค์ด๋ฏ๋ก ๋ณ๋ ๊ตฌ๋งค๊ฐ ํ์ํ๋ค. ์ค์น ํ Charles๋ฅผ ์คํํ๋ฉด ์๋์ผ๋ก ํ๋ฝ์๊ฐ ์ค์ ๋๋ค. ๋ง์ฝ ์ ๋ ๊ฒฝ์ฐ ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ [Proxy] โ [Proxy Settings] ๋ฉ๋ด์์ HTTP Proxy์ Port๊ฐ ํ์ฌ PC์์ ์ฌ์ฉํ๊ณ ์๋ ํฌํธ์ ๊ฒน์น์ง ์๋์ง ํ์ธํ๋ค. ๋๋ Mac OS X ํญ์์ [Enable Mac OS X proxy]๊ฐ ์ ๋๋ก ์ฒดํฌ๋์ด ์๋์ง ํ์ธํ๋ค. ๋ง์ฝ PC์์ VPN์ด ์ค์ ๋์ด ์๊ฑฐ๋ ๋ธ๋ผ์ฐ์ ์ ํ๋ฌ๊ทธ์ธ์ผ๋ก VPN์ด ๋์ํ๊ณ ์์ผ๋ฉด ์ธ์ ์ด ์บก์ฒ๋์ง ์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๋ฐ์ ์ ์ด ๋ถ๋ถ๋ ์ฐธ๊ณ ํ๋ฉด ๋์์ด ๋๋ค.
Charles์์๋ ์ธ์ ๋ชฉ๋ก์ ํ์ธํ๋ ๋ฐฉ๋ฒ์ผ๋ก Sequence์ Structure ํญ์ ์ ๊ณตํ๋ค. ์ํฉ์ ๋ฐ๋ผ ์ ์ ํ ํญ์์ ์ธ์ ์ ๋ณด๋ฅผ ํ์ธํ๋ค. ๊ฐ ํญ์ ํน์ง์ ์๋์ ๊ฐ๋ค.
Fiddler์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ ์์ฒญ์ ์๊ฐ์์ผ๋ก ์์ ๋ณด์ฌ ์ค๋ค. ๊ฐ ์์ฒญ์ ๋ํ ์์ธ ์ ๋ณด๋ฅผ ํ ์ด๋ธ ํํ๋ก ๋น ๋ฅด๊ฒ ๋ณผ ์ ์๋ ์ฅ์ ์ด ์๋ค.
ํธ๋ํฝ์ ๊ฐ์งํ๋ ๋์ ์์ด๋ ์ธ์ ์ ๋๋ฉ์ธ ๊ธฐ์ค์ ํธ๋ฆฌ ํํ๋ก ๋ณด์ฌ ์ค๋ค. ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋๋ฉ์ธ ๋ณ๋ก ๋๋๊ธฐ ๋๋ฌธ์ ๋จ์ ๋์ด๋ณด๋ค ๋ณด๊ธฐ ํธํ๋ค. ์๋ ๊ทธ๋ฆผ์์ ์ผํธ์ ๋๋ฉ์ธ ๋ฆฌ์คํธ๋ก ์ฌ๊ธฐ์ ์ํ๋ ํญ๋ชฉ์ ์ ํํ๋ฉด ์ค๋ฅธํธ์์ ์์ธ ๋ด์ฉ์ ๋ณผ ์ ์๋ค. ๊ฐ์ ์์ฒญ์ด ๋ฐ์๋ ๊ฒฝ์ฐ์๋ ๋ง์ง๋ง ํด๋์ ์์ฒญ์ด ์์ธ๋ค.
๋ณดํต ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ ์์ ๋ฌธ์ ๋ ํ ๋๋ฉ์ธ ๋ด์์ ์๊ธฐ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๊ธฐ ๋๋ฌธ์ Structure๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. ์๋ํ๋ฉด API๋ฅผ ํผ๋ํ์ง ์๊ณ ๋ฌธ์ ๊ฐ ๋๋ ์ธ์ ์ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
์ธ์ ์์ธ ๋ณด๊ธฐ๋ ์ด 5๊ฐ์ ํญ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ ๊ฐ ํญ์์ ํ์ธํ ์ ์๋ ์ ๋ณด๋ ๋ค์๊ณผ ๊ฐ๋ค.
์ธ์ ์ ์ ๋ณด๋ฅผ ๊ฐ๋ตํ ๋ณด๋ ํญ์ผ๋ก ์์ฒญ, ์๋ต, ํ์ด๋ฐ ๋ฑ์ ํ์ธํ ์ ์๋ค.
์ธ์ ์ ์์ฒญ๊ณผ ์๋ต์ ํ์ธํ ์ ์๋ค. ์๋จ์ด ์์ฒญ๋ด์ฉ์ด๊ณ ํ๋จ์ด ์๋ต ๋ด์ฉ์ด๋ค. ๋จ์ผ ํ์ผ ์์ฒญ์ ์๋์ ๊ฐ์ด ๋จ์ํ๋ JSON๊ณผ ๊ฐ์ ๋ฐ์ดํฐ์ ๊ฒฝ์ฐ ์ ๋ ฌ๋ ๋ชจ์์ผ๋ก ๋ณผ ์ ์๋ค.
์ธ์ ์ ์ ๋ณด๋ฅผ ํ ์ด๋ธ ํํ๋ก ๋ณด์ฌ์ฃผ๋ ํญ์ผ๋ก ๋จ์ผ ์ธ์ ์ ๋ณด๋ ์ฉ๋๋ณด๋ค๋ ๋ค๋ฅธ ์ธ์ ๊ณผ ๋น๊ตํ๋ ์ฉ๋๋ก ์ฌ์ฉํ๋ค.
์ธ์ ์ ํ์๋ผ์ธ์ ๋ง๋๊ทธ๋ํ๋ก ๋ณผ ์ ์๋ค.
์ธ์ ์ ๋ฉ๋ชจ๋ฅผ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ ์ฌ์ฉํ๋ค.
Fiddler์ AutoResponder์ ๊ฐ์ ๊ธฐ๋ฅ์ผ๋ก ์๋ฒ์ ์๋ต์ ๋ก์ปฌ์ ํน์ ํ์ผ๋ก ๋ณด๋ผ ์ ์๋ค. ์ฐ์ ์ธ์ ์ค ๋ก์ปฌ ํ์ผ๋ก ์๋ต์ ๋์ฒดํ๊ณ ์ถ์ ํ์ผ์ ์ฐพ๋๋ค. ์์๋ก ์๋์ ๊ทธ๋ฆผ์์ basic_dummy.js ํ์ผ์ ๋ก์ปฌ ํ์ผ๋ก ๋์ฒดํ๋ค๊ณ ๊ฐ์ ํ์.
basic_dummy.js ํ์ผ์์ ์ฐํด๋ฆญํ์ฌ Map Local์ ์ ํํ๋ฉด ์๋์ ๊ฐ์ด ๋์ฒดํ ํ์ผ์ ์ ํํ ์ ์๋ Edit Mapping ์ฐฝ์ด ๋ํ๋๋ค. ์ฌ๊ธฐ์ [Choose] ๋ฒํผ์ ํด๋ฆญํ์ฌ ๋์ฒดํ ๋ก์ปฌ ํ์ผ์ ์ ํํ๋ค.
ํน์ ๋ฉ๋ด์ [Tools] โ [Map Local]์ ์ ํํ์ฌ Map Local Settings ์ฐฝ์์ ๋งตํ ํ ๋ด์ฉ์ ์ถ๊ฐํ ์ ์๋ค. Enable Map Local์ ์ฒดํฌํ๊ณ [Add] ๋ฒํผ์ ๋๋ฌ์ ๋งตํ ํ ๋ด์ฉ์ ์ถ๊ฐํ๋ค.
ํน์ ์์ฒญ์ ๋ค๋ฅธ ์์ฒญ์ผ๋ก ๋์ฒดํ ์ ์๋ค. Map Local๊ณผ ๋น์ทํ์ง๋ง ๋์ฒดํ ํ์ผ์ ๋ฑ๋กํ๋ ๊ฒ์ด ์๋๋ผ ์์ฒญ ์์ฒด๋ฅผ ๋ค๋ฅธ ์์ฒญ์ผ๋ก ๋ณํํ๋ ๊ฒ์ด๋ค. ์ฌ์ฉ ๋ฐฉ๋ฒ์ Map Local๊ณผ ๊ฐ์ด ์ฐํด๋ฆญํ์ฌ Map Remote ๋ฉ๋ด๋ฅผ ์ ํํ๋ฉด ์๋์ ๊ฐ์ด Edit Mapping ์ฐฝ์ด ๋ํ๋๋ค. ํ๋จ์ Map To ๋ด์ฉ์ ๋์ฒดํ ์์ฒญ์ผ๋ก ์ฑ์ ๋ฃ๋๋ค.
ํน์ ๋ฉ๋ด์์ [Tools] โ [Map Remote]๋ฅผ ์ ํํ์ฌ Map Remote Settings ์ฐฝ์์ ๋งตํํ ๋ด์ฉ์ ์ถ๊ฐํ ์ ์๋ค. Enable Map Remote๋ฅผ ์ฒดํฌํ๊ณ [Add] ๋ฒํผ์ ๋๋ฌ์ ๋งตํํ ๋ด์ฉ์ ์ถ๊ฐํ๋ค.
IE8 ๋ฏธ๋ง์ ๋๋ฒ๊น ๋๊ตฌ๋ฅผ ์ง์ํ์ง ์๋๋ค. ๊ทธ๋์ Debug Bar๋ผ๋ ๋ณ๋์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค. Debug Bar๋ Companions.JS์์ ์ ๊ณตํ๋ ๋ฌด๋ฃ ๋๊ตฌ๋ก IE์์ console ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ๋๋ฒ๊น ํ ์ ์๋๋ก ์ง์ํ๋ ๋๊ตฌ์ด๋ค. DebugBar ๊ณต์ ์ฌ์ดํธ์์ ๋ค์ด๋ก๋ํ๊ฑฐ๋ ์ค์น ๋งค๋ด์ผ์ ํ์ธํ ์ ์๋ค.
IE8๋ถํฐ๋ ๊ฐ๋ฐ์ ๋๊ตฌ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ํฌํจ๋์ด ์๋ค. ๊ทธ๋์ ๋ธ๋ผ์ฐ์ ์ ๋๊ตฌ ๋ฉ๋ด๋ F12 ํค๋ฅผ ํตํด ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์คํ์ํฌ ์ ์๋ค. ๊ฐ๋ฐ์ ๋๊ตฌ๊ฐ ์คํ๋๋ฉด ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ธ๋ผ์ฐ์ ํ๋จ์ ํ๋ฉด์ด ๋ถ๋ฆฌ๋์ด ๋ํ๋๋ค. IE8 ์ด์๊ณผ ์ฃ์ง์ ๊ฐ๋ฐ์ ๋๊ตฌ๋ ์์ ์ค๋ช ํ ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ์ ์ ์ฌํ๋ฏ๋ก ์์ธํ ์ค๋ช ์ ์๋ตํ๊ฒ ๋ค. (์ฐธ๊ณ : IE ๊ฐ๋ฐ์ ๋ฌธ์, ์ฃ์ง ๊ฐ๋ฐ์๋๊ตฌ ๋ฌธ์)
2013๋ ๋ Microsoft์์๋ ์ฌ๋ฌ๊ฐ์ง IE ๋ฒ์ ์ ๋ค์ํ ํ๋ซํผ์์ ํ ์คํธํ๊ธฐ ์ํด modern IE๋ฅผ ๋ด๋์๋ค. modern IE๋ IE6๋ถํฐ IE11๊น์ง์ ์คํ ํ๊ฒฝ์ ๊ฐ์๋จธ์ ์ผ๋ก ์ ๊ณตํ๋ ๋๊ตฌ์ด๋ค. ํ์ง๋ง 2015๋ ์ ์ฃ์ง๋ผ๋ ์๋ก์ด ๋ธ๋ผ์ฐ์ ๋ฅผ ๋ฐํํ๋ฉด์ ๋๋ modern.IE๋ผ๋ ๋ช ์นญ์ ์ฌ์ฉํ์ง ์๋ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค. modern IE๋ก ์ ์ ์ ๊ฐ์ ๋จธ์ ์ด๋ฏธ์ง ๋ค์ด๋ก๋ ํ์ด์ง๋ก ๋ฆฌ๋ค์ด๋ ์ ๋๊ณ , ํด๋น ํ์ด์ง์์ ๊ฐ์ ๋จธ์ ์ผ๋ก ์ ๊ณตํ๋ IE์ ๋ฒ์ ๋ 8๋ถํฐ 11๊น์ง๋ก ๋ณ๊ฒฝ๋์๋ค. ๊ทธ๋ฆฌ๊ณ ์ฃ์ง์ ๊ฐ์ ๋จธ์ ์ด๋ฏธ์ง๋ ์๋กญ๊ฒ ์ถ๊ฐ๋์๋ค. 2018๋ 9์ ํ์ฌ ์ ๊ณตํ๋ ๊ฐ์ ๋จธ์ ๋๊ตฌ๋ Virtual Box, Vagrant, VMware, Hyper-V, Parallelsย ์ด๋ค.
๊ฐ๋ฐ ํ๊ฒฝ์ด ์๋์ฐ๊ฐ ์๋๋ฐ IE ๋๋ฒ๊น ์ด ํ์ํ๊ฑฐ๋, ํน์ ์๋์ฐ ๋ฒ์ ์์์ IE ํ ์คํธ๊ฐ ํ์ํ ๊ฒฝ์ฐ์ ๊ฐ์๋จธ์ ์ ์ฌ์ฉํด์ IE๋ฅผ ๋๋ฒ๊น ํ ์ ์๋ค. ์ด ๊ฐ์ด๋๋ Virtual Box๋ก IE8 ๊ฐ์ ๋จธ์ ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค. Virtual Box๋ ๋จ์ ํ ์คํ ์ฉ๋๋ก๋ ์์ ๋กญ๊ฒ ์ฌ์ฉํ ์ ์์ง๋ง, ๊ทธ ์ธ์ ์ฌ์ฉ์ ๋ํด์๋ ๋ผ์ด์ ์ค ๋น์ฉ์ด ๋ฐ์ํ๋ค.
VirtualBox ๊ณต์ ์ฌ์ดํธ์์ ์์ PC์ OS์ ํด๋นํ๋ ์ค์น ํ์ผ๋ก ์ค์นํ๋ค. ๊ฐ์ ๋จธ์ ํ๋๋น ํฌ๊ธฐ๊ฐ 1G ์ด์์ด๊ธฐ ๋๋ฌธ์, ๊ฐ์ ๋จธ์ ์ด ์ค์น๋ ๊ฒฝ๋ก๋ฅผ ์ฉ๋์ด ๋๋ํ ์์น๋ก ์ง์ ํ๋๋ก ํ๋ค.
๊ฐ์ ๋จธ์ ์ด๋ฏธ์ง ๋ค์ด๋ก๋์์ ์ค์นํ๊ณ ์ ํ๋ OS์ IE ๋ฒ์ ์ ์ ํํ ๋ค Select Platform์ "VirtualBox"๋ก ์ ํํ์ฌ ๊ฐ์ ๋จธ์ ์ ๋ค์ด๋ก๋ํ๋ค.
VirtualBox์์ ๋ค์ด๋ก๋ํ ๊ฐ์ ๋จธ์ ์ด๋ฏธ์ง๋ฅผ ๊ตฌ๋ํ๋ฉด ๋๋ค. ์๋์ ๊ฐ์ด ๊ฐ์ ์์คํ ๊ฐ์ ธ์ค๊ธฐ ๋ฉ๋ด๋ฅผ ํด๋ฆญํ์ฌ ๋ค์ด๋ก๋ํ ๊ฐ์ ๋จธ์ ์ด๋ฏธ์ง ํ์ผ์ ์ง์ ํ๋ค.
ํ์ฌ PC์ RAM ์ํ๋ฅผ ๊ณ ๋ คํ์ฌ ํ์ํ ๊ฒฝ์ฐ ๊ฐ์ ๋จธ์ ์ RAM์ ์กฐ์ ํ๋ค.
์ค์ ์ ๋ง์น๋ฉด ์์คํ ์ ๋ถ๋ฌ์ค๊ธฐ ์์ํ๋๋ฐ, ๋ชจ๋ ์๋ฃ๋ ๋๊น์ง ๋ช ๋ถ์ด ์์๋๋ค.
๋ชจ๋ ์๋ฃ ๋๋ฉด ์๋์ ๊ฐ์ด ์ ํํ ๊ฐ์ ์์คํ ์ด ์ถ๊ฐ๋๊ณ , ํด๋น ๊ฐ์ ์์คํ ์ ๋๋ธํด๋ฆญํ๋ฉด ๊ฐ์ ๋จธ์ ์ด ๊ตฌ๋๋๋ค.
๋ธ๋ผ์ฐ์ ์ ๊ฐ๋ฐ์ ๋๊ตฌ์ ํ๋ฝ์ ๋๊ตฌ ๋ฐ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ์ ๋๋ฒ๊น ๊น์ง ์น ํ์ด์ง๋ฅผ ๋๋ฒ๊น ํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ์์๋ณด์๋ค. ์น์ด ๋์ํ ์ ์๋ ํ๊ฒฝ์ด ๋ง์์ง๋ฉด์ ๋๋ฒ๊น ์ ํํ์ ๋ฐฉ๋ฒ์ด ๋ค์ํด์ง๊ณ ์๋ค. ์ด ๊ฐ์ด๋์์ ๋ค๋ฃจ๋ ๋๋ฒ๊น ๋ฐฉ๋ฒ๋ง ์ตํ๋ ํจ์จ์ ์ธ ๋๋ฒ๊น ์ ํ ์ ์์ ๊ฒ์ด๋ค. ์ด ๊ฐ์ด๋๊ฐ ๋น์ ์ ๋๋ฒ๊น ์ ๋์์ด ๋ ๊ฒ์ด๋ค.
์ด ๋ฌธ์๋ NHN Cloud์ FE๊ฐ๋ฐ๋ฉ์์ ์์ฑํ๊ณ ๊ด๋ฆฌํ๋ ๊ณต์ ์น ํ๋ก ํธ ๊ฐ๋ฐ ๊ฐ์ด๋์ด๋ค. ๊ฐ์ด๋ ์ ์ฉ ๊ด๋ จ ๋ฌธ์๋ ๋ฌธ์์ ์ค๋ฅ, ๊ฐ์ ์ ์์ ๊ณต์ ๋ฌธ์ ์ฑ๋(dl_javascript@nhn.com)์ ํตํด ํ ์ ์๋ค.
Last Modified |
---|
2019. 05. 07 |