ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ™˜๊ฒฝ

๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์™€ Node.js๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ•ด์„ํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์„ ๋‚ด์žฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ข…๋ฅ˜ ๋ชฉ์ 
๋ธŒ๋ผ์šฐ์ € HTML, CSS, JS๋ฅผ ์‹คํ–‰ํ•ด ์›นํŽ˜์ด์ง€๋ฅผ ๋ธŒ๋ผ์šฐ์ € ํ™”๋ฉด์— ๋ Œ๋”๋ง ํ•˜๋Š”๊ฒƒ
Node.js ๋ธŒ๋ผ์šฐ์ € ์™ธ๋ถ€์—์„œ JS ์‹คํ–‰ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ

๋”ฐ๋ผ์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ฝ”์–ด์ธ ECMAScript ์ด์™ธ์— ์ถ”๊ฐ€๋กœ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค์€ ์„œ๋กœ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋ธŒ๋ผ์šฐ์ €๋Š” *DOM API๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•˜๊ณ , Node.js๋Š” *ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ณธ ์ œ๊ณตํ•˜์ง€๋งŒ ์ด๋Š” ์„œ๋กœ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์ฒ˜๋Ÿผ ๋ธŒ๋ผ์šฐ์ €๋Š” ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ Web API๋ฅผ ์ง€์›ํ•˜๊ณ , Node.js๋Š” ๊ณ ์œ ์˜ API๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

 

*DOM API : ํŒŒ์‹ฑ๋œ HTML ์š”์†Œ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์กฐ์ž‘ํ•˜๋Š” ๊ธฐ๋Šฅ์œผ๋กœ Node.js์˜ ์„œ๋ฒ„ํ™˜๊ฒฝ์€ DOM API๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์›น ํฌ๋กค๋ง์„ ์œ„ํ•ด cheerio ๊ฐ™์€ DOM ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉ

 

*ํŒŒ์ผ ์‹œ์Šคํ…œ : ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๋ธŒ๋ผ์šฐ์ €๋Š” ํŒŒ์ผ์„ ์ฝ๊ธฐ ์œ„ํ•ด Web API์ธ FileReader๋ฅผ ์‚ฌ์šฉ

 

์›น ๋ธŒ๋ผ์šฐ์ €

๋‹ค์–‘ํ•œ ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์žˆ์ง€๋งŒ, ๊ตฌ๊ธ€ ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ 65.47%๋กœ ๊ฐ€์žฅ ๋†’์€ ์ ์œ ์œจ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ตฌ๊ธ€ ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋Šฅ๋“ค์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

๊ฐœ๋ฐœ์ž ๋„๊ตฌ

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ํ•„์ˆ˜์ ์ธ ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ๋กœ, ๋ธŒ๋ผ์šฐ์ €์— ๊ธฐ๋ณธ ๋‚ด์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ์—ฌ๋Š” ๋ฒ•

ํŒจ๋„ ์„ค๋ช…
Elements ๋กœ๋”ฉ๋œ ์›นํŽ˜์ด์ง€์˜ DOM๊ณผ CSS๋ฅผ ํŽธ์ง‘ํ•ด์„œ ๋ Œ๋”๋ง๋œ ๋ทฐ๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅ
Console ๋กœ๋”ฉ๋œ ์›นํŽ˜์ด์ง€์˜ ์—๋Ÿฌ๋ฅผ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์†Œ์Šค์ฝ”๋“œ์— ์ž‘์„ฑํ•œ console.log()์˜ ์‹คํ–‰๊ฒฐ๊ณผ๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅ
Sources ๋กœ๋”ฉ๋œ ์›นํŽ˜์ด์ง€์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ๋””๋ฒ„๊น… ๊ฐ€๋Šฅ
Network ๋กœ๋”ฉ๋œ ์›นํŽ˜์ด์ง€์— ๊ด€๋ จ๋œ ๋„คํŠธ์›Œํฌ ์š”์ฒญ์ •๋ณด์™€ ์„ฑ๋Šฅ์„ ํ™•์ธ ๊ฐ€๋Šฅ
Application ์›น ์Šคํ† ๋ฆฌ์ง€, *์„ธ์…˜, *์ฟ ํ‚ค๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ

*์„ธ์…˜, *์ฟ ํ‚ค ์— ๋Œ€ํ•œ ๋‚ด์šฉ์„ ์•Œ์•„๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜์˜ ๋งํฌ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

https://j-su2.tistory.com/42?category=1016208 

 

[๋„คํŠธ์›Œํฌ] ์ฟ ํ‚ค(Cookie), ์„ธ์…˜(Session)์ด๋ž€?

Web๊ฐœ๋ฐœ์„ ํ•˜๋‹ค๋ณด๋ฉด ํ•„์ˆ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š” ์›น ํ†ต์‹ ์„ ์œ„ํ•œ ์ €์žฅ์†Œ์ธ ์ฟ ํ‚ค์™€ ์„ธ์…˜์„ ๋งˆ์ฃผ์น˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์šฐ์„  ์ด๋Ÿฌํ•œ ์ €์žฅ์†Œ๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋ฅผ ์•Œ๊ธฐ์œ„ํ•ด HTTP์˜ ํŠน์ง•์„ ์•Œ์•„์•ผํ•ฉ๋‹ˆ๋‹ค. **HTTP์™€ HTTPS

j-su2.tistory.com

 

์ฝ˜์†”

๊ฐœ๋ฐœ์ž ๋„๊ตฌ์˜ Console ํŒจ๋„์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ์—์„œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„๋•Œ ๊ฐ€์žฅ ์šฐ์„ ์ ์œผ๋กœ ์‚ดํŽด๋ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๊ตฌํ˜„ ๋‹จ๊ณ„์—์„œ๋Š” ์ฝ˜์†”์„ ์—ด์–ด๋‘” ์ƒํƒœ๋กœ ๊ฐœ๋ฐœํ•˜์—ฌ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜๋ฉฐ ๊ฐœ๋ฐœํ•˜๋Š”๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ๊ตฌํ˜„ ๋‹จ๊ณ„์—์„œ ๋””๋ฒ„๊น…์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ ๋„ ๊ฐ„ํŽธํ•˜๊ฒŒ ์ฝ”๋“œ์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๋ฉฐ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋ธŒ๋ผ์šฐ์ €๋Š” HTML ํŒŒ์ผ์„ ์—…๋กœ๋“œ ํ•˜๋ฉด scriptํƒœ๊ทธ์— ํฌํ•จ๋œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ์— ํฌํ•จ๋œ console.log()์˜ ๊ฒฐ๊ณผ๋ฅผ ConsoleํŒจ๋„์— ์ถœ๋ ฅํ•ด์ค๋‹ˆ๋‹ค.

 

Node.js

ํ”„๋กœ์ ํŠธ์˜ ๊ทœ๋ชจ๊ฐ€ ์ปค์ง์— ๋”ฐ๋ผ React, Angular, Lodash ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋„์ž…ํ•˜๊ฑฐ๋‚˜ Babel, Webpack, ESLint ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด Node.js ์™€ *npm์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

Node.js ์„ค์น˜ ๋งํฌ : https://nodejs.org/en/

 

Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

*npm : ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €. Node.js์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“ˆ๋“ค์„ ํŒจํ‚ค์ง€ํ™”ํ•ด์„œ ๋ชจ์•„๋‘” ์ €์žฅ์†Œ ์—ญํ• ๊ณผ ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ CLI๋ฅผ ์ œ๊ณต

 

Node.js REPL(Read Eval Print Loop)

๊ฐ„๋‹จํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ด ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

REPL

ํ•˜์ง€๋งŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋‹จ๊ณ„์—์„œ๋Š” ์ฃผ๋กœ VS Code๋ผ๋Š” ์ฝ”๋“œ ์—๋””ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์—๋””ํ„ฐ๋ฅผ ์ด์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์ฝ”๋“œ ์ž๋™ ์™„์„ฑ, ๋ฌธ๋ฒ• ์˜ค๋ฅ˜ ๊ฐ์ง€, ๋””๋ฒ„๊น…, Git ์—ฐ๋™ ๋“ฑ ํŽธ๋ฆฌํ•œ ๊ธฐ๋Šฅ๋“ค์„ ํ™œ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 

 

VS Code ์„ค์น˜ ๋งํฌ : https://code.visualstudio.com/

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

 

 

[์ถœ์ฒ˜] ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive

https://wikibook.co.kr/mjs/

 

๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive: ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ๋™์ž‘ ์›๋ฆฌ

269๊ฐœ์˜ ๊ทธ๋ฆผ๊ณผ ์›๋ฆฌ๋ฅผ ํŒŒํ—ค์น˜๋Š” ์„ค๋ช…์œผ๋กœ ‘์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ๋™์ž‘ ์›๋ฆฌ’๋ฅผ ์ดํ•ดํ•˜์ž! ์›นํŽ˜์ด์ง€์˜ ๋‹จ์ˆœํ•œ ๋ณด์กฐ ๊ธฐ๋Šฅ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ œํ•œ์ ์ธ ์šฉ๋„๋กœ ํƒœ์–ด๋‚œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ณผ๋„

wikibook.co.kr