1. DevTools ์ด๊ธฐ
Google Chrome DevTools๋ Chrome ๋ธ๋ผ์ฐ์ ์ ๋ด์ฅ๋ ๊ฐ๋ฐ ๋๊ตฌ ์ธํธ๋ก, ์น ํ์ด์ง๋ฅผ ํ์ํ๊ณ ๋ถ์ํ ์ ์๊ฒ ํด์ค. ์น ์คํฌ๋ํผ์๊ฒ DevTools๋ ํ์ด์ง ๊ตฌ์กฐ๋ฅผ ๋ ๊น์ด ์ดํดํ๊ณ , ์ ๋ ํฐ๋ฅผ ์ ์ํ๊ณ , ๋์ ์ฝํ ์ธ ์ ๋คํธ์ํฌ ์์ฒญ์ ๋ถ์ํ๊ธฐ ์ํ ํ์ ๋๊ตฌ์ผ. ์ด ๊ธ์์๋ DevTools๊ฐ ์น ์คํฌ๋ํผ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ ์คํฌ๋ํ ํจ์จ์ ๋์ด๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ ์ค ์ ์๋์ง ์ดํด๋ณผ ๊ฑฐ์ผ.
Chrome DevTools๋ฅผ ์ด๋ ค๋ฉด:
- F12 ๋๋ Ctrl+Shift+I (Windows) ๋๋ Cmd+Opt+I (Mac)๋ฅผ ๋๋ฅด๊ธฐ.
- ํ์ด์ง๋ฅผ ์ค๋ฅธ์ชฝ ํด๋ฆญํ ๋ค ์์ ๋ณด๊ธฐ ๋๋ ๊ฒ์ฌ๋ฅผ ์ ํํ๊ธฐ.
์น ์คํฌ๋ํผ์๊ฒ ํนํ ์ ์ฉํ DevTools ํญ์ Elements, Console, Network, Sources, Application์ด์ผ.
2. Elements ํญ
Elements ํญ: HTML ๋ฐ CSS ํ์
Elements ํญ์ ํ์ด์ง ๊ตฌ์กฐ๋ฅผ ๋ถ์ํ๊ณ ์์๋ฅผ ์ ํํ๋ ๊ธฐ๋ณธ ๋๊ตฌ์ผ. ์ฌ๊ธฐ์ HTML๊ณผ CSS ๊ตฌ์กฐ๋ฅผ ๋ณด๊ณ , ์์ ํ๊ณ , ๋ณต์ฌํ ์ ์์ด.
Elements ํญ์ ์ฃผ์ ๊ธฐ๋ฅ:
- ์
๋ ํฐ ์ ์. ํจ๋์ ์ผ์ชฝ ์๋จ์ ์๋ ํ์ดํ ์์ด์ฝ์ ํด๋ฆญํ๊ณ ํ์ด์ง์ ์๋ฌด ์์๋ ์ ํํ๋ฉด, ๊ด๋ จ HTML ์ฝ๋๊ฐ DevTools์ ๋ํ๋. ์ด ๋ฐฉ์์ผ๋ก CSS๋ XPath ์
๋ ํฐ์ ์ฌ์ฉํ ์ ์๋
id
,class
๋ฑ์ ์์ฑ์ ์ฝ๊ฒ ํ์ธํ ์ ์์ด. - HTML ๋ฐ CSS๋ฅผ ์ค์๊ฐ์ผ๋ก ์์ . HTML๊ณผ CSS ์์๋ฅผ ๋ณ๊ฒฝํ์ฌ ์๊ฐ์ ์ผ๋ก ํ ์คํธํด ๋ณผ ์ ์์ด. ์๋ฅผ ๋ค์ด ํน์ ์์๋ฅผ ์จ๊ธฐ๊ฑฐ๋ ์์์ ๋ณ๊ฒฝํด ์ํ๋ ํ์ด์ง์ ๋ถ๋ถ์ ๋ ์ ์ดํดํ ์ ์์ด.
- ์ ๋ ํฐ ๋ณต์ฌ. ์์๋ฅผ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ์ผ๋ก ํด๋ฆญํ๊ณ "๋ณต์ฌ"๋ฅผ ์ ํํ๋ฉด CSS ์ ๋ ํฐ ๋๋ XPath๋ฅผ ๋ณต์ฌํ ์ ์์ด, ํนํ ์น ์คํฌ๋ํ์ ์ ์ฉํด.
์: <h1>
์ ๋ชฉ ํ
์คํธ๋ฅผ ์ ํํ๋ ค๋ฉด, ํด๋น ์์๋ฅผ ํด๋ฆญํ ๋ค ์
๋ ํฐ๋ฅผ ๋ณต์ฌํด ์ฝ๋์์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ ๋ ์ฌ์ฉํ๋ฉด ๋ผ.
3. Console ํญ
Console ํญ: ๋์ ์ฝํ ์ธ ๋ฅผ ์ํ JavaScript ์คํ
Console์ ํ์ด์ง์์ JavaScript ์ฝ๋๋ฅผ ์ง์ ์ ๋ ฅํ๊ณ ์คํํ ์ ์๋ ๊ณต๊ฐ์ด์ผ. ๋์ ์ฝํ ์ธ ์ ์ํธ์์ฉํ๊ฑฐ๋ ์์๋ฅผ ๊ด๋ฆฌํ๋ JavaScript๋ฅผ ๋ถ์ํ๋ ๋ฐ ์ ์ฉํด.
์น ์คํฌ๋ํผ๋ฅผ ์ํ Console์ ์ฌ์ฉ๋ฒ:
- JavaScript๋ก ๋ฐ์ดํฐ ์ถ์ถ.
document.querySelector
๊ฐ์ ๊ฐ๋จํ ๋ช ๋ น์ด๋ก ์์๋ฅผ ์ ํํ๊ณ ์ ๋ ํฐ๊ฐ ์ ๋๋ก ์๋ํ๋์ง ํ ์คํธํ ์ ์์ด. - ์์์ ์ํธ์์ฉํ๋ ์ฝ๋ ์คํ. ์๋ฅผ ๋ค์ด, ๋ฒํผ์ "ํด๋ฆญ"ํ๊ฑฐ๋ ์ฝํ ์ธ ๋ฅผ ๋ก๋ํ๋ ค๋ฉด Console์์ ์ฝ๋๋ฅผ ์คํํด ์ด๋ฒคํธ์ ๋ํ ์์์ ๋ฐ์์ ํ์ธํ ์ ์์ด.
- ์ค๋ฅ ํ์ธ. ์๋ํ๋ฅผ ํตํด ์คํฌ๋ํํ ๋ JavaScript ๋๋ ๋คํธ์ํฌ ์์ฒญ๊ณผ ๊ด๋ จ๋ ์ค๋ฅ๋ฅผ Console์์ ํ์ธํ๊ณ , ํน์ ์์๊ฐ ๋ก๋๋์ง ์๊ฑฐ๋ ํ์๋์ง ์๋ ์ด์ ๋ฅผ ํ์ ํ ์ ์์ด.
์: ํด๋์ค ์ด๋ฆ์ด load-more
์ธ ๋ฒํผ์ ์์๋ฅผ ํ
์คํธํ๋ ค๋ฉด, Console์ document.querySelector('.load-more').click()
์ ์
๋ ฅํด ๋ฒํผ์ด ๋ช
๋ น์ด์ ์ด๋ป๊ฒ ๋ฐ์ํ๋์ง ํ์ธํ ์ ์์ด.
4. Network ํญ
Network ํญ: ๋คํธ์ํฌ ์์ฒญ ๋ถ์
Network๋ ํ์ด์ง๊ฐ ์ํํ๋ ๋คํธ์ํฌ ์์ฒญ์ ๋ถ์ํ๋ ์ค์ํ ํญ์ด์ผ. ๋ง์ ์ฌ์ดํธ์์ AJAX ๊ฐ์ ๋น๋๊ธฐ ์์ฒญ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๊ธฐ ๋๋ฌธ์ ์คํฌ๋ํ์ด ์ด๋ ค์์ง ์ ์์ด. ์ด ๊ฒฝ์ฐ Network๋ฅผ ์ด์ฉํด ๋ชจ๋ ๋คํธ์ํฌ ์์ฒญ์ ์ถ์ ํ๊ณ , ์์ฒญ์ ๋ณต์ฌํด ์๋ฒ ์๋ต์ ๋ถ์ํ ์ ์์ด.
Network ํญ์ ์ฃผ์ ๊ธฐ๋ฅ:
- AJAX ์์ฒญ ์ถ์ . ํ์ด์ง ๋ก๋ ์ ๋ฐ์ํ๋ ๋ชจ๋ ์์ฒญ๊ณผ ๊ทธ ์๋ต ๋ด์ฉ์ ํ์ธํ ์ ์์ด. ์์ฒญ์ ์ถ์ ํ๋ฉด ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๋ ์์ฒญ์ ์ฐพ์ ๋ด ์ฝ๋์์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๊ฐ์ ธ์ฌ ์ ์์ด.
- ์์ฒญ ๋ณต์ฌ. ์์ฒญ์ ์ค๋ฅธ์ชฝ ํด๋ฆญํ์ฌ cURL ๋๋ fetch์ ๊ฐ์ ํ์์ผ๋ก ์์ฒญ์ ๋ณต์ฌํ ์ ์์ด. ์ด๋ ๊ฒ ํ๋ฉด ์์ฒญ์ ์ฌํํด ๋ฐ์ดํฐ๋ฅผ ์๋ฒ์์ ์ง์ ๊ฐ์ ธ์ฌ ์ ์์ด.
- ์์ฒญ ๋งค๊ฐ๋ณ์ ๋ถ์. Network๋ ์์ฒญ๊ณผ ํจ๊ป ์ ์ก๋๋ ํค๋, ๋งค๊ฐ๋ณ์, ์ฟ ํค๋ฅผ ๋ณด์ฌ์ค. ์ด๋ฅผ ํตํด ์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋ฐ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ ์์ด. ์๋ฅผ ๋ค์ด, ๋ง์ ์ฌ์ดํธ๊ฐ ์ธ์ฆ ํ ํฐ์ ์ฌ์ฉํด ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๋ฏ๋ก ์์ฒญ ํค๋๋ฅผ ๋ถ์ํ๋ฉด ์ด๋ฅผ ์ฐํํ๋ ๋ฐฉ๋ฒ์ ์ ์ ์์ด.
์: ๋ฐ์ดํฐ๊ฐ AJAX ์์ฒญ์ ํตํด ๋์ ์ผ๋ก ๋ก๋๋๋ค๋ฉด, Network์์ ํด๋น ์์ฒญ์ ์ ํํ๊ณ URL๊ณผ ์๋ต์ ํ์ธํด ์ด ์์ฒญ์ ์ง์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐ ํ์ฉํ ์ ์์ด.
5. Sources ํญ
Sources ํญ: JavaScript์ ๋์ ์ฝํ ์ธ ํ์
Sources ํญ์ JavaScript, CSS, ์ด๋ฏธ์ง ๋ฐ ๊ธฐํ ํ์ด์ง ๋ฆฌ์์ค๋ฅผ ํ์ํ ์ ์๋ ๊ณณ์ด์ผ. ์น ์คํฌ๋ํผ๋ ์ฌ์ดํธ์ ๋ ผ๋ฆฌ๋ฅผ ๋ถ์ํ๊ณ ๋์ ์ฝํ ์ธ ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ด ํญ์ ์ฌ์ฉํ ์ ์์ด.
Sources ํญ์ ์ฃผ์ ๊ธฐ๋ฅ:
- JavaScript ํ์ผ ๊ฒ์. ๋ง์ ํ์ด์ง์์ ๋ฐ์ดํฐ๋ ๊ธฐ๋ฅ์ JavaScript๋ฅผ ํตํด ๋ก๋๋ผ. Sources์์ JavaScript ํ์ผ์ ์ฐพ์ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๊ณ ํ์ํ๋ ๋ฐฉ๋ฒ์ ํ์ธํ ์ ์์ด.
- ๋ธ๋ ์ดํฌํฌ์ธํธ ์ค์ . ํน์ ์ค์์ ์ฝ๋ ์คํ์ ์ค์งํ๊ณ ๋ฐ์ดํฐ๊ฐ ๋ก๋๋๋ ๋ฐฉ์๊ณผ ๋ค์ํ ์์๊ฐ ์ํธ์์ฉํ๋ ๋ฐฉ์์ ํ์ธํ ์ ์์ด. ๋ณต์กํ JavaScript๋ฅผ ์ฌ์ฉํ๋ ํ์ด์ง ๋ถ์์ ํนํ ์ ์ฉํด.
- ๋ณ์ ๊ฐ ๋ณด๊ธฐ. ๋ณ์์ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ์ฌ ์ฌ์ดํธ์ ๋ ผ๋ฆฌ๋ฅผ ๋ ์ ์ดํดํ ์ ์๊ณ , ๋ณต์กํ JavaScript ํจ์๋ก ๋ก๋๋๋ ์ฝํ ์ธ ๋ฅผ ์ฒ๋ฆฌํ ๋๋ ๋์์ด ๋ผ.
6. Application ํญ
Application ํญ: ์ฟ ํค์ Local Storage ๊ด๋ฆฌ
Application ํญ์ ์ฟ ํค, Local Storage ๋ฐ ๊ธฐํ ํด๋ผ์ด์ธํธ ์ธก ๋ฐ์ดํฐ๋ฅผ ํ์ํ ์ ์๋ ๊ณณ์ด์ผ. ์ด ๋ฐ์ดํฐ๋ ์ธ์ฆ์ด ํ์ํ ์ฌ์ดํธ๋ ์ฌ์ฉ์์ ํ๋์ ์ถ์ ํ๋ ์ฌ์ดํธ์์ ์ ์ฉํ ์ ์์ด.
์น ์คํฌ๋ํผ๋ฅผ ์ํ Application ํญ์ ์ฃผ์ ๊ธฐ๋ฅ:
- ์ฟ ํค ๋ถ์. ๋ง์ ์ฌ์ดํธ๋ ์ธ์ฆ์ด๋ ์ฌ์ฉ์ ์ถ์ ์ ์ํด ์ฟ ํค๋ฅผ ์ฌ์ฉํด. Application ํญ์ ์ฌ์ฉํ๋ฉด ์ฝํ ์ธ ์ ์ ๊ทผํ๊ธฐ ์ํด ์ด๋ค ์ฟ ํค๊ฐ ํ์ํ์ง ํ์ธํ ์ ์์ด.
- Local Storage ๋ฐ Session Storage ํ์. ์ด๋ฌํ ์คํ ๋ฆฌ์ง๋ ํด๋ผ์ด์ธํธ ์ธก์์ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๋ฐ๋ ์ฌ์ฉ๋ผ. ์ฌ์ดํธ๊ฐ ๋ฐ์ดํฐ๋ฅผ Local Storage์์ ๋ก๋ํ๋ ๊ฒฝ์ฐ, ์ด ์ ๋ณด๋ฅผ ์ถ์ถํด ์คํฌ๋ํ ์ฝ๋์์ ํ์ฉํ ์ ์์ด.
- ์ธ์ฆ ํ ํฐ ๊ด๋ฆฌ. ์ผ๋ถ ์ฌ์ดํธ๋ Local Storage๋ ์ฟ ํค์ ํ ํฐ์ ์ ์ฅํด. ํ ํฐ๊ณผ ๊ทธ๊ฒ์ ๊ฐฑ์ ๋ฐฉ๋ฒ์ ์๋ฉด, API๋ AJAX ์์ฒญ์ ํตํด ๋ฐ์ดํฐ์ ์ ๊ทผํ ์ ์์ด.
์: ์ธ์ฆ์ด ํ์ํ ์ฌ์ดํธ์ ๊ฒฝ์ฐ, Application ํญ์ ์ฌ์ฉํด ํ์ํ ์ฟ ํค๋ ํ ํฐ์ ์ถ์ถํ๊ณ , ์ด๋ฅผ ์์ฒญ์ ์ฌ์ฉํ๋ฉด ๋ผ.
7. ์ค์ฉ์ ์ธ ํ
์น ์คํฌ๋ํ์ ์ํ DevTools ํ์ฉ ๋ฐฉ์
- Network์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์. ์ฝํ ์ธ ๊ฐ ๋น๋๊ธฐ์ ์ผ๋ก ๋ก๋๋๋ ๊ฒฝ์ฐ, Network์์ ํ์ํ ์์ฒญ์ ์ฐพ๊ณ URL, ๋งค๊ฐ๋ณ์ ๋ฐ ํค๋๋ฅผ ๋ถ์ํด.
- Console๋ก ์
๋ ํฐ๋ฅผ ํ
์คํธ. ์คํฌ๋ํ ์ฝ๋๋ฅผ ์ ์ฉํ๊ธฐ ์ ์
document.querySelector
๋document.querySelectorAll
๊ฐ์ ๋ช ๋ น์ ์ฌ์ฉํด Console์์ ์ ๋ ํฐ๋ฅผ ํ ์คํธํ ์ ์์ด. - API๋ฅผ ์ํ fetch ์์ฒญ ๋ณต์ฌ. ์ฌ์ดํธ๊ฐ API๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ Network์์ ์์ฒญ์ ๋ณต์ฌํด ์คํฌ๋ฆฝํธ์์ ํ ์คํธํ๊ณ , HTML ๋งํฌ์ ์ ๊ฑด๋๋ฐ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๊ฐ์ ธ์ฌ ์ ์์ด.
- ์ฝํ ์ธ ๋ฅผ ๊ด๋ฆฌํ๋ ์คํฌ๋ฆฝํธ ์ฐพ๊ธฐ. Sources์์ ๋์ ์ฝํ ์ธ ๋ฅผ ๊ด๋ฆฌํ๋ JavaScript ํ์ผ์ ์ฐพ์ ๋ถ์ํ ๋ค, ์คํฌ๋ํ ๋ ผ๋ฆฌ์ ๋ง๊ฒ ์ ์ํ ์ ์์ด.
- ์ธ์ฆ ํ ํฐ๊ณผ ์ฟ ํค ๋ถ์. ์ผ๋ถ ์ฌ์ดํธ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๊ธฐ ์ํด ์ฟ ํค๋ ํ ํฐ์ ์ฌ์ฉํด. ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์์ฒญ์ ์ ๋ฌํ๋ ๊ฒ์ด ์ค์ํด.
GO TO FULL VERSION