![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMmqnO%2FbtqRptqjUhx%2FDHg8vtRutChxQKC1XrAKOk%2Fimg.jpg)
์น ๊ฐ๋ฐ์๋ถ๋ค์ด๋ผ๋ฉด DOM ์ด๋ผ๋ ๋จ์ด ํ๋ฒ์ ๋๋ ๋ค์ด๋ณด์ จ์ ๊ฒ๋๋ค. ์ ์ญ์ DOM์ ๋ํด ๋ง์ด ๋ค์ด๋ดค์ง๋ง ์ ํํ ๊ทธ๊ฒ ๋ฌด์์ธ์ง๋ ์๋ชฐ๋์ต๋๋ค. ๊ฐ๋ฐ์๋ผ๋ฉด ๊ถ๊ธํ ๊ฒ์ ๋ํด ๊ทธ๋ฅ ๋์ด๊ฐ๋ฉด ์๋๊ธฐ์ DOM์ ๋ํด ๊ณต๋ถํด๋ดค์ต๋๋ค. Aldev๋, Code Playground๋, WIT๋ธ๋ก๊ทธ์ ๊ณ ์ฐ์๋์ ์๋ฃ๋ฅผ ํ ๋๋ก ์ ๊ฐ ์ดํดํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์ ๋ฆฌํ์ต๋๋ค. ํ๋ฆฐ ๋ถ๋ถ์ด ์์ผ๋ฉด ์ธ์ ๋ ์ง์ ํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ์ฐธ๊ณ ํ ๋ธ๋ก๊ทธ๋ค์ ๋ํด์๋ ํ๋จ์ ์ฃผ์๋ฅผ ๋จ๊น๋๋ค. l BOM ๊ณผ DOM ์น์ ๊ธฐ๋ณธ์ ์ผ๋ก ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์๋น์ค ๋ฉ๋๋ค. ํฌ๋กฌ, ์ฌํ๋ฆฌ, ์ต์คํ๋ก์ด ๋ฑ์ด ๋ฐ๋ก ์น ๋ธ๋ผ์ฐ์ ์ ๋๋ค. ๋ธ๋ผ์ฐ์ ๋ html ์ฝ์ด๋ค์ฌ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค๋๋ค. ์ด๋ฌํ ๋ธ๋ผ์ฐ์ ์ ๊ด๋ จ๋ ๊ฐ์ฒด๋ค์ ์งํฉ์ ๋ธ๋ผ์ฐ์ ๊ฐ์ฒด ๋ชจ๋ธ ์ฆ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiYe3J%2FbtqQ0PapP6L%2FD6YRHXofcCFRl7O3AEOEqk%2Fimg.png)
์ฌ์ง๊ณผ ๊ฐ์ด ๋์ผํ ํด๋์ค์ ๋ํด์ ๋ค๋ฅด๊ฒ css ์์ฑ์ ํด์ฃผ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด ์์ 2๊ฐ์ ์ด๋ฏธ์ง๊ฐ ์๋๋ฐ 2๊ฐ ๋ชจ๋ ๋์ผํ ํ๊ทธ๋ก ์์ฑ๋ ๋ค ๋ฐ์ดํฐ ๊ฐ๋ง ๋ค๋ฅด๊ฒ ๋ฐ์์ต๋๋ค. ์ด๋ฏธ์ง A ์ด๋ฏธ์ง B ๋ง์ฝ class="background" ๋ผ๊ณ ํ ๋ $('.background').css("color", "red"); ํ๊ฒ ๋๋ฉด 2๊ฐ์ ์ด๋ฏธ์ง ๋ชจ๋ ํฐํธ๊ฐ ๋นจ๊ฐ์์ผ๋ก ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์ ๋ ์ฒซ๋ฒ์งธ ์ด๋ฏธ์ง์๋ง ๋นจ๊ฐ์ ํฐํธ๋ก ํ๊ณ ์ถ์ ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ ํด๋น ํ๊ทธ์ ์ ๊ทผํ๋ฉด ๋ฉ๋๋ค. crud.list.onComplete = function(result) { console.log(result); if(result.result) { var dataList = result.dat..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpr8YE%2FbtqUhAUKdJE%2FA62n2GYK0jjfpTGrJZamkk%2Fimg.jpg)
# ์๋ธ๋ฆฟ??!! ์๋ธ๋ฆฟ์ ์๋ฒ ์ชฝ์์ ์คํ๋๋ฉฐ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๊ฒ๋ ๋์์ฃผ๋ ์๋ฐ ํด๋์ค์ ๋๋ค. ์๋ธ๋ฆฟ์ ์๋ฐ ํด๋์ค์ด๋ฏ๋ก ์๋ฐ์ ์ผ๋ฐ์ ์ธ ํน์ง์ ๋ชจ๋ ๊ฐ์ง๊ณ ์์ต๋๋ค. ํ์ง๋ง ์๋ฐ์ ๋ฌ๋ฆฌ ์๋ธ๋ฆฟ์ ํฐ์บฃ๊ณผ ๊ฐ์ ์๋ธ๋ฆฟ ์ปจํ ์ด๋์์ ์คํ๋์ผ ํฉ๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ ์น ์๋ฒ์ ์์ฒญ์ ํ๋ฉด ์น ์๋ฒ๋ ๊ทธ ์์ฒญ์ ํฐ์บฃ๊ณผ ๊ฐ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ(WAS)์ ์์ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด WAS ๋ ๊ฐ ์์ฒญ์ ํด๋นํ๋ ์๋ธ๋ฆฟ์ ์คํํฉ๋๋ค. ๊ทธ ํ ์๋ธ๋ฆฟ์ ์์ฒญ์ ๋ํ ๊ธฐ๋ฅ์ ์ํํ ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ์ฌ ํด๋ผ์ธํธ์๊ฒ ์๋ตํ๊ฒ ๋ฉ๋๋ค. ์๋ธ๋ฆฟ์ ํน์ง ์๋ฒ์์ ์คํ๋๋ค. ์ ์ ์ธ ์น ํ๋ก๊ทธ๋จ์ ๋์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๊ฒ ํด์ค๋ค. ์ค๋ ๋ ๋ฐฉ์์ผ๋ก ์คํ๋๋ค. ์๋ฐ ํด๋์ค์ด๊ธฐ ๋๋ฌธ์ ์๋ฐ์ ํน์ง์ ๊ฐ๋๋ค. ์๋ธ๋ฆฟ ์ปจ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLJ9tY%2FbtqQUZ4Eks8%2FHEYYdrGa1tcH7aDHkyuOJK%2Fimg.png)
๋๋ถ๋ถ ์ฌ๋๋ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ (DBMS : DataBase Management System)์ ๊ตฌ๋ณํ์ง ์๊ณ ํํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ํตํฉํด์ ๋งํ๊ณค ํฉ๋๋ค. ํ์ง๋ง ์ ํํ ์ด ๋์ ๊ฐ๋ ์ ์์ฐํ ๋ค๋ฆ ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์ ๋๋ค. ์์ ์๋ Mysql ๋ ์ค๋ผํด, ๋ชฝ๊ณ ๋น๋ ๋ฑ์ด ์์ต๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์ 1960๋ ๋์ ๊ฐ๋ฐ๋์ด ํ์ฌ๊น์ง๋ ๊พธ์คํ ์งํ๋ฅผ ๊ฑฐ๋ญํ๊ณ ๋ฐ์ ๋๊ณ ์์ต๋๋ค. ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋ฐ๋ผ 4์ธ๋๋ก ๋๋์ ์์ต๋๋ค. 1์ธ๋์ธ ๋คํธ์ํฌ DBMS 2์ธ๋์ธ ๊ด๊ณ DBMS 3์ธ๋์ธ ๊ฐ์ฒด์งํฅ ๊ฐ์ฒด๊ด๊ณ DBMS 4์ธ๋์ธ NoSQL, NewSQL DBMS (๋ฐ์ดํฐ ๋ชจ๋ธ์ด๋? ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ๋ ๊ตฌ์กฐ๋ฅผ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkJPVK%2FbtqQIWGT8VY%2F3UcWjrKFkSei0fgASd6Wp1%2Fimg.png)
์๋ฐ์คํฌ๋ฆฝํธ๋ Java, Python ์ฒ๋ผ ๊ฐ์ฒด์งํฅ์ธ์ด(Object-Oriented Programming, OOP)์ ๋๋ค. ๊ฐ์ฒด์งํฅ์ด๋ ํ๋ก๊ทธ๋จ์ ๊ทธ์ ๋ฐ์ดํฐ์ ์ฒ๋ฆฌ๋ฐฉ๋ฒ์ผ๋ก ๋๋๋๊ฒ ์๋๊ณ , ํ๋ก๊ทธ๋จ์ ๋ค์์ "๊ฐ์ฒด"๋ก ๋ง๋ค๊ณ , ์ด๋ค์ด ์๋ก ์ํธ์์ฉ์ ํตํด ๋ง๋ค์ด์ง๋ ๋ฐฉ์์ ๋๋ค. ์๋ฅผ ๋ค์ด ์๋์ฐจ๊ฐ ์๋ค๊ณ ํ๋ฉด ์๋์ฐจ์ ๋ฐํด, ์์ง, ๋์ด ๋ฑ์ ๊ฐ์ฒด๋ผ๊ณ ํ ์ ์์ต๋๋ค. ์ด ๊ธ์ ํ๋กํ ํ์ ์ ๊ดํ ๊ธ ์ด๋ฏ๋ก ๊ฐ์ฒด ์งํฅ์ ๋ํด์ ์ด ์ ๋๋ง ์๊ณ ๊ฐ๊ฒ ์ต๋๋ค. ํ์ง๋ง ํด๋์ค๊ฐ ์กด์ฌํ๋ Java์๋ ๋ฌ๋ฆฌ ์๋ฐ์คํฌ๋ฆฝํธ(์ดํ JS)์๋ ํด๋์ค๋ผ๋ ๊ฐ๋ ์ด ์์ต๋๋ค. ๋์ JS์๋ ํ๋กํ ํ์ ์ด๋ผ๋ ๊ฐ๋ ์ด ์กด์ฌํฉ๋๋ค. ์ด ๋๋ฌธ์ JS๊ฐ ํ๋กํ ํ์ ๊ธฐ๋ฐ์ ๊ฐ์ฒด์งํฅ ์ธ์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ด์ ์ ๋๋ค. ECMA6์์ ํด๋์ค ๋ฌธ๋ฒ์ด ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBV7nv%2FbtqQss6RjAF%2FVKAPn2PnbfI5htgEHDwGbK%2Fimg.png)
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ฅ ์์ด์ ์ธ ๋ชฉ์ ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๊ฒ์ ๋๋ค. ๋ด๊ฐ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ธฐ ์ํด์ ๋จผ์ ์์ง ๋์์ด ๋๋ ๋ฐ์ดํฐ์ ์ ํ์ ํ์ ํ๊ณ ์์ด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ ํํ์ ๋ฐ๋ผ ์ ํ ๋ฐ์ดํฐ, ๋ฐ์ ํ ๋ฐ์ดํฐ, ๋น์ ํ ๋ฐ์ดํฐ๋ก ๋ถ๋ฅํ ์ ์์ต๋๋ค. ์ ํ ๋ฐ์ดํฐ ์ ํ๋ฐ์ดํฐ(structured data)๋ ์ด๋ฆ ๊ทธ๋๋ก ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ ์ ๋๋ค. ์ฆ ๋ฏธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ ํ์ฌ ์ ํด์ง ๊ตฌ์กฐ์ ๋ฐ๋ผ ์ ์ฅ๋๋ ๋ฐ์ดํฐ์ ๋๋ค. ํํ ๊ด๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ์ด ๋ด๊ณ ์๋ ๋ฐ์ดํฐ๋ค์ด ์ ํ๋ฐ์ดํฐ์ ๋๋ค. ๋ฐ์ ํ ๋ฐ์ดํฐ ๋ฐ์ ํ ๋ฐ์ดํฐ(semi-structured data)๋ ์ ํ ๋ฐ์ดํฐ์ฒ๋ผ ๊ตฌ์กฐ์ ๋ฐ๋ผ ์ ์ฅ๋์ง๋ง ๋ฐ์ดํฐ ์์ ๊ตฌ์กฐ์ ๋ํ ์ค๋ช ์ด ํจ๊ป ํฌํจ๋์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ฐ์ดํฐ ๋ด์ฉ์ ๋ํ ์ค๋ช , ์ฆ ๊ตฌ์กฐ๋ฅผ ํ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVQQ8V%2FbtqQlJht5xd%2Fme8uSyroMMxwoklVBTFJXK%2Fimg.jpg)
์ฐ๋ฆฌ๋ ํ๋์ฌํ์์ ๋ฐ์ดํฐ์ ์ ๋ณด๋ผ๋ ๋จ์ด๋ฅผ ๋ง์ด ์ฌ์ฉํ๊ณ ์ค์ ๋ก ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ํ๋์ฌํ์์ ๋ฐ์ดํฐ์ ์ ๋ณด๋ฅผ ์๋นํ ์ค์ํ ์์๋ก ์ทจ๊ธ๋๊ณ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ฐ์ดํฐ์ ์ ๋ณด๋ฅผ ๊ฐ์ ์๋ฏธ๋ก ๋ง์ด ์ฌ์ฉํ๊ณ ์๋๋ฐ, ๋ฐ์ดํฐ์ ์ ๋ณด๋ฅผ ์์ฐํ ๋ค๋ฆ ๋๋ค. ๋์ ์ ์๋ฅผ ์ดํด๋ณด๋ฉด, ๋ฐ์ดํฐ : ํ์ค ์ธ๊ณ์์ ๋จ์ํ ๊ด์ฐฐํ๊ฑฐ๋ ์ธก์ ํ์ฌ ์์งํ ์ฌ์ค์ด๋ ๊ฐ ์ ๋ณด : ๋ฐ์ดํฐ๋ฅผ ์์ฌ๊ฒฐ์ ์ ์ ์ฉํ๊ฒ ํ์ฉํ ์ ์๋๋ก ์ฒ๋ฆฌํ์ฌ ์ฒด๊ณ์ ์ผ๋ก ์กฐ์งํ ๊ฒฐ๊ณผ๋ฌผ ์ ๋๋ค. ์ฝ๊ฒ ๋น์ ํ์๋ฉด ๋ฐ์ดํฐ : ๋ชฉ์ฅ์์ ๋ง ์ง ์ฐ์ (์์ ) ์ ๋ณด : ๋ชฉ์ฅ์์ ์ง ์ฐ์ ๋ฅผ ๊ฐ๊ณตํ์ฌ ํฉ์ ๋ด์ ์ฐ์ ๋ผ๊ณ ๋ณผ์ ์์ต๋๋ค. ์ข์ ์ฐ์ ๋ฅผ ์ป์ผ๋ ค๋ฉด ํ์ง ์ข์ ์์ ๋ฅผ ํ๋ณดํด์ผํ๋ ๊ฒ์ฒ๋ผ, ๊ฐ์น ์๋ ์ ๋ณด๋ฅผ ์ป์ผ๋ ค๋ฉด ํ์ฌ ์ํฉ์ ์ ํํ ๊ด์ฐฐํ๊ณ ์ธก์ ํ์ฌ ์๋ฏธ์๋ ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbPC8oe%2FbtqQgzMGRr7%2FmfCbKFmWgc8VFLSI4GaOp1%2Fimg.png)
ํ์ฌ์ ์ธํด์ผ๋ก ์ ์ฌ๋ฅผ ํ๊ณ , ๋ํ๋๊ป์ ๊ณผ์ ํ๋๋ฅผ ์ฃผ์ จ์ต๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ฐ๋จํ ๊ณ์ฐ๊ธฐ๋ฅผ ๋ง๋๋ ๊ฒ์ด์์ต๋๋ค. ์ด๋ ต์ง ์๊ฒ ๊ตฌํ์ ํ์๊ณ , ๋ํ๋๊ป ๋ณด์ฌ๋๋ ธ์ต๋๋ค. ๊ณ์ฐ๊ธฐ ๊ธฐ๋ฅ ์์ฒด์๋ ๋ฌธ์ ๊ฐ ์ ํ์์์ผ๋.. ๊ณ์ฐ๊ธฐ๋ฅผ ๊ตฌํํ ์ฝ๋๋ฅผ ๋ณด์๊ณ ๋ ์ด๋ฐ ๋ง์ ํ์ จ์ต๋๋ค. ์์ง๋ ์ ํํ ๊ธฐ์ต๋ฉ๋๋ค. ์ฌ์ง์ด ๋งํฌ๊น์ง๋ ๊ธฐ์ต์ด ๋ฉ๋๋ค. "์ฝ๋์ ์ฒ ํ์ด ๋ด๊ฒจ ์์ง ์์" โป์ฒ์์ ์ ๊ฐ ๊ตฌํํ๋ ์ฝ๋์ ๋๋ค. ์ฝ๋๊ฐ ๋๋ฌด ๊ธธ์ด ๋งํฌ๋ก ๋์ฒดํฉ๋๋ค. ์ผํ๋ณด๋ฉด ๊ฐ๋ ์ฑ๋ ์๊ณ ๋๋ฆ๋๋ก ํจ์ํ๋ ์์ผ์ ๋ฌธ์ ๊ฐ ์์ด ๋ณด์ผ์ ์์ต๋๋ค. ํ์ง๋ง ๋ง์ฝ ๊ณ์ฐ๊ธฐ์ ๋๋จธ์ง๋ฅผ ๊ตฌํด์ฃผ๋ % ๊ธฐ๋ฅ์ ์ถ๊ฐํด์ฃผ๊ณ ์ถ๋ค๋ฉด ๊ณ์ฐ ๊ด๋ จํ ๋ก์ง์ผ๋ก ๋ค์ด๊ฐ์ ๋ด๋ถ๋ฅผ ๋ฏ์ด๊ณ ์ณ์ผ ํฉ๋๋ค. ๋ฌผ๋ก ๊ณ์ฐ๊ธฐ ๊ด๋ จ ์ฝ๋๋ ๋ณต์กํ๊ณ ๊ธธ์ง ์์์ ๋ฌธ์ ๊ฐ ๋์ง ์์ง๋ง ์ฌ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcejMuP%2FbtqP4mfObiY%2Fb77FEOdyE5hjKTkCE0yLTK%2Fimg.jpg)
Express๋ ๊ธฐ์กด Node.js ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ํ์ฅ์ฑ์ด ๋ง์ด ๋จ์ด์ง๋ค๊ณ ์๊ฐํ์ฌ ๋ง๋ค์ด์ง ์น ์๋ฒ ํ๋ ์์ํฌ์ ๋๋ค. Express๋ http ๋ชจ๋์ ์์ฒญ๊ณผ ์๋ต ๊ฐ์ฒด์ ์ถ๊ฐ ๊ธฐ๋ฅ๋ค์ ๋ถ์ฌํ์ต๋๋ค. ๋ ๋ผ์ฐํฐ๋ก ์ฝ๋๋ฅผ ๋ถ๋ฆฌํ๊ธฐ ์ฌ์ ์ ์ง๋ณด์ ๋ํ ์ฉ์ดํฉ๋๋ค. Express ์ธ์๋ koa๋ hapi ๊ฐ์ ์น ์๋ฒ ํ๋ ์์ํฌ๊ฐ ์์ง๋ง ๋ค์ ์ฌ์ง๊ณผ ๊ฐ์ด Express๊ฐ ์๋์ ์ผ๋ก ์ธ๊ธฐ๊ฐ ๋ง์ต๋๋ค. ๋ฌผ๋ก ์ฌ์ฉ์๊ฐ ๋ง๋ค๊ณ ํญ์ ์ข์๊ฑด ์๋์ง๋ง, ์ฌ์ฉ์๊ฐ ๋ง์ ๊ฒ์๋ ์ด์ ๊ฐ ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ๋ง์ ์๋ก ๋ฒ๊ทธ๊ฐ ์ ๊ณ , ๊ธฐ๋ฅ ์ถ๊ฐ๋ ์ ์ง๋ณด์๋ ํ๋ฐ์ด ๋๊ธฐ ๋๋ฌธ์ ๋๋ค. Express-generator๋ Express ํ๊ฒฝ์ ๊ฐ๋จํ๊ฒ ๊ตฌ์ถํด์ฃผ๋ npm์ ๋๋ค. ๋ฐ๋ผ์ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ Node.js ๊ฐ๋ฐ์ ํ ์ ์์ต๋๋ค...
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmkbhh%2FbtqP9rnnWdn%2FFgK896TZHyQESJoq8L450k%2Fimg.png)
bcrypt๋? ์น ํ์ด์ง๋ฅผ ๊ตฌํํ ๋ ๋ณด์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ผ๋ก ์ํ๋์ด์ผ ํ ์์์ ๋๋ค. ๋น๋ฐ๋ฒํธ๋ฅผ ํ ์คํธ ๊ทธ๋๋ก ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์ ์ฅํด ๊ด๋ฆฌํ๋ ๊ฒ์ ํด์ปค์๊ฒ ๋๋๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๋ ๊ฒ๊ณผ ๋ค๋ฆ ์์ต๋๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๊ณ ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํ ํ๋ ๊ฒ์ด bcrypt ๋ชจ๋์ ๋๋ค. bcrypt๋ ๋จ๋ฐฉํฅ ํด์ ํจ์๋ฅผ ์ด์ฉํ ๋ชจ๋๋ก์จ Salt ๋ผ๋ ๊ฐ๋ ์ ์ฌ์ฉํฉ๋๋ค. Salt ๋ผ๋ ๊ฐ๊ณผ ํด์๋ ๋น๋ฐ๋ฒํธ๋ฅผ ํฉ์ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ๊ฒ ๋๋๋ฐ ์ด๋ ๊ฒ ํ๋ฉด, ๋ง์ฝ "1234" ๊ฐ์ ๋น๋ฐ๋ฒํธ๋ฅผ ํด์ํจ์์ ๋ฃ์์๋ ํญ์ ๋ค๋ฅธ ๊ฐ์ Salt ๊ฐ๊ณผ ๋น๋ฐ๋ฒํธ๊ฐ ํฉ์ณ์ ํด์ปค๋ค์ด ๋น๋ฐ๋ฒํธ๋ฅผ ์ฐพ๋๋ฐ ์์ด ๋์ฑ ํ๋ค๊ฒ ๋ง๋ญ๋๋ค. ์ฌ์ฉ ๋ฐฉ๋ฒ npm i bcrypt๋ฅผ ์ํํฉ๋๋ค. const bcrypt = require('bcrypt'); ..