https://www.youtube.com/watch?v=ZvFJYYQvnX4
# 1. ์ด๊ฑด ๊ผญ ์์์ผ ํ๋ค[^1]
[? ์ง๋ฌธ] ํ๋ก ํธ์๋์ ๋ฐฑ์๋๋ ๊ฐ๊ฐ ๋ฌด์์ ์๋ฏธํ๋ฉฐ, ์น ์๋น์ค์์ ์ด๋ค ์ญํ ์ ๋งก๋๊ฐ[^4]
[= ๋ต] ํ๋ก ํธ์๋๋ ์ฌ์ฉ์๊ฐ ๋์ผ๋ก ๋ณด๊ณ ์กฐ์ํ๋ **์๊ฐ์ ยท์ธํฐ๋์
์์ญ(ํ๋ฉด)**์ด๊ณ , ๋ฐฑ์๋๋ ํ๋ก ํธ์๋๊ฐ ์์ฒญํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌยท์ ์ฅยท๊ฐ๊ณตํด ๋ค์ ์ ๋ฌํ๋ ๋ณด์ด์ง ์๋ ์๋ฒ/API ์์ญ์ด๋ค.[^4][^34]
[? ์ง๋ฌธ] ์ค๋ฌด์์๋ ํ๋ก ํธ์๋/๋ฐฑ์๋๋ผ๋ ์ฉ์ด๊ฐ โํํ ์๋ ๋ปโ ๋ง๊ณ ๋ ์ด๋ป๊ฒ ์ฐ์ด๋๊ฐ[^46]
[= ๋ต] ์ค๋ฌด์์๋ ์ฌ์ฉ์๊ฐ ๋ณด๋ ์ฌ์ดํธ๋ฅผ ํ๋ก ํธ์๋, ์ด์ํ์ด ์ฐ๋ **๊ด๋ฆฌ์ ์ฌ์ดํธ(์ด๋๋ฏผ)**๋ฅผ ๋ฐฑ์๋๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค. ์ด๋ โ์ฌ์ฉ์์๊ฒ ์ง์ ๋
ธ์ถ๋์ง ์๋ ๋ค์ชฝโ์ด๋ผ๋ ๋์ ์๋ฏธ์์ ํตํ๋ค.[^46][^49]
[? ์ง๋ฌธ] ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ vs ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ค ๋ฌด์์ ์ ํํด์ผ ํ๋ฉฐ, ์ปค๋ฆฌ์ด ์์ ๋จ๊ณ์์ ์ด๋ค ์ ๋ต์ด ์์ ํ๊ฐ[^53]
[= ๋ต] ํ์ฌ ์ฑ์ฉ ํํ(ํ์คํ/ํ๋ก ํธ/๋ฐฑ์๋ ๋ถ๋ฆฌ)์ ๋ฐ๋ผ ๋ค๋ฅด์ง๋ง, ๋ฐํ์๋ โ์ฒ์์๋ ํ๋ก ํธยท๋ฐฑ์ ๋ ๋ค ์ด๋ ์ ๋ ํจ๊ป ๋ฐฐ์ฐ๋ ๊ฒ์ด ์์ ํ๋คโ๊ณ ์กฐ์ธํ๋ค. ํ์ชฝ๋ง ํ๋ค๊ฐ ๋ค๋ฅธ ์ชฝ์ด ๋๋ฌด ์ด๋ ค์์ ธ ํ์
๊ณผ ๊ฐ๋ฐ์ด ํ๋ค ์ ์๋ค๋ ๊ฒฝํ ์ฌ๋ก๋ฅผ ๋ ๋ค.[^61][^63]
# 2. ํฐ ๊ทธ๋ฆผ[^2]
์ด ์ฝํ ์ธ ๋ 6๋ ์ฐจ ๊ฐ๋ฐ์๊ฐ ์ค๋ฌด์์ ์์ฃผ ์ฐ๋ ๊ฐ๋ฐ ์ฉ์ด์ธ ํ๋ก ํธ์๋์ ๋ฐฑ์๋๋ฅผ โ์ ์(๋ป)โ ์์ค์ ๋์ด, ์ค์ ์ ๋ฌด์์ ์ด๋ป๊ฒ ๊ตฌ์ฑ๋๊ณ ์ด๋ป๊ฒ ๋ถ๋ฆฌ๋์ง๊น์ง ์ฐ๊ฒฐํด ์ค๋ช ํ๋ ์์์ด๋ค.[^3][^4] ๋ํ ํ๋ก ํธ/๋ฐฑ ์ ํ ๊ณ ๋ฏผ์ ํ๋ ์ด๋ณด ๊ฐ๋ฐ์๋ฅผ ์ํด ์ฑ์ฉ ํํ(ํ์คํ/๋ถ๋ฆฌ์ฑ์ฉ/์ตํฉํ)๋ณ ํ์ค์ ์ธ ์กฐ์ธ๊ณผ ์ฃผ์์ ๋ ํจ๊ป ๋ค๋ฃฌ๋ค.[^53][^64]
- ํ๋ก ํธ์๋ = ์ฌ์ฉ์ ์ ์ (ํ๋ฉด): ์ด๋ฏธ์งยทํ ์คํธยท์์ยท๋ฒํผยท์ ๋ ฅ์ฐฝ ๋ฑ ํ์ด์ง์ ๋ณด์ด๋ ๋๋ถ๋ถ๊ณผ, ํ๋ฉด์์ ์์ง์ด๋ ์ธํฐ๋์ ๊น์ง ํฌํจํ๋ค.[^4][^5]
- ๋ฐฑ์๋ = ๋ฐ์ดํฐ ์ฒ๋ฆฌ/์ ๊ณต(API ์๋ฒ): DB ์ฐ๋, ์ํธํ ๊ฐ์ ๋ณต์กํ ์์ ์ โ์ฌ์ฉ์ ๋ชจ๋ฅด๊ฒโ ์ํํ๊ณ ํ๋ก ํธ์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ API๋ก ์ ๋ฌํ๋ค.[^34][^35]
- ์ค๋ฌด/์ปค๋ฆฌ์ด ๊ด์ ์ ํ์ฅ ์๋ฏธ: ๊ด๋ฆฌ์ ์ฌ์ดํธ๋ฅผ ๋ฐฑ์๋๋ผ ๋ถ๋ฅด๊ธฐ๋ ํ๋ฉฐ, ์ฑ์ฉ์์๋ ํ์คํยท๋ถ๋ฆฌ์ฑ์ฉยท์ตํฉํ ๊ณต๊ณ ์ ์๋๋ฅผ ์ฝ์ด์ผ ํ๋ค.[^46][^64]
# 3. ํ๋์ฉ ์ดํด๋ณด๊ธฐ[^1]
## 3.1 ์์์ ๋ชฉ์ : โํ๋ก ํธ์๋/๋ฐฑ์๋โ๋ฅผ ์ค๋ฌด ์๋ฏธ๊น์ง ์ ๋ฆฌ[^3]
๋ฐํ์๋ โ6๋ ์ฐจ ๊ฐ๋ฐ์๊ฐ ์๋ ค์ฃผ๋ ๊ฐ๋ฐ ์ฉ์ดโ ์๋ฆฌ์ฆ์ ์ธ ๋ฒ์งธ ์ฃผ์ ๋ก, ์ค๋ฌด์์ ์ฌ์ฉํ๋ ํ๋ก ํธ์๋์ ๋ฐฑ์๋๋ฅผ ์ค๋ช ํ๊ฒ ๋ค๊ณ ์์ํ๋ค.[^3] ์ฌ๊ธฐ์ ์ค์ํ ์๊ณ ๋ ๋ ๊ฐ์ง๋ค.[^3][^4]
- ํํ ์๋ ๋ป(๊ต๊ณผ์์ ์ ์)๋ฟ ์๋๋ผ, ์ค๋ฌด์์ ๋ค๋ฅด๊ฒ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ๊น์ง ๋ค๋ฃฌ๋ค.[^4]
- ๋จ์ ์ ์๊ฐ ์๋๋ผ โ์ด๋ค ๊ฒ๋ค์ด ํฌํจ๋๋์ง(๊ตฌ์ฑ ์์/์ฌ๋ก)โ๋ก ์ดํด์ํค๋ ๋ฐฉํฅ์ด๋ค.[^4][^5]
## 3.2 ํ๋ก ํธ์๋๋ ๋ฌด์์ธ๊ฐ: ์ฌ์ฉ์์ ์๋น์ค๊ฐ ๋ง๋๋ โ์๊ฐ์ ์ ์ โ[^4]
ํ๋ก ํธ์๋๋ ์น ์๋น์ค์ ์ฌ์ฉ์ ์ฌ์ด์ ์ ์ ์ด ๋๋ ์๊ฐ์ ์ธ ๋ถ๋ถ์ด๋ผ๊ณ ์ ์ํ๋ค.[^4] ๋ฐํ์๋ ํ๋ก ํธ์๋๋ฅผ ๊ตฌ์ฑํ๋ ๊ฒ์ ๊ต์ฅํ ํญ๋๊ฒ ์ด๊ฑฐํ๋ฉฐ, โ์๋น์ค ํ์ด์ง์์ ๋ํ๋๋ ๊ฑฐ์ ๋ชจ๋ ์์ญโ์ด ํ๋ก ํธ์๋๋ผ๊ณ ๋งํ๋ค.[^5]
ํ๋ก ํธ์๋์ ํฌํจ๋๋ ์์(์์์์ ์ง์ ๋์ด):[^5]
- ์ด๋ฏธ์ง
- ํ ์คํธ
- ํฐํธ
- ์์
- ๋์
- ๋ฒํผ
- ์ ๋ ฅ์ฐฝ
- ๊ทธ ์ธ โํ์ด์ง์์ ๋ณด์ด๋ ๊ฑฐ์ ๋ชจ๋ ์์ญโ[^5]
์ฆ, ํ๋ก ํธ์๋๋ ๋จ์ง โUI๋ฅผ ์์๊ฒ ๋ง๋๋โ ์๋ฏธ์ ํ์ ํ์ง ์๊ณ , ์ฌ์ฉ์๊ฐ ๋ณด๋ ๊ฒ + ์ฌ์ฉ์๊ฐ ์กฐ์ํ์ ๋ ํ๋ฉด์์ ์ผ์ด๋๋ ๋ฐ์๊น์ง ํฌํจํ๋ ๋์ ๋ฒ์ฃผ๋ก ์ ์๋๋ค.[^4][^16]
## 3.3 ํ๋ก ํธ์๋์ ๊ธฐ๋ณธ ๊ตฌ์ฑ์์: HTML/CSS/JavaScript + ์ด๋ฏธ์ง[^6]
๋ฐํ์๋ ํ๋ก ํธ์๋์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์์๋ก HTML, CSS, JavaScript, ์ด๋ฏธ์ง๋ฅผ ์ ์ํ๋ค.[^6] ์ฌ๊ธฐ์ โ์ด๋ฏธ์ง๋ CSS์ ํฌํจํด์ ๋งํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋คโ๋ ์ ๊ณ์ ํํ ๋ฌถ์์ ์ธ๊ธํ ๋ค, ๋ณธ์ธ์ ์ค๋ฌด์์ ์ด๋ฏธ์ง ๋น์ค์ด ํฌ๋ค๊ณ ๋๊ปด ๋ณ๋๋ก ์ ์๋ค๊ณ ์ค๋ช ํ๋ค.[^7][^8]
- ํํ ๊ด์ : ์ด๋ฏธ์ง ๋ฆฌ์์ค๋ฅผ CSS ๋ฐฐ๊ฒฝ ๋ฑ์ผ๋ก ๋ค๋ฃจ๋ โCSS ๋ฒ์ฃผ๋ก ๊ฐ์ด ์๊ธฐโํ๊ธฐ๋ ํจ[^7]
- ๋ฐํ์ ๊ด์ (์ค๋ฌด ๊ฒฝํ ๊ธฐ๋ฐ): ํ์ด์ง์ ๋ง์ ์์ญ์ด ์ด๋ฏธ์ง๋ก ์ปค๋ฒ๋๋ ๊ฒฝ์ฐ๊ฐ ์์ด, CSS์ ํฌํจ์ํค๊ธฐ์ ๋น์ค์ด ํฌ๋ค๊ณ ํ๋จ[^8]
์ด ๋๋ชฉ์ โํ๋ก ํธ์๋ = ์ฝ๋(HTML/CSS/JS)โ๋ง์ด ์๋๋ผ, ์ค๋ฌด์์ ์ค์ ์ฐ์ถ๋ฌผ(์ด๋ฏธ์ง ๋ฆฌ์์ค)์ด ์ผ๋ง๋ ํฐ ๋น์ค์ ์ฐจ์งํ ์ ์๋์ง๋ฅผ ๊ฐ์กฐํ๋ ํ๋ฆ์ด๋ค.[^8][^9]
## 3.4 ์ค๋ฌด ์ฌ๋ก: ํ ์คํธ/๋ ์ด์์์ โํต ์ด๋ฏธ์งโ๋ก ์ฒ๋ฆฌํ๋ ์ด์ [^9]
๋ฐํ์๋ ์ด๋ฒคํธ ํ์ด์ง ์์๋ฅผ ๋ ๋ค.[^9] โ์ํ ์ด๋ฏธ์ง์ ์ํ๋ช ์ด ๋ ธ์ถ๋๋ ์ด๋ฒคํธ ํ์ด์งโ๊ฐ ์๋ค๊ณ ํ ๋, ์ผ๋ฐ์ ์ผ๋ก๋ ๋ค์์ฒ๋ผ ๊ตฌํํ ์ ์๋ค.[^10]
- ์ํ ์ด๋ฏธ์ง: ์ด๋ฏธ์ง๋ก ๋ ธ์ถ
- ์ํ๋ช : HTML ํ ์คํธ๋ก ์์ฑ
- CSS๋ก ํ ์คํธ ์คํ์ผ/๋ ์ด์์ ์ ์ฉ[^10]
ํ์ง๋ง ์ค๋ฌด์์๋ ์ด ๋ฐฉ์ ๋์ , ํ ์คํธ๊ฐ ํฌํจ๋ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๊ณ ๋งํ๋ค.[^11] ์ฆ, ์ํ ์ด๋ฏธ์ง์ ์ํ๋ช (ํ ์คํธ)๊น์ง ํฉ์ณ โํ ์ฅ์ ์ด๋ฏธ์ง(ํต ์ด๋ฏธ์ง)โ๋ก ์ ์ํด ํ์ด์ง์ ๋ฃ๋ ๋ฐฉ์์ด๋ค.[^11]
๋ฐํ์๋ ํผ๋ธ๋ฆฌ์ ์๊ฒ ๊ทธ ์ด์ ๋ฅผ ๋ฌผ์ด๋ดค๊ณ , ํผ๋ธ๋ฆฌ์ ์ ๋ต์ ์ธ์ฉํด ์ค๋ช ํ๋ค.[^12]
- โ๊ธฐ๊ธฐ๋ง๋ค ํ๋ฉด์ด ๋ฌ๋ผ์ ๊ฐ๊ฐ ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌํ๊ธฐ ์ด๋ ต๋ค.โ[^12]
- โ๊ทธ๋์ ํต ์ด๋ฏธ์ง๋ก ๋ง๋ค์ด์ ํ๋ฉด ๊ฐ๋ก ๊ธธ์ด์ ๋ง๊ฒ ๋ ธ์ถํ๊ณ โ[^13]
- โ์ธ๋ก ๊ธธ์ด๊ฐ ๋จ์ผ๋ฉด ์คํฌ๋กค๋ก ๋ด๋ ค์ ๋ณด๊ฒ ํ๋ค.โ[^13]
์ด ์ฌ๋ก๋ โํ๋ก ํธ์๋ ๊ตฌํ = ํญ์ HTML/CSS๋ก ๊ตฌ์กฐํโ๋ผ๋ ์ด์์ ์ธ ๊ทธ๋ฆผ๊ณผ ๋ฌ๋ฆฌ, ์ค์ ํ์ ์์๋ ๋๋ฐ์ด์ค/๋ฐ์ํ ๋์ ๋ถ๋ด ๋ฑ์ ์ด์ ๋ก ์ด๋ฏธ์ง ์ค์ฌ ๊ตฌํ์ด ์ ํ๋๊ธฐ๋ ํจ์ ๋ณด์ฌ์ค๋ค.[^11][^12]
[!NOTE] ํ๋ก ํธ์๋๋ฅผ โ์ฝ๋๋ก ๋ง๋ UIโ๋ก๋ง ๋ณด๋ฉด ๋์น๋ ๋ถ๋ถ
์ค๋ฌด์์๋ ๋ ์ด์์/ํ ์คํธ๊น์ง ํฌํจ๋ โ์ด๋ฏธ์ง ์ฐ์ถ๋ฌผโ์ด ํ๋ฉด์ ํฐ ๋น์ค์ ์ฐจ์งํ ์ ์๊ณ , ์ด ๋ํ ํ๋ก ํธ์๋ ๊ตฌ์ฑ์ผ๋ก ๋ค๋ค์ง๋ค.[^8][^11]
## 3.5 HTML์ด ํ๋ ์ผ: ํ๊ทธ๋ก ํ๋ฉด ๊ตฌ์ฑ ์์ ๊ตฌํ[^14]
HTML์ ์ฌ๋ฌ ์ข ๋ฅ์ **ํ๊ทธ(tag)**๋ก ํ๋ฉด ๊ตฌ์ฑ ์์๋ฅผ ๊ตฌํํ๋ ๋ฐ ์ฌ์ฉ๋๋ค๊ณ ์ค๋ช ํ๋ค.[^14] ๊ทธ๋ฆฌ๊ณ ๋งค์ฐ ์ง๊ด์ ์ธ ์๋ก โ๋ฒํผ ํ๊ทธโ๋ฅผ ๋ ๋ค.[^15]
- ๋ฒํผ ํ๊ทธ๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ฉด์ ๊ธฐ๋ณธ ๋ฒํผ์ ๋ ธ์ถํ ์ ์๋ค.[^15]
์ฆ HTML์ โ๋ฌด์์ ํ๋ฉด์ ๋ ๊ฒ์ธ๊ฐ(๊ตฌ์กฐ/์์)โ๋ฅผ ๋ด๋นํ๋ ๊ธฐ๋ณธ ๋ผ๋๋ผ๋ ํ๋ฆ์ผ๋ก ์ด์ด์ง๋ค.[^14][^15]
## 3.6 CSS๊ฐ ํ๋ ์ผ: ์์น/์์/ํฌ๊ธฐ ๋ฑ ๋์์ธ ์์ฑ ์ ์ฉ[^16]
CSS๋ HTML ์์์ ์์น, ์์, ํฌ๊ธฐ ๋ฑ ๋์์ธ ์์ฑ์ ์ ์ฉํ ๋ ์ฌ์ฉํ๋ค๊ณ ์ค๋ช ํ๋ค.[^16] ์์๋ก ๋ฒํผ ํ๊ทธ์ ์คํ์ผ ์์ฑ์์ ์ปฌ๋ฌ๋ฅผ black์ผ๋ก ์ง์ ํ๋ฉด, ๋ฒํผ์ ํ ์คํธ ์์์ ๊ฒ์ ์ผ๋ก ๋ณด์ด๊ฒ ํ ์ ์๋ค๊ณ ๋งํ๋ค.[^17]
- HTML ์์(๋ฒํผ)๋ ์กด์ฌํ์ง๋ง, CSS๋ก ์๊ฐ์ ์คํ์ผ(ํ ์คํธ ์)์ ๋ฐ๊พผ๋ค.[^16][^17]
## 3.7 JavaScript๊ฐ ํ๋ ์ผ: ํ๋ฉด์์ โ์์ง์ด๋ ๊ฑฐ์ ๋ชจ๋ ๊ฒโ[^18]
JavaScript๋ ์ฌ์ฉ์๊ฐ ์ ํ๋ ํ๋ฉด์์ โ์์ง์ด๋ ๊ฑฐ์ ๋ชจ๋ ๊ฒโ์ ๊ตฌํํ๋ค๊ณ ์ค๋ช ํ๋ค.[^18] ๋ฐํ์๋ JavaScript์ ์ญํ ์ ์ ์ ์ธ ํ๋ฉด์ด ์๋๋ผ ๋์/์ด๋ฒคํธ/๋ฐ์ ์ค์ฌ์ผ๋ก ์ก๊ณ , ๋ ๊ฐ์ง ์์๋ฅผ ๋ ๋ค.[^19]
- โ2์ด๋ง๋ค ์์ผ๋ก ๋์ด๊ฐ๋ ์ด๋ฒคํธ ๋ฐฐ๋โ[^19]
- โ์ด๋ฉ์ผ ๋ฐ์ก ๋ฒํผ์ ๋๋ ์ ๋ โ๋ฐ์ก๋์์ต๋๋คโ๋ผ๋ ํ์ ์ด ๋จ๋ ๊ฒโ[^19]
์ด๋ฐ ๊ฒ๋ค์ด ๋ชจ๋ JavaScript๊ฐ ๋์ํ๋ ์ฌ๋ก๋ผ๋ ๊ฒฐ๋ก ์ผ๋ก ์ ๋ฆฌํ๋ค.[^19]
## 3.8 ๋ผ์ด๋ธ๋ฌ๋ฆฌ/ํ๋ ์์ํฌ: jQuery, Bootstrap, ๊ทธ๋ฆฌ๊ณ โ์ถ๊ฐ ๊ธฐ๋ฅโ์ด๋ผ๋ ๊ด์ [^20]
๋ฐํ์๋ JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก jQuery๋ฅผ ์ธ๊ธํ๋ฉฐ, ์ด๋ฅผ ์ฌ์ฉํ๋ฉด โ์งง์ ์ฝ๋๋ก ํจ์จ์ ์ผ๋ก ๋์ํ๋ ์์ค๋ฅผ ์์ฑํ ์ ์๋คโ๊ณ ๋งํ๋ค.[^20] ์ฆ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์์ฐ์ฑ์ ๋์ด๊ธฐ ์ํ ๋๊ตฌ๋ก ์ ์๋๋ค.[^20]
๋ํ Bootstrap์ โHTML, CSS, JavaScript ํ๋ ์์ํฌโ๋ก ์๊ฐํ๊ณ , ๋์์ธ์ ์ผ๋ก ์์ฑ๋ ๋์ ํ๊ทธ๋ฅผ ์ฝ๊ฒ ์์ฑํ ์ ์๋ค๊ณ ๋งํ๋ค.[^21] ์ฌ๊ธฐ์ Bootstrap์ ๋จ์ง ์คํ์ผ ๋ชจ์์ด ์๋๋ผ, (์์ ํํ์) HTML/CSS/JS ์ ๋ฐ์ ํธํ๊ฒ ์ฐ๊ธฐ ์ํ ํ๋ ์์ํฌ๋ก ์ค๋ช ๋๋ค.[^21]
๊ทธ๋ฆฌ๊ณ ๋ผ์ด๋ธ๋ฌ๋ฆฌ/ํ๋ ์์ํฌ๋ฅผ ์ด๊ดํด์ ์ด๋ ๊ฒ ์ ๋ฆฌํ๋ค.[^22]
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ ๊ฐ๋ฐ์ ๋ ํจ์จ์ ์ด๊ณ ํธํ๊ฒ ํ๊ธฐ ์ํ ์ถ๊ฐ ๊ธฐ๋ฅ์ด๋ค.[^22]
์ด์ด์ง๋ ํ์ต ์์ ์กฐ์ธ์ ๋ค์๊ณผ ๊ฐ๋ค.[^23]
- ๋จผ์ ํ๋ก ํธ์๋์ ๊ฐ์ฅ ๊ธฐ๋ณธ ์์์ธ HTML/CSS/JavaScript๋ฅผ ์ฌ์ฉํด๋ณด๊ณ [^23]
- ๊ทธ ๋ค์ ์ด๋ฐ ์ถ๊ฐ ๊ธฐ๋ฅ(๋ผ์ด๋ธ๋ฌ๋ฆฌ/ํ๋ ์์ํฌ)์ ๊ณต๋ถํ๋ ๊ฒ์ด ์ข๋ค.[^23]
[!TIP] ํ์ต ์์ ํ: โ๊ธฐ๋ณธ โ ์ถ๊ฐ ๊ธฐ๋ฅโ
ํ๋ ์์ํฌ๋ถํฐ ์์ํ๊ธฐ๋ณด๋ค HTML/CSS/JavaScript ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๋จผ์ ์ฌ์ฉํด ๋ณธ ๋ค, ๋ผ์ด๋ธ๋ฌ๋ฆฌ/ํ๋ ์์ํฌ๋ก ํ์ฅํ๋ ์ ๊ทผ์ ๊ถํ๋ค.[^23]
## 3.9 ๋ํ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ์ ๋ฐํ์์ ๊ฒฝํ: React/Angular/Vue[^24]
๋ฐํ์๋ โ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ํ๋ก ํธ์๋ ํ๋ ์์ํฌโ๋ก React, Angular, Vue.js๋ฅผ ๋ ๋ค.[^24] ๊ทธ๋ฆฌ๊ณ ๋ณธ์ธ์ ๊ฒฝํ์ ์์งํ ๊ตฌ๋ถํด ๋งํ๋ค.[^25]
- React.js: ์ง์ค์ ์ผ๋ก ๊ณต๋ถํ๊ณ ์ฃผ๋ก ์ฌ์ฉ[^25]
- Vue.js: ์ ๊น ์จ๋ด[^25]
- Angular.js: ์ฌ์ฉํด๋ณธ ์ ์์[^25]
์ด ๊ตฌ๊ฐ์ โํ๋ ์์ํฌ ๋น๊ต/์ถ์ฒโ์ผ๋ก ํ์ฅ๋๊ธฐ ์ํ ๊ธฐ๋ฐ์ ๊น๋ฉฐ, ์ดํ React ์ฅ์ ์ค๋ช ์ผ๋ก ์ฐ๊ฒฐ๋๋ค.[^26][^27]
## 3.10 ์๋ก์ด ๊ธฐ์ ๋ถ์๊ฐ๊ณผ ํ์ต ์ ๋ต: โํ๋๋ผ๋ ์๋ฒฝํโ[^26]
๋ฐํ์๋ ์ฃผ๋ณ ๊ฐ๋ฐ์ ์ค์ โ์๋ก์ด ๊ธฐ์ ์ด ๋ฑ์ฅํ๊ฑฐ๋ ๋ง์ด ์ฌ์ฉ๋๋ค๋ ์์์ ๋ค์ผ๋ฉด ๋ถ์๊ฐ์ ๋ฌด์์ ๊ณต๋ถ๋ฅผ ์์ํ๋ ๊ฒฝ์ฐโ๊ฐ ์๋ค๊ณ ๋งํ๋ค.[^26] ๊ทธ๋ฆฌ๊ณ ์๊ฐ์ ์ ์ ๋ก ์กฐ๊ฑด์ ๊ฑด๋ค.[^27]
- ์๊ฐ์ด ๋ง์ด ๋จ๋๋ค๋ฉด ์๊ด์๋ค.[^27]
- ํ์ง๋ง ์ฌ์ฉ ๊ฐ๋ฅํ ์๊ฐ/๋ ธ๋ ฅ์ด ํ์ ์ ์ด๋ผ๋ฉด, โํ ๊ฐ์ง ๊ธฐ์ ์ด๋ผ๋ ์๋ฒฝํ ๋ง์คํฐํ๊ณ ๋ค์ ๊ธฐ์ ์ ๋ฐฐ์ฐ๋ผโ๊ณ ์ถ์ฒํ๋ค.[^27]
๋ํ ๊ทธ๋ โํ ์ฌ๋์ด ๋ชจ๋ ์์ญ์ ์ํ ์ ์๋คโ๋ ๊ฐ์ธ์ ๊ด์ ์ ๋ฐํ๋ฉฐ, ์ ๋ต์ ๋ค์์ฒ๋ผ ์ ์ํ๋ค.[^28]
- ๋ด๊ฐ ์ํ๋ ์์ญ์ ๊ทน๋ํํ๊ณ [^28]
- ๋ถ์กฑํ ์์ญ์ ๊ทธ๊ฑธ ์ํ๋ ๋๋ฃ์ ๋์์ ๋ฐ๋ ๊ฒ์ด ์ข๋ค.[^28]
์ด ์กฐ์ธ์ ๋ค์ชฝ์ ์ปค๋ฆฌ์ด ์ ํ(ํ๋ก ํธ/๋ฐฑ/ํ์คํ) ๋ ผ์์๋ ๊ฒฐ์ด ๋ง๋ฟ์ ์๋ค.[^53][^61]
## 3.11 React.js ์ฅ์ 3๊ฐ์ง: ๋ฌธ๋ฒ ๊ธฐ๋ฐ/์ฌํ์ฉ/์ํ๊ณ[^29]
๋ฐํ์๋ ์์ ์ด ์ฃผ๋ก ์ฌ์ฉํ๋ React.js์ ์ฅ์ ์ โํฌ๊ฒ 3๊ฐ์งโ๋ก ์ ๋ฆฌํ๋ค.[^29]
- JavaScript ๊ธฐ๋ฐ ์ธ์ด: JavaScript ๋ฌธ๋ฒ์ ๊ทธ๋๋ก ์ฌ์ฉ[^30]
- React๊ฐ JavaScript ๊ธฐ๋ฐ์ด๋ผ JavaScript ๋ฌธ๋ฒ์ ๊ทธ๋๋ก ์ธ ์ ์๋ค๊ณ ๋งํ๋ค.[^30]
- ๊ทธ๋์ React๋ฅผ ์ํ๊ฒ ๋๋ฉด JavaScript ์ค๋ ฅ๋ ์ข์์ง๋ค๊ณ ์ฐ๊ฒฐํ๋ค.[^31]
- ์ด์์ฑยท์ฝ๋ ์ฌํ์ฉ์ฑ: ์ปดํฌ๋ํธ ๋จ์ ๋ถํํ[^32]
- ๋ฐฑ์๋ ์ธ์ด ์ค Java๋ฅผ ์๋ก ๋ค๋ฉฐ, Java๋ ๊ฐ์ฒด์งํฅ ์ธ์ด๋ก ์์ค๋ฅผ ๋ชจ๋ํํด ์ฌ๊ธฐ์ ๊ธฐ ๋ผ์ ์ฌํ์ฉํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค๊ณ ์ค๋ช ํ๋ค.[^32]
- React.js๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ปดํฌ๋ํธ๋ผ๋ ๋จ์๋ก ํ๋ก ํธ์๋ ์์ค๋ฅผ โ๋ถํ์ฒ๋ผโ ์ฌ์ฉํ ์ ์๋ค๊ณ ๋งํ๋ค.[^33]
- ์ฌ์ฉ์๊ฐ ๊ฐ์ฅ ๋ง์: ์๋ฃ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ๋ถ[^34]
- React.js๋ ์ฌ์ฉ์๊ฐ ๊ฐ์ฅ ๋ง์ ํ๋ก ํธ์๋ ํ๋ ์์ํฌ๋ผ๊ณ ์ค๋ช ํ๋ค.[^34]
- ๊ทธ๋์ ์ฐธ๊ณ ์๋ฃ๊ฐ ๋ง๊ณ , ๋๊ตฐ๊ฐ ํธ๋ฆฌํ๊ฒ ๋ง๋ค์ด ๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ถํ๋ค๊ณ ๋งํ๋ค.[^35]
๋ง์ง๋ง์ผ๋ก React๋ ์ฅ์ ์ด ๋ ๋ง์ง๋ง, ๋์ค์ React ์์์์ ๋ ์์ธํ ๋งํ๊ฒ ๋ค๊ณ ์๊ณ ํ๋ค.[^36]
## 3.12 ๋ฐฑ์๋๋ ๋ฌด์์ธ๊ฐ: ๋ฐ์ดํฐ ์ฒ๋ฆฌยท์ ๋ฌ์ ๋ด๋นํ๋ API[^37]
๋ฐํ์๋ ๋ฐฑ์๋๋ฅผ ์ด๋ ๊ฒ ์ ์ํ๋ค.[^37]
- ํ๋ก ํธ์๋์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ์ฒ๋ฆฌํ๊ฑฐ๋, ํ๋ฉด์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ API๋ฅผ ์๋ฏธํ๋ค.[^37]
๋ํ ๋ฐฑ์๋๊ฐ ๋ด๋นํ๋ ์์ ๋ฒ์๋ฅผ โํ๋ก ํธ์๋์์ ํ ์ ์๋โ ๊ฒ์ผ๋ก ์ค๋ช ํ๋ค.[^38]
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๋
- ์ํธํ ๊ฐ์ ๋ณต์กํ ์์
- ์ด๋ฐ ๊ฒ๋ค์ ์ฌ์ฉ์ ๋ชจ๋ฅด๊ฒ ์คํํ๋ค.[^38]
๊ทธ๋ฆฌ๊ณ ์ฌ์ฉ์ ๊ด์ ์์์ ๋น์ ๋ก ๋ค์ ์ ๋ฆฌํ๋ค.[^39]
- ์ฌ์ฉ์ ๋์์ ๋ณด์ด๋ ์๋จ = ํ๋ก ํธ์๋[^39]
- ๋์ ๋ณด์ด์ง ์๋ ๋ท๋จ = ๋ฐฑ์๋[^39]
์ด ๊ตฌ์ฑ์ ํ๋ก ํธ/๋ฐฑ์ โ๋ณด์ด๋ ๊ฒ vs ๋ณด์ด์ง ์๋ ๊ฒโ, โํํ/์ํธ์์ฉ vs ์ฒ๋ฆฌ/๋ฐ์ดํฐโ๋ก ๋๋นํด ์ดํด์ํค๋ ๋ฐฉ์์ด๋ค.[^4][^39]
## 3.13 API์ ์๋ฏธ: ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์๋๋ก ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒ[^40]
API๋ Application Programming Interface์ ์ฝ์๋ผ๊ณ ์๊ฐํ๋ค.[^40] ์๋ฏธ๋ โ์ด๋ค ํ๋ก๊ทธ๋จ์ ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์๋๋ก ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒโ์ด๋ผ๊ณ ์ค๋ช ํ๋ค.[^41]
์ด ์ ์๋ฅผ ๊ตฌ์ฒดํํ๊ธฐ ์ํด ๊ณต๊ณต๋ฐ์ดํฐ ์์๋ฅผ ๋ ๋ค.[^42]
- ์ ๋ถ์์ ์ ๊ณตํ๋ ๊ณต๊ณต๋ฐ์ดํฐ API ์ค ๋ ์จ ์ ๋ณด API URL์ ๋ธ๋ผ์ฐ์ ์์ ํธ์ถํ๋ฉด[^42]
- ์ค๋ ๋ ์จ์ ๋ํ ๋ฐ์ดํฐ๊ฐ ๋ฐํ๋๋ค.[^43]
๊ทธ๋ฆฌ๊ณ ๊ฒฐ๋ก : ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๋ API ์๋ฒ๋ ์ ๋ถ์์ ๊ด๋ฆฌํ๋ ๋ฐฑ์๋ ์๋ฒ๋ผ๊ณ ๋งํ๋ค.[^44]
## 3.14 ์ธ๋ถ API ํ์ฉ ์ฌ๋ก: ์ง๋ API(๊ตฌ๊ธ/์นด์นด์ค/๋ค์ด๋ฒ)์ HTML ์ฝ์ [^45]
๋ฐํ์๋ ๋ ๋ค๋ฅธ ์๋ก ์ง๋ ์๋น์ค๋ฅผ ๋ ๋ค.[^45]
- ๊ตฌ๊ธ/์นด์นด์ค/๋ค์ด๋ฒ ์ง๋์์ ์ ๊ณตํ๋ ๊ฐ๋ฐ ์ฝ๋๋ฅผ HTML์ ์ฝ์ ํ๋ฉด[^45]
- ์ง๋๋ฅผ ํ๋ฉด์ ํ์ํ ์ ์๋ค.[^46]
์ด๋ โ์ง๋๊ฐ ํ๋ฉด์ ํ์๋๋โ ์ด์ ๋ ์ด ํ์ฌ๋ค์ด ์ ๊ณตํ๋ API๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ด๋ผ๊ณ ์ค๋ช ํ๋ค.[^46]
์ฆ, ํ๋ก ํธ์๋๋ ํ๋ฉด ํ์(์ง๋ UI ๋ ๋๋ง)๋ฅผ ๋ด๋นํ์ง๋ง, ๊ทธ ๊ธฐ๋ฐ ๋ฐ์ดํฐ/๊ธฐ๋ฅ์ ์ธ๋ถ์ ๋ฐฑ์๋(API ์ ๊ณต์)๊ฐ ์ ๊ณตํ๋ ๊ตฌ์กฐ๋ฅผ ๋ณด์ฌ์ค๋ค.[^46][^47]
## 3.15 ์ ๋ฆฌ: API ์๋ฒ๋ ์ง์ ๊ฐ๋ฐํ ์๋, ์ธ๋ถ ๊ฒ์ ํธ์ถํด ์ธ ์๋ ์๋ค[^47]
๋ฐํ์๋ ์ง๊ธ๊น์ง์ ์์๋ฅผ ๋ฌถ์ด ๋ค์์ฒ๋ผ ์ ๋ฆฌํ๋ค.[^47]
- ํ๋ฉด์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ API ์๋ฒ์์ ๊ฐ์ ธ์ฌ ์ ์๋ค.[^47]
- ์ด API ์๋ฒ๋:
- ๋ด๊ฐ ์ง์ ๊ฐ๋ฐํ ์๋ ์๊ณ [^48]
- ์ธ๋ถ API๋ฅผ ํธ์ถํด ์ฌ์ฉํ ์๋ ์๋ค.[^48]
์ฆ, โ๋ฐฑ์๋ = ์ฐ๋ฆฌ ํ์ฌ ์๋ฒโ๋ก๋ง ํ์ ํ์ง ์๊ณ , ์๋น์ค๊ฐ ์ธ๋ถ API์ ๊ฒฐํฉ๋์ด ๊ตฌ์ฑ๋ ์ ์์์ ๋ช ํํ ํ๋ค.[^47][^48]
## 3.16 ๋ฐฑ์๋ ์ธ์ด์ ํ๋ ์์ํฌ ์์: Java/Node/Python + Spring/Express/Django[^49]
๋ฐฑ์๋ ์๋ฒ๋ฅผ ๊ตฌ์ถํ ์ ์๋ ์ธ์ด๋ ๋ค์ํ๋ค๊ณ ๋งํ๋ฉฐ ๋ํ ์์๋ก ๋ค์์ ๋ ๋ค.[^49]
- Java
- Node.js
- Python
- C++[^49]
๊ทธ๋ฆฌ๊ณ ์น ๊ฐ๋ฐ์์๋ ๊ฐ๋ฐ ํธ์์ฑ์ ์ํด โ๋ฐ์ฏค ์์ฑ๋ ์ฝ๋์ธ ํ๋ ์์ํฌโ๋ฅผ ๋ณดํต ์ฌ์ฉํ๋ค๊ณ ์ค๋ช ํ๋ค.[^50] ์ธ์ด๋ณ๋ก ๋ง์ด ๋งค์นญ๋๋ ํ๋ ์์ํฌ๋ ์ ์ํ๋ค.[^51]
- Java โ Spring[^51]
- Node.js โ Express[^51]
- Python โ Django[^51]
์ด ํ๋ฆ์ ์์ ํ๋ก ํธ์๋์์๋ โ๊ธฐ๋ณธ(HTML/CSS/JS) + ํ๋ ์์ํฌ(React ๋ฑ)โ๋ฅผ ์ค๋ช ํ๋ ๊ฒ๊ณผ ๊ตฌ์กฐ์ ์ผ๋ก ๋์๋๋ค.[^23][^24]
## 3.17 ์ค๋ฌด์์์ ๋ค๋ฅธ ์๋ฏธ: ์ฌ์ฉ์ ์ฌ์ดํธ=ํ๋ก ํธ, ๊ด๋ฆฌ์ ์ฌ์ดํธ=๋ฐฑ์๋[^46]
์ฌ๊ธฐ์ ๋ฐํ์๋ โ์ค๋ฌด์์๋ ํ๋ก ํธ์๋/๋ฐฑ์๋๋ผ๋ ๋จ์ด๋ฅผ ๋ค๋ฅธ ์๋ฏธ๋ก ์ฌ์ฉํ๊ธฐ๋ ํ๋คโ๊ณ ์ ํํ๋ค.[^46] ๊ทธ ์ค๋ฌด์ ์ฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.[^46]
- ์ฌ์ฉ์์๊ฒ ๋ ธ์ถ๋๋ ์ฌ์ดํธ = ํ๋ก ํธ์๋[^46]
- ์ด์ํ์์ ์ฌ์ฉํ๋ ๊ด๋ฆฌ์ ์ฌ์ดํธ = ๋ฐฑ์๋[^46]
๊ด๋ฆฌ์ ์ฌ์ดํธ(์ด๋๋ฏผ)์ ์ ์๋ ๋ถ์ธ๋ค.[^49]
- ๊ฐ๋ฐ์๊ฐ ๋งค๋ฒ ์ด์์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์์ ํด์ฃผ๊ธฐ ํ๋๋[^49]
- ์ด์์๊ฐ ์ง์ ๋ ธ์ถํ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ ์ ์๋๋ก ๊ฐ๋ฐ๋ ์ฌ์ดํธ[^49]
๊ทธ๋ฆฌ๊ณ ๋งค์ฐ ๊ตฌ์ฒด์ ์ธ ์์๋ฅผ ์ ๊ณตํ๋ค.[^50][^51]
- ์ฌ์ดํธ์์ ํ๋งคํ ์ํ ์ ๋ณด๋ฅผ ๋ฑ๋กํ ๋
- ๊ฐ๋ฐ์๊ฐ Insert ์ฟผ๋ฆฌ๋ก ์ํ์ ๋ณด๋ฅผ ์ฝ์ ํ๋ ๊ฒ์ด ์๋๋ผ[^50]
- ์ด์์๊ฐ ๊ด๋ฆฌ์ ์ฌ์ดํธ์์ ์ํ ์ด๋ฏธ์ง/์ํ๋ช /๊ฐ๊ฒฉ ๋ฑ์ ์ ๋ ฅํ๋ค.[^51]
๋ง์ง๋ง์ผ๋ก ๋ฐํ์๋ ์ด๊ฒ์ด ์์์ ์ค๋ช ํ ๋ฐฑ์๋์ โ๋๊ฒ ๋ณด๋ฉด ๊ฐ์ ์๋ฏธโ๋ผ๊ณ ๋ง๋ถ์ธ๋ค.[^52]
- ์ฌ์ฉ์์๊ฒ ๋ชจ๋ฅด๋ โ๋ค ๋จ ์์ญโ์ด๋ผ๋ ์ ์์ ๋์ผํ ๋ฐฉํฅ์ฑ์ด๋ผ๋ ํด์[^52]
## 3.18 ํ๋ก ํธ์๋ vs ๋ฐฑ์๋, ๋ฌด์์ ํด์ผ ํ ๊น: ์ฑ์ฉ ํํ๋ก ๋ณด๋ ํ์ค[^53]
๋ฐํ์๋ ํ๋ก ํธ์๋์ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ค ์ด๋ค ๊ฑธ ํด์ผ ํ ์ง ๊ณ ๋ฏผํ๋ ์ฌ๋๋ค์ ์ํด โ์ฑ์ฉ ํํ๋ณ๋กโ ์ค๋ช ํ๊ฒ ๋ค๊ณ ํ๋ค.[^53] ์ดํ ํฌ๊ฒ 3๊ฐ์ง ๋ฒ์ฃผ์ ์ฑ์ฉ/์ญํ ๊ตฌ๋๋ฅผ ๋ค๋ฃฌ๋ค.[^54][^64][^68]
- ํ์คํ(ํ๋ก ํธ/๋ฐฑ ๊ตฌ๋ถ ์์ด ์ฑ์ฉ)[^54]
- ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฑ์ฉ(๋ถ๋ฆฌ ์ฑ์ฉ, ํนํ ์คํํธ์ ์ฌ๋ก)[^58]
- ์ตํฉํ ์ธ์ฌ ์ฑ์ฉ(์ฃผ์ ํ์)[^64]
## 3.19 ํ์คํ ์ฑ์ฉ: ๊ณต๊ณ ์ ๊ตฌ๋ถ ์์ผ๋ฉด ํ์คํ์ผ ๊ฐ๋ฅ์ฑ[^54]
๋จผ์ ํ๋ก ํธ/๋ฐฑ์ ๊ตฌ๋ถํ์ง ์๊ณ ์ฑ์ฉํ๋ ํ์คํ ๊ฐ๋ฐ์ ์ฑ์ฉ์ด ์๋ค๊ณ ๋งํ๋ค.[^54] ์ฑ์ฉ ๊ณต๊ณ ์ ๋ณ๋ค๋ฅธ ๊ตฌ๋ถ ๋ด์ฉ์ด ์์ผ๋ฉด ํ์คํ์ ์ฑ์ฉํ๋ค๊ณ ๋ณด๋ฉด ๋๋ค๊ณ ์ค๋ช ํ๋ค.[^55]
๋ฐํ์๋ ์์ ์ ๊ฒฝํ์ ๊ทผ๊ฑฐ๋ก ๋ ๋ค.[^56]
- ์ด์ง์ 2๋ฒ ํด๋ดค๊ณ , ์ด 3๊ฐ ํ์ฌ ๊ฒฝํ์ด ์๋๋ฐ[^56]
- ํ ๋ฒ๋ ํ๋ก ํธ์๋์ ๋ฐฑ์๋๋ฅผ ๊ตฌ๋ถํด์ ์ผ์ ํด๋ณธ ์ ์ด ์๋ค๊ณ ๋งํ๋ค.[^57]
๋ค๋ง โ์๋ฒฝํ ํ์คํโ์ด๋ผ๊ณ ํ๊ธด ์ด๋ ค์ด ์ด์ ๋ ํจ๊ป ๋ฐํ๋ค.[^57]
- ์น ๋์์ด๋์ ํผ๋ธ๋ฆฌ์ ๊ฐ ํผ๋ธ๋ฆฌ์ฑ ํ์ผ์ ์ ๊ณตํด ์คฌ๊ธฐ ๋๋ฌธ์[^57]
- ํ๋ก ํธ(๋์์ธ/ํผ๋ธ๋ฆฌ์ฑ) ์ ๋ถ๋ฅผ ๊ฐ๋ฐ์๊ฐ 100% ํ ๊ฒ์ ์๋๋ผ๋ ์๋ฏธ๋ก ๋ณด์ธ๋ค.[^57]
๊ทธ๋ผ์๋ ๋ฐํ์๊ฐ ์ํํ ์ ๋ฌด ๋ฒ์๋ ๋๊ฒ ์ ์๋๋ค.[^57]
- ์ ๋ฌ๋ฐ์ ํผ๋ธ๋ฆฌ์ฑ ํ์ผ์ ์ด์ ์ค์ธ ์๋น์ค ํ๋ ์์ํฌ์ ๋ง๊ฒ ๋ณํํด ์ ์ฉ[^57]
- DB ์ค๊ณ๋ถํฐ[^57]
- ๋ฐฑ์๋ ๋น์ฆ๋์ค ๋ก์ง ๊ตฌํ๊น์ง ํจ๊ป ๊ฐ๋ฐ[^57]
์ฆ, ์ค๋ฌด์์์ ํ์คํ์ โํ๋ก ํธ UI๋ฅผ 0๋ถํฐ ๋์์ธ/ํผ๋ธ๋ฆฌ์ฑ๊น์งโ๊ฐ ์๋๋ผ, ์ญํ ๋ถ์ ์์์๋ ๊ฐ๋ฐ์๊ฐ ํ๋ก ํธ ์ ์ฉ + ๋ฐฑ์๋/DB๊น์ง ํจ๊ป ํ๋ ํํ๋ก ๋ํ๋ ์ ์์์ ๋ณด์ฌ์ค๋ค.[^57]
## 3.20 ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฑ์ฉ(๋ถ๋ฆฌ์ฑ์ฉ): ์์ ์คํํธ์ ์์์ ์ญํ ๋ฐฐ๋ถ ์ฌ๋ก[^58]
๋ค์์ผ๋ก ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฑ์ฉ์ ์ธ๊ธํ๋ฉด์, ๋ฐํ์์ ์ฃผ๋ณ ๊ฐ๋ฐ์๋ค ์ฌ๋ก๋ฅผ ๋ ๋ค.[^58]
- ๊ท๋ชจ๊ฐ ์์ ์คํํธ์ ์์๋ ํ๋ก ํธ์ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ฅผ ๋๋ ์ ์ฑ์ฉํ๊ณ ์์๋ค.[^59]
๊ทธ๋ฆฌ๊ณ ๊ทธ ์์์์ ์ฐ์ฐจ/์ญํ ๋ฐฐ๋ถ ๊ฒฝํฅ์ ๋งํ๋ค.[^60]
- ํ๋ก ํธ: ๋ณดํต ์ฐ์ฐจ๊ฐ ๋ฎ์ ์ฃผ๋์ด ๊ฐ๋ฐ์๊ฐ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์[^60]
- ๋ฐฑ์๋: ์๋์ด ๊ฐ๋ฐ์๊ฐ ๋งก๋ ๊ฒฝ์ฐ๊ฐ ๋ง์[^60]
๊ทธ ์ด์ ๋ก ๋ฐฑ์๋ ์ ๋ฌด์ ์ํ๋๋ฅผ ์ธ๊ธํ๋ค.[^60]
- DB ์ค๊ณ ๋ฑ โ๋น๊ต์ ์ํ๋ถ๋ด์ด ํฐโ ๋ฐฑ์๋๋ ์ค๊ธ ์ด์ ๊ฐ๋ฐ์์๊ฒ ๋งก๊ธฐ๊ณ [^60]
- โ๋น๊ต์ ๊ฐ๋ฐ์ด ์ฌ์ดโ ํ๋ก ํธ์๋๋ ์ ์ ๊ฐ๋ฐ์์๊ฒ ๋งก๊ธฐ๋ ๊ฒฝํฅ์ด ์๋ค๋ ์ค๋ช ์ด๋ค.[^60]
์ด ๋ถ๋ถ์ ํ์ฌ/ํ๋ง๋ค ๋ค๋ฅผ ์ ์์์ ์ ์ ํ์ง ์์ง๋ง, ๋ฐํ์์ ๊ด์ฐฐ ๊ธฐ๋ฐ์ผ๋ก โํ์ฅ์์ ๋ํ๋๋ ๋ฐฐ์น ํจํดโ์ ์ ๋ฌํ๋ค๋ ์ ์ด ํฌ์ธํธ๋ค.[^58][^60]
## 3.21 ์ปค๋ฆฌ์ด ์กฐ์ธ: ์ฒซ ํ์ฌ๋ ํ์คํ ์์์ ์ถ์ฒ(์ด์ : ๋ฐฑ์๋๊ฐ ๋ ์ด๋ ค์์ง ์ ์์) [^61]
๋ฐํ์๋ ์์ ์ ์ถ์ฒ์ ๋ช ํํ ๋งํ๋ค.[^61]
- ์ฒซ ํ์ฌ๋ ํ์คํ ๊ฐ๋ฐ๋ก ์์ํ๋ ๊ฒ์ ์ถ์ฒํ๋ค.[^61]
๊ทธ ์ด์ ๋ ๋ค์ ๋ ผ๋ฆฌ๋ก ์ ์๋๋ค.[^62][^63]
- ์ฒ์๋ถํฐ ํ๋ก ํธ์๋ ๊ฐ๋ฐ๋ง ํ๋ค ๋ณด๋ฉด[^62]
- ๋ฐฑ์๋ ๊ฐ๋ฐ์ด ๋๋ฌด ์ด๋ ค์์ง ์ ์๋ค.[^62]
- ๊ฒฐ๊ตญ Front๋ Back์ด๋ โ์์ชฝ ๋ค ์ด๋ ์ ๋ ์ดํดโํ๊ณ ์์ด์ผ ๊ฐ๋ฐ์ด ์์ํ๋ค.[^63]
์ฆ, ํน์ ์ง๋ฌด๋ก ๊ณ ์ ๋๊ธฐ ์ ์ ์ ์ฒด ํ๋ฆ(ํ๋ก ํธ ์์ฒญ โ ๋ฐฑ์๋ ์ฒ๋ฆฌ โ DB ๊ตฌ์กฐ)์ ์ดํดํด์ผ ์ฅ๊ธฐ์ ์ผ๋ก ๊ฐ๋ฐ์ด ์ฌ์์ง๋ค๋ ์ฃผ์ฅ์ด๋ค.[^63]
## 3.22 ์ค์ฌ๋ก: ๋ฐฑ์๋ ๊ฒฝํ ์๋ 3๋ ์ฐจ ํ๋ก ํธ ๊ฐ๋ฐ์์ ์ด๋ ค์[^63]
๋ฐํ์๋ ๋ ๋ฒ์งธ ํ์ฌ์์ ๋ง๋ฌ๋ โ3๋ ์ฐจ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์โ ์ฌ๋ก๋ฅผ ๋ ๋ค.[^63] ์ด ๊ฐ๋ฐ์๋ ์ด์ ํ์ฌ์์ ๋ฐฑ์๋ ๊ฐ๋ฐ ๊ฒฝ๋ ฅ์ด ์์๋ค๊ณ ํ๋ค.[^63]
๊ทธ ๊ฒฐ๊ณผ๋ ๋๋น์ ์ผ๋ก ๋ฌ์ฌ๋๋ค.[^64]
- ํผ๋ธ๋ฆฌ์ฑ ํ์ผ์ ํ๋ก ํธ์๋ ์๋ฒ์ ์ ์ฉํ๋ ์๋๋ ๊ต์ฅํ ๋นจ๋๋ค.[^64]
- ํ์ง๋ง ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ์ํ DB ๊ตฌ์กฐ๋ฅผ ์ ํ ์ดํดํ์ง ๋ชปํด ๊ต์ฅํ ํ๋ค์ดํ๋ค.[^64]
์ด ์ฌ๋ก๋ โํ๋ก ํธ ์ค๋ฌด ์๋ จโ์ด ์์ด๋, ์๋น์ค ๊ฐ๋ฐ์์ DB/๋ฐฑ์๋ ์ดํด๊ฐ ์์ผ๋ฉด ๋ณ๋ชฉ์ด ์๊ธฐ๊ณ ํ์ ์ด ์ด๋ ต๋ค๋ ๋ฉ์์ง๋ฅผ ๋ท๋ฐ์นจํ๋ค.[^63][^64]
## 3.23 ๊ฒฐ๋ก ์กฐ์ธ: ๋์ค์ ํ ์ชฝ์ ์ ํํ๋๋ผ๋ ์ด๋ฐ์ ๋ ๋ค ๋ฐฐ์ฐ๊ธฐ[^65]
๋ฐํ์๋ ์์ ์ฃผ์ฅ๊ณผ ์ฌ๋ก๋ฅผ ๋ฐํ์ผ๋ก ๊ฒฐ๋ก ์ ๋ค์ ๋ชป ๋ฐ๋๋ค.[^65]
- Front๋ Back์ด๋ , ๋์ค์ ํ์ชฝ์ผ๋ก ์ ํํ๋๋ผ๋[^65]
- ์ฒ์ ์์์ ๋ ๋ค ์ด๋ ์ ๋ ํจ๊ป ๋ฐฐ์ฐ๋ ๊ฒ์ด ์์ ํ๋ค๊ณ ์๊ฐํ๋ค.[^65]
์ฌ๊ธฐ์ โ์์ โ์ด๋ผ๋ ํํ์ ๊ฐ์ธ ์ปค๋ฆฌ์ด ๋ฆฌ์คํฌ(ํ์ชฝ๋ง ํ๋ค๊ฐ ๋ฐ๋์ชฝ์ด ์ฅ๋ฒฝ์ด ๋๋ ์ํฉ)์ ์ค๋ฌด ๋ฆฌ์คํฌ(์ ์ฒด ๊ตฌ์กฐ ์ดํด ๋ถ์กฑ์ผ๋ก ๊ฐ๋ฐ ๋์ด๋ ๊ธ์์น)๋ฅผ ํจ๊ป ํจ์ถํ๋ค.[^62][^65]
## 3.24 โ์ตํฉํ ์ธ์ฌโ ์ฑ์ฉ ๊ณต๊ณ ์ ๋ํ ๊ฒฝ๊ณ : 1๋ช ์๊ธ์ผ๋ก 2๋ช ์ผ์ ์ํฌ ์๋[^66]
๋ง์ง๋ง์ผ๋ก ๋ฐํ์๋ โ์ตํฉํ ์ธ์ฌโ๋ผ๋ ํํ์ด ์ ํ ์ฑ์ฉ ๊ณต๊ณ ์ ๋ํด ์ฃผ์๋ฅผ ์ค๋ค.[^66] ๊ทธ๋ ์๋ก ๋ค๋ฅธ ์ ๋ฌด๋ฅผ 2๊ฐ ์ด์ ํ ์ ์๋ ์ฌ๋์ ๋ฝ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๊ณ ์ค๋ช ํ๋ฉฐ, ์กฐํฉ ์์๋ฅผ ๋ ๋ค.[^67]
- ๊ธฐํ์์ ๋์์ด๋[^67]
- ๊ธฐํ์์ ํผ๋ธ๋ฆฌ์ [^67]
- ํผ๋ธ๋ฆฌ์ ์ ๊ฐ๋ฐ์[^67]
๊ทธ๋ฆฌ๊ณ ๋๋ถ๋ถ ์ด๋ฐ ํ์ฌ์ ์๋๋ ๋ค์์ผ ์ ์๋ค๊ณ ๊ฒฝ๊ณ ํ๋ค.[^68]
- โ1๋ช ์๊ธ์ผ๋ก 2๋ช ์ ์ ๋ฌด๋ฅผ ์ํค๊ฒ ๋ค๋ ์๋โ[^68]
๊ทธ ๊ฒฐ๊ณผ๋ก ๋ฐ์ ๊ฐ๋ฅํ ์ํฉ๋ ๊ตฌ์ฒด์ ์ผ๋ก ๋งํ๋ค.[^69]
- ์๋ชปํ๋ฉด ๋งค์ผ ์ผ๊ทผ๋ง ํ๋ฉด์ ์๊ธ์ 1์ธ๋ถ๋ง ๋ฐ๋ ์ํฉ์ด ๋ฐ์ํ ์ ์๋ค.[^69]
๋ฐ๋ผ์ ์ด๋ฐ ๊ณต๊ณ ๋ฅผ ๋ณด๋ฉด ๋ค์์ ๊ถํ๋ค.[^70]
- ์ด๊ฒ์ ๊ฒ ํ๊ธฐ๋ฅผ ์ ํ์ธํ๊ณ ์ง์ํ๋ผ.[^70]
[!WARNING] โ์ตํฉํ ์ธ์ฌโ ๋ฌธ๊ตฌ๊ฐ ํญ์ ์ข์ ์๋ฏธ๋ ์๋
๋ฐํ์๋ ๋ง์ ๊ฒฝ์ฐ ํ์ฌ๊ฐ ์ธ๊ฑด๋น ์ ๊ฐ์ ์ํด 2์ธ๋ถ ์ ๋ฌด๋ฅผ 1์ธ์๊ฒ ์๊ตฌํ ์ ์๋ค๊ณ ๋ณด๋ฉฐ, ์ง์ ์ ํ๊ธฐ๋ฅผ ๊ผผ๊ผผํ ํ์ธํ๋ผ๊ณ ์กฐ์ธํ๋ค.[^68][^70]
# 4. ํต์ฌ ํต์ฐฐ[^1]
- ํ๋ก ํธ์๋๋ ๋จ์ํ โ๋ณด์ด๋ ํ๋ฉดโ์ด ์๋๋ผ, ์ด๋ฏธ์ง ๋ฆฌ์์ค๊น์ง ํฌํจํ ์ฌ์ฉ์ ์ ์ ์ ์ฒด๋ก ๋ค๋ค์ง๋ค.[^4][^6]
- ์ค๋ฌด์์๋ ๋ฐ์ํ/๋๋ฐ์ด์ค ๋์ ๋์ด๋ ๋๋ฌธ์, ํ ์คํธ์กฐ์ฐจ HTML/CSS๋ก ์ฒ๋ฆฌํ์ง ์๊ณ ํต ์ด๋ฏธ์ง๋ก ๋ฐ์ด๋ถ์ด๋ ์ ํ์ด ๋์ฌ ์ ์๋ค.[^11][^12]
- ๋ฐฑ์๋๋ โ์๋ฒโ๋ผ๋ ๋จ์ด๋ณด๋ค, ํ๋ก ํธ์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ API ๊ฐ๋ ์ผ๋ก ์ดํดํ๋ ๊ฒ์ด ๊ตฌ์กฐ ํ์ ์ ๋์์ด ๋๋ค.[^37][^41]
- ์๋น์ค๋ ๋ด๋ถ ๋ฐฑ์๋๋ง์ผ๋ก ๊ตฌ์ฑ๋์ง ์๊ณ , ์ ๋ถ ๊ณต๊ณต๋ฐ์ดํฐ๋ ์ง๋์ฒ๋ผ ์ธ๋ถ API๋ฅผ ํธ์ถํด ์กฐํฉํ๋ ํํ๊ฐ ํํ๋ค.[^42][^45]
- ํ๋ก ํธ/๋ฐฑ์ด๋ผ๋ ๋จ์ด๋ ๊ธฐ์ ๋ ์ด์ด ๊ตฌ๋ถ ์ธ์๋, ์ฌ์ฉ์ ์ฌ์ดํธ vs ๊ด๋ฆฌ์ ์ฌ์ดํธ์ฒ๋ผ ์กฐ์ง/์ ๋ฌด ๋งฅ๋ฝ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ฐ์ธ๋ค.[^46][^49]
- ์ปค๋ฆฌ์ด ์ด๋ฐ์๋ ํ์ชฝ๋ง ํ๊ธฐ๋ณด๋ค, ํ๋ก ํธยท๋ฐฑ์ ๋ ๋ค ์ดํดํ๋ ๊ฒ์ด ์ฅ๊ธฐ์ ์ผ๋ก โ๊ฐ๋ฐ์ ์์ํ๊ฒโ ๋ง๋ค ์ ์๋ค๋ ๊ฒฝํ ๊ธฐ๋ฐ ์กฐ์ธ์ด ์ ์๋๋ค.[^63][^65]
- ์คํ:
- ํ์คํ ๊ณต๊ณ ๋ผ๋ฉด ํ๋ก ํธ(UI ์ ์ฉ) + ๋ฐฑ์๋(API/DB) ์ ๋ฌด ๋ฒ์๋ฅผ ์ง๋ฌธ์ผ๋ก ๊ตฌ์ฒดํํ๊ธฐ[^55][^57]
- ํ๋ก ํธ ์ง๋ฌด๋ก ์ ์ฌํ๋๋ผ๋ DB ๊ตฌ์กฐ/์์ฒญ-์๋ต ํ๋ฆ์ ์ต์ํ ํ์ตํ๊ธฐ[^63][^64]
- ์คํ:
- โ์ตํฉํ ์ธ์ฌโ ์ฑ์ฉ์ ์ฑ์ฅ ๊ธฐํ์ผ ์๋ ์์ง๋ง, ๋ฐํ์๋ ์ ๋ฌด ๊ณผ๋ถํ/์ผ๊ทผ ๋ฆฌ์คํฌ๋ฅผ ๊ฐ์กฐํ๋ฉฐ ํ๊ธฐ ํ์ธ์ ๊ถํ๋ค.[^68][^70]
# 5. ํท๊ฐ๋ฆฌ๋ ์ฉ์ด ์ ๋ฆฌ[^1]
- ํ๋ก ํธ์๋(Frontend): ์ฌ์ฉ์์๊ฒ ๋ณด์ด๊ณ ์ฌ์ฉ์๊ฐ ์กฐ์ํ๋ ์น ํ๋ฉด ์์ญ(์ด๋ฏธ์ง/ํ ์คํธ/๋ฒํผ/์ ๋ ฅ์ฐฝ/๋์ ๋ฑ). ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์๋ก HTML, CSS, JavaScript, ์ด๋ฏธ์ง๊ฐ ์ธ๊ธ๋๋ค.[^4][^6]
- HTML: ํ๊ทธ๋ก ํ๋ฉด ๊ตฌ์ฑ ์์๋ฅผ ๊ตฌํํ๋ ์ธ์ด(์: ๋ฒํผ ํ๊ทธ๋ก ๊ธฐ๋ณธ ๋ฒํผ ๋ ธ์ถ).[^14][^15]
- CSS: HTML ์์์ ์์น/์์/ํฌ๊ธฐ ๋ฑ ๋์์ธ ์์ฑ์ ์ ์ฉํ๋ ๊ธฐ์ (์: ๋ฒํผ ํ ์คํธ ์์์ ๊ฒ์ ์ผ๋ก).[^16][^17]
- JavaScript: ํ๋ฉด์์ ๋์ํ๋ ๊ฑฐ์ ๋ชจ๋ ์ธํฐ๋์ ์ ๊ตฌํ(์: ์๋ ์ฌ๋ผ์ด๋ ๋ฐฐ๋, ๋ฒํผ ํด๋ฆญ ์ ํ์ ).[^18][^19]
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ(Library): ๋ ์งง์ ์ฝ๋๋ก ํจ์จ์ ์ผ๋ก ๊ธฐ๋ฅ์ ๊ตฌํํ๋๋ก ๋๋ ์ถ๊ฐ ๋๊ตฌ(์: jQuery).[^20]
- ํ๋ ์์ํฌ(Framework): ๊ฐ๋ฐ ํธ์์ฑ์ ์ํด ๋ฐ์ฏค ์์ฑ๋ ์ฝ๋ ๊ธฐ๋ฐ์ ์ ๊ณต(ํ๋ก ํธ ์: Bootstrap, React ๋ฑ / ๋ฐฑ์๋ ์: Spring, Express, Django).[^21][^50][^51]
- ๋ฐฑ์๋(Backend): ํ๋ก ํธ์๋๊ฐ ์์ฒญํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ฑฐ๋ ํ๋ฉด ํ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ API/์๋ฒ ์์ญ. DB ์ฐ๋, ์ํธํ ๋ฑ ๋ณต์กํ ์์ ์ ์ฌ์ฉ์ ๋ชจ๋ฅด๊ฒ ์ํ.[^37][^38]
- API: Application Programming Interface์ ์ฝ์. ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์๋๋ก ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒ(์: ๋ ์จ ์ ๋ณด API ํธ์ถ ์ ๋ฐ์ดํฐ ๋ฐํ, ์ง๋ API๋ก ์ง๋ ํ์).[^40][^42][^45]
- ๊ด๋ฆฌ์ ์ฌ์ดํธ(์ด๋๋ฏผ): ์ด์์๊ฐ ์ง์ ๋ ธ์ถ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌ/์ ๋ ฅํ๋๋ก ๋ง๋ ๋ด๋ถ์ฉ ์ฌ์ดํธ(์: ์ํ ์ด๋ฏธ์ง/์ํ๋ช /๊ฐ๊ฒฉ ์ ๋ ฅ). ์ค๋ฌด์์ ์ด๋ฅผ โ๋ฐฑ์๋โ๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํจ.[^46][^51]
- ํ์คํ(Full-stack): ํ๋ก ํธ์๋์ ๋ฐฑ์๋๋ฅผ ๊ตฌ๋ถํ์ง ์๊ณ ํจ๊ป ๊ฐ๋ฐํ๋ ์ญํ /์ฑ์ฉ ํํ.[^54][^57]
- ๋น์ฆ๋์ค ๋ก์ง: (์์ ๋งฅ๋ฝ์) ๋ฐฑ์๋์์ ์๋น์ค ๋์ ๊ท์น/์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ๋ ์์ญ์ผ๋ก โ๋ฐฑ์๋ ๋น์ฆ๋์ค ๋ก์ง ๊ตฌํโ์ด ์ธ๊ธ๋จ.[^57]
- ์ตํฉํ ์ธ์ฌ: ์๋ก ๋ค๋ฅธ ์ ๋ฌด๋ฅผ 2๊ฐ ์ด์ ์ํ ๊ฐ๋ฅํ ์ธ์ฌ๋ฅผ ์๋ฏธํ๋ ์ฑ์ฉ ํํ. ๋ฐํ์๋ 2์ธ๋ถ ์ ๋ฌด๋ฅผ 1์ธ์๊ฒ ์๊ตฌํ ์ํ์ด ์๋ค๊ณ ๊ฒฝ๊ณ .[^66][^68]
์ฐธ๊ณ (์ฝํ ์ธ ์ ๋ณด)[^1]
- ์ ๋ชฉ: ๐ปํ๋ก ํธ์๋ vs ๋ฐฑ์๋ | ๋ป๋ง ์๋ฉด ๋ฐ์ชฝ! ๋ค๋ฅธ ์๋ฏธ๊น์ง ํ๋ฒ์ ์ดํดํ๊ธฐ #ํ๋ก ํธ์๋ #๋ฐฑ์๋ #ํ๋ก ํธ๋ฐฑ์๋์ฐจ์ด #์น๊ฐ๋ฐ๊ตฌ์กฐ #์ง๋ฌด์ดํด #๊ฐ๋ฐ์๊ฐ๋ #์๋น์ค๊ตฌ์กฐ[^1]
- ์ฑ๋: ์ฐฉํ์ฝ๋ฉ[^2]
- ๊ธธ์ด: 10๋ถ 10์ด[^1]
- ๋งํฌ: https://www.youtube.com/watch?v=ZvFJYYQvnX4[^1]
[^1]: ์ ๊ณต๋ ์ฝํ ์ธ ๋ฉํ๋ฐ์ดํฐ(์ ๋ชฉ/๊ธธ์ด/๋งํฌ) ๋ฐ ์ ์ฒด ์คํฌ๋ฆฝํธ. [^2]: @[00:03] โ์ฐฉํ ์ฝ๋ฉ ์ ๋๋คโ [^3]: @[00:07] โ6๋ ์ฐจ ๊ฐ๋ฐ์๊ฐ ์๋ ค์ฃผ๋ ๊ฐ๋ฐ ์ฉ์ด ์ธ๋ฒ์งธโฆ ํ๋ก ํธ์๋ ๋ฐฑ์๋โฆ ์ค๋ช โ [^4]: @[00:10] โํํ ์๊ณ ์๋ ์๋ฏธ์ ๋ค๋ฅด๊ฒโฆ ์ค๋ช โ / @[00:18] โํ๋ก ํธ์๋๋โฆ ์ฌ์ฉ์ ์ฌ์ด์ ์ ์ โฆ ์๊ฐ์ ์ธ ๋ถ๋ถโ [^5]: @[00:23] โ์ด๋ฏธ์ง, ํ ์คํธ, ํฐํธ, ์์, ๋์, ๋ฒํผ, ์ ๋ ฅ์ฐฝโฆ ๊ฑฐ์ ๋ชจ๋ ์์ญโ [^6]: @[00:35] โ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์์๋ html, css, ์๋ฐ์คํฌ๋ฆฝํธ ๊ทธ๋ฆฌ๊ณ ์ด๋ฏธ์งโ [^7]: @[00:44] โ๋ณดํต ์ด๋ฏธ์ง๋ฅผ css์ ํฌํจํด์โฆโ [^8]: @[00:49] โ์ค๋ฌด์์๋โฆ ๋๋ถ๋ถ ์์ญ์ ์ด๋ฏธ์ง๋ก ์ปค๋ฒโฆ ๋ณ๋๋กโฆโ [^9]: @[00:59] โ์ํ ์ด๋ฏธ์ง์ ์ํ๋ช ์ด ๋ ธ์ถ๋๋ ์ด๋ฒคํธ ํ์ด์งโฆโ [^10]: @[01:04] โ์ํ ์ด๋ฏธ์ง ์๋ ์ํ๋ช ์ ํ ์คํธ๋ก ์ ๊ณ , css๋ฅผ ์ ์ฉโฆโ [^11]: @[01:14] โํ ์คํธ๊ฐ ํฌํจ๋ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด์ ์ฌ์ฉํ ์ ์์ต๋๋คโ [^12]: @[01:16] โ๊ธฐ๊ธฐ๋ง๋ค ํ๋ฉด์ด ๋ฌ๋ผ์โฆ ์ฒ๋ฆฌํ๊ธฐ ์ด๋ ต๋คโ [^13]: @[01:23] โํต ์ด๋ฏธ์ง๋กโฆ ๊ฐ๋ก ๊ธธ์ด์ ๋ง๊ฒโฆ ์ธ๋กโฆ ์คํฌ๋กคโ [^14]: @[01:32] โhtml์โฆ ํ๊ทธ๋ก ํ๋ฉด ๊ตฌ์ฑ ์์๋ฅผ ๊ตฌํโ [^15]: @[01:38] โ๋ฒํผ ํ๊ทธโฆ ๊ธฐ๋ณธ ๋ฒํผ์ ๋ ธ์ถโ [^16]: @[01:43] โcss๋โฆ ์์น, ์์, ํฌ๊ธฐ ๋ฑ ๋์์ธ ์์ฑโ [^17]: @[01:52] โ์ปฌ๋ฌ๋ฅผ blackโฆ ํ ์คํธ ์์์ ๊ฒ์ ์ผ๋กโ [^18]: @[02:00] โ์๋ฐ์คํฌ๋ฆฝํธ๋โฆ ์์ง์ด๋ ๊ฑฐ์ ๋ชจ๋ ๊ฒโ [^19]: @[02:05] โ2์ด๋ง๋คโฆ ๋ฐฐ๋โ / @[02:16] โโ๋ฐ์ก๋์์ต๋๋คโ ํ์ โฆโ [^20]: @[02:20] โjqueryโฆ ์งง์ ์ฝ๋๋ก ํจ์จ์ ์ผ๋กโฆโ [^21]: @[02:26] โBootstrapโฆ html, css, ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ ์์ํฌโฆโ [^22]: @[02:40] โ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋โฆ ํจ์จ์ ์ด๊ณ ํธํ๊ฒโฆ ์ถ๊ฐ ๊ธฐ๋ฅโ [^23]: @[02:48] โhtml, css, ์๋ฐ์คํฌ๋ฆฝํธโฆ ๋จผ์ โฆ ์ด๋ฐ ์ถ๊ฐ ๊ธฐ๋ฅ์ ๊ณต๋ถโ [^24]: @[02:56] โReact, Angular, Vue.jsโฆโ [^25]: @[03:04] โReactโฆ ์ง์คโฆ Vueโฆ ์ ๊นโฆ Angularโฆโ [^26]: @[03:13] โ์๋ก์ด ๊ธฐ์ โฆ ๋ถ์๊ฐ์ ๋ฌด์์ โฆโ [^27]: @[03:18] โ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ด ํ์ ์ ์ด๋ผ๋ฉดโฆ ํ ๊ฐ์ง ๊ธฐ์ โฆ ์๋ฒฝํโฆโ [^28]: @[03:33] โํ ์ฌ๋์ด ๋ชจ๋ ์์ญโฆ ์ํ๋ ์์ญ ๊ทน๋ํโฆ ๋๋ฃ ๋์โฆโ [^29]: @[03:42] โReact.js์ ์ฅ์ ์ ํฌ๊ฒ 3๊ฐ์งโฆโ [^30]: @[03:45] โ์๋ฐ์คํฌ๋ฆฝํธ ๊ธฐ๋ฐโฆ ๋ฌธ๋ฒโฆ ๊ทธ๋๋กโฆโ [^31]: @[03:57] โReact๋ฅผ ์ ํ๊ฒ ๋๋ฉด ์๋ฐ์คํฌ๋ฆฝํธ ์ค๋ ฅ๋ ์ข์์ง๋๋คโ [^32]: @[04:07] โJavaโฆ ๊ฐ์ฒด์งํฅโฆ ๋ชจ๋ํโฆ ์ฌํ์ฉโฆโ [^33]: @[04:19] โReact.js๋ ์ปดํฌ๋ํธโฆ ๋ถํ์ฒ๋ผ ์ฌ์ฉโฆโ [^34]: @[04:25] โ์ฌ์ฉ์๊ฐ ๊ฐ์ฅ ๋ง์ ํ๋ก ํธ์๋ ํ๋ ์์ํฌโ [^35]: @[04:31] โ์๋ฃ๋ ๋ง๊ณ โฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ถโ [^36]: @[04:34] โ์ฅ์ ์ด ๋ง์โฆ ๋์ค์โฆ ๋ ์์ธํโฆโ [^37]: @[04:41] โ๋ฐฑ์๋๋โฆ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ์ฒ๋ฆฌโฆ ์ ๋ฌํ๋ Apiโ [^38]: @[04:54] โDB ์ฐ๋๊ณผ ์ํธํโฆ ๋ณต์กํ ์์ โฆ ์ฌ์ฉ์ ๋ชจ๋ฅด๊ฒโฆโ [^39]: @[05:02] โ์ ๋จโฆ ํ๋ก ํธ์๋โฆ ๋ค ๋จโฆ ๋ฐฑ์๋โ [^40]: @[05:10] โApi๋โฆ Application Programming Interfaceโฆโ [^41]: @[05:15] โ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์๋๋ก ๊ธฐ๋ฅ์ ์ ๊ณตโ [^42]: @[05:19] โ๊ณต๊ณต๋ฐ์ดํฐ Apiโฆ ๋ ์จ ์ ๋ณด Api Urlโฆโ [^43]: @[05:28] โํธ์ถํ๋ฉดโฆ ๋ฐ์ดํฐ๊ฐ ๋ฐํโ [^44]: @[05:32] โ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๋ Api ์๋ฒ๋โฆ ๋ฐฑ์๋ ์๋ฒโ [^45]: @[05:39] โ๊ตฌ๊ธ, ์นด์นด์ค, ๋ค์ด๋ฒ ์ง๋โฆ ๊ฐ๋ฐ ์ฝ๋๋ฅผ html์ ์ฝ์ โ [^46]: @[05:49] โ์ง๋๋ฅผ ํ๋ฉด์ ํ์โฆ Apiโ / @[06:33] โ์ค๋ฌด์์๋โฆ ๋ค๋ฅธ ์๋ฏธโฆโ [^47]: @[05:51] โํ๋ฉด์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ Api์๋ฒ์์ ๊ฐ์ ธ์ฌ ์โ [^48]: @[06:02] โ์ง์ ๊ฐ๋ฐโฆ ์ธ๋ถ Api ํธ์ถโฆโ [^49]: @[06:07] โ๋ฐฑ์๋ ์๋ฒโฆ ์ธ์ดโฆ Java, Node.js, Python, C++โ / @[06:48] โ๊ด๋ฆฌ์ ์ฌ์ดํธ๋โฆโ [^50]: @[06:17] โํ๋ ์์ํฌโฆ ๋ฐ์ฏค ์์ฑ๋ ์ฝ๋โฆโ [^51]: @[06:23] โJava๋ Springโฆ Node.js๋ Expressโฆ Python์ Djangoโฆโ / @[07:14] โ๊ด๋ฆฌ์ ์ฌ์ดํธ์์โฆ ์ ๋ ฅโ [^52]: @[07:14] โ์ฌ์ฉ์๊ฐ ๋ชจ๋ฅด๋ ๋ค ๋จโฆ ๋๊ฒ ๋ณด๋ฉด ๊ฐ์ ์๋ฏธโ [^53]: @[07:22] โ์ด๋ค ๊ฑธ ํด์ผ ํ ๊นโฆ ์ฑ์ฉํํ ๋ณ๋กโฆโ [^54]: @[07:31] โํ์คํ ๊ฐ๋ฐ์ ์ฑ์ฉโฆโ [^55]: @[07:36] โ๋ณ๋ค๋ฅธ ๊ตฌ๋ถโฆ ์์ผ๋ฉด ํ์คํโฆโ [^56]: @[07:43] โ์ด์ง์ 2๋ฒโฆโ [^57]: @[07:43] โ๊ตฌ๋ถํด์โฆ ์์๋คโ / @[07:52] โํผ๋ธ๋ฆฌ์ฑ ํ์ผโฆ ๋ณํโฆ DB ์ค๊ณโฆ ๋น์ฆ๋์ค ๋ก์งโฆโ [^58]: @[08:03] โํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์ฑ์ฉโฆโ [^59]: @[08:09] โ์์ ์คํํธ์ โฆ ๋๋ ์ ์ฑ์ฉโฆโ [^60]: @[08:24] โ์ฃผ๋์ดโฆ ํ๋ก ํธโ / @[08:29] โ์๋์ดโฆ ๋ฐฑ์๋โฆ DB ์ค๊ณโฆ ์ํ๋ถ๋ดโฆโ [^61]: @[08:43] โ์ฒซ ํ์ฌ๋ ํ์คํโฆ ์ถ์ฒโ [^62]: @[08:48] โํ๋ก ํธ๋งโฆ ๋ฐฑ์๋๊ฐ ๋๋ฌด ์ด๋ ค์์ง ์โ [^63]: @[08:53] โ์์ชฝ ๋ค ์ดํดโฆ ์์โ / @[09:02] โ3๋ ์ฐจ ํ๋ก ํธโฆ ๋ฐฑ์๋ ๊ฒฝ๋ ฅ ์์๋๋ฐโฆโ [^64]: @[09:07] โ์ ์ฉ ์๋โฆ ๋นจ๋์ง๋งโฆ DB๊ตฌ์กฐโฆ ์ดํด ๋ชปํดโฆโ [^65]: @[09:18] โ๋์ค์ ์ ํํ๋๋ผ๋โฆ ์ฒ์์ ๋ ๋คโฆ ์์ โ [^66]: @[09:28] โ์ตํฉํ ์ธ์ฌโฆโ [^67]: @[09:29] โ๊ธฐํ์์ ๋์์ด๋โฆ ๊ธฐํ์์ ํผ๋ธ๋ฆฌ์ โฆ ํผ๋ธ๋ฆฌ์ ์ ๊ฐ๋ฐ์โฆโ [^68]: @[09:46] โ1๋ช ์๊ธ์ผ๋ก 2๋ช ์ ์ ๋ฌดโฆ ์๋โ [^69]: @[09:52] โ๋งค์ผ ์ผ๊ทผโฆ ์๊ธ์ 1์ธ๋ถโฆโ [^70]: @[10:02] โํ๊ธฐ๋ฅผ ์ ํ์ธํ๊ณ ์ง์โ