728x90
๋ฐ˜์‘ํ˜•

๊ฐœ๋ฐœ Code/์›น๊ฐœ๋ฐœ WebDev 9

[WebDev][Babel] Babel ์†Œ๊ฐœ: ์ตœ์‹  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰ํ•˜๊ธฐ

1. Babel์ด๋ž€?Babel์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ปดํŒŒ์ผ๋Ÿฌ(JavaScript Compiler) ๋กœ, ์ตœ์‹  ECMAScript(ES6+) ์ฝ”๋“œ๊ฐ€ ๊ตฌํ˜• ๋ธŒ๋ผ์šฐ์ €์—์„œ๋„ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๋„๋ก ๋ณ€ํ™˜ํ•ด์ฃผ๋Š” ๋„๊ตฌ๋‹ค.2. Babel์ด ํ•„์š”ํ•œ ์ด์œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊พธ์ค€ํžˆ ๋ฐœ์ „ํ•˜๋ฉฐ ์ƒˆ๋กœ์šด ๋ฌธ๋ฒ•(์˜ˆ: let, const, async/await, ํ™”์‚ดํ‘œ ํ•จ์ˆ˜ ๋“ฑ)์ด ์ถ”๊ฐ€๋จ. ํ•˜์ง€๋งŒ ๊ตฌํ˜• ๋ธŒ๋ผ์šฐ์ €๋Š” ์ตœ์‹  ๋ฌธ๋ฒ•์„ ์ง€์›ํ•˜์ง€ ์•Š์Œ. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด Babel์ด ํ•„์š”ํ•จ.Babel์˜ ์ฃผ์š” ์—ญํ• :โœ… ์ตœ์‹  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฌธ๋ฒ•์„ ๊ตฌํ˜• ๋ธŒ๋ผ์šฐ์ €์—์„œ๋„ ๋™์ž‘ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋ณ€ํ™˜โœ… JSX(React์—์„œ ์‚ฌ์šฉ) ๋ฐ TypeScript ์ฝ”๋“œ๋„ ๋ณ€ํ™˜ ๊ฐ€๋Šฅโœ… ์ฝ”๋“œ ์ตœ์ ํ™” ๋ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ํ™•์žฅ์„ ํ†ตํ•œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ฐœ์„ 3. Babel์˜ ํ•ต์‹ฌ ๊ฐœ๋…(1) ํŠธ๋žœ์ŠคํŒŒ์ผ๋ง(T..

[WebDev][Webpack] Webpack ์†Œ๊ฐœ: ํ˜„๋Œ€์ ์ธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฒˆ๋“ค๋Ÿฌ

1. Webpack์ด๋ž€?Webpack์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ(module bundler)๋‹ค. ์›น ๊ฐœ๋ฐœ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ, CSS, ์ด๋ฏธ์ง€ ๋“ฑ์„ ํ•˜๋‚˜์˜ ๋ฒˆ๋“ค ํŒŒ์ผ๋กœ ๋ฌถ์–ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.2. Webpack์ด ํ•„์š”ํ•œ ์ด์œ ์›น ๊ฐœ๋ฐœ์ด ์ ์  ๋ณต์žกํ•ด์ง€๋ฉด์„œ ๋‹ค์–‘ํ•œ ํŒŒ์ผ๊ณผ ๋ชจ๋“ˆ์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ด์•ผ ํ•˜๋Š” ํ•„์š”์„ฑ์ด ์ƒ๊น€. Webpack์„ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์žฅ์ ์ด ์žˆ์Œ.๋ชจ๋“ˆํ™” ์ง€์›: ES6+ ๋ชจ๋“ˆ, CommonJS, AMD ๋“ฑ์˜ ๋‹ค์–‘ํ•œ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์„ ์ง€์›ํ•จํŒŒ์ผ ํฌ๊ธฐ ์ตœ์ ํ™”: ์ฝ”๋“œ ์••์ถ•, ํŠธ๋ฆฌ ์‰์ดํ‚น(Tree Shaking) ๋“ฑ์„ ํ†ตํ•ด ์ตœ์ ํ™” ๊ฐ€๋Šฅ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ: HMR(Hot Module Replacement) ๊ธฐ๋Šฅ์œผ๋กœ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‹œ ๋น ๋ฅด๊ฒŒ ๋ฐ˜์˜๋จ์ž์› ๊ด€๋ฆฌ: CSS, ์ด๋ฏธ์ง€, ํฐํŠธ ๋“ฑ๋„ ๋ชจ..

[WebDev][App] ๋ฐœ๋ Œํƒ€์ธ ๊ธฐ๋… ๋ฐœ๋ Œํƒ€์ธ ์นด๋“œ ์›น์•ฑ ๊ตฌํ˜„

๋ฐœ๋ Œํƒ€์ธ ๋ฐ์ด๋•Œ ํ• ๋งŒํ•œ ๋„ˆ๋“œ๊ฐ™์€ ํ–‰๋™ ์ค‘ ํ• ๋งŒํ•œ๊ฒŒ ๋ญ๊ฐ€ ์žˆ์„๊นŒ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ HTML + CSS๋ฅผ ํ™œ์šฉํ•œ ๋ฐœ๋ Œํƒ€์ธ ์นด๋“œ ๋งŒ๋“ค๊ธฐ๋ฅผ ํ•˜๋ฉด ์ข‹๊ฒ ๋‹ค ์‹ถ์–ด์„œ  GPT์™€ ํˆฌ๋‹ฅํˆฌ๋‹ฅ ๋งŒ๋“ค์–ด ๋ณด์•˜๋‹ค. ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. โค๏ธ Happy Valentine's Day! Send  ๊ธฐ๋ณธ ๋ธŒ๋ผ์šฐ์ €๋กœ ์—ด๋ฉด ๋™์ž‘ํ•  ๊ฒƒ์ด๋‹ค. ์ด์ œ ์˜ˆ์˜๊ฒŒ ๊พธ๋ฏธ๋Š” ๊ฒƒ์€ ๋‹น์‹ ์˜ ๋ชซ.

[WebDev][Node.js] Setting Up a Node.js Environment and Building a Server with Express.js

1. Setting Up Node.js in VSCode1.1. Installing Node.jsDownload and install the LTS version of Node.js from the official Node.js website.After installation, open a terminal and verify that Node.js and npm are installed correctly:node -v # Check Node.js versionnpm -v # Check npm version  * For Linux users, you can install Node.js and npm using the following command:sudo apt-get install nodejs n..

[WebDev][Node.js] What is Node.js? Understanding the Basics and Key Features

1. What is Node.js?Node.js is an open-source, cross-platform JavaScript runtime environment built on the Chrome V8 JavaScript engine. Traditionally, JavaScript was only executed in web browsers, but with Node.js, JavaScript can now run on servers as well.2. Key Features of Node.js2.1. Single-Threaded Event LoopNode.js operates on a single-threaded model but uses an event loop and asynchronous I/..

[WebDev][Node.js] Node.js, Express, NoSQL(MongoDB)๋กœ CRUD API ๊ตฌ์ถ•ํ•˜๊ธฐ

2025.01.30 - [๊ฐœ๋ฐœ Code/์›น๊ฐœ๋ฐœ WebDev] - [WebDev][Node.js] Node.jsํ™˜๊ฒฝ ์„ค์ • ๋ฐ Express.js๋ฅผ ํ™œ์šฉํ•œ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ2025.01.31 - [๊ฐœ๋ฐœ Code/์›น๊ฐœ๋ฐœ WebDev] - [WebDev][Node.js] Node.js๋กœ REST API ๊ฐœ๋ฐœํ•˜๊ธฐ (CRUD)1. ๊ฐœ์š”์ด ๊ธ€์—์„œ๋Š” Node.js์™€ Express๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ธ MongoDB์™€ ์—ฐ๋™ํ•˜์—ฌ CRUD(Create, Read, Update, Delete) ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹ค๋ฃฌ๋‹ค.์‹ค์Šต์„ ํ†ตํ•ด REST API๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ณผ์ •์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋‹ค.2. ํ”„๋กœ์ ํŠธ ์„ค์ •2.1. ํ•„์ˆ˜ ํŒจํ‚ค์ง€ ์„ค์น˜์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๊ณ  VSCode์—์„œ ํ•ด๋‹น ํด๋”๋ฅผ ์—ถ:mkdi..

[WebDev][Node.js] Node.js๋กœ REST API ๊ฐœ๋ฐœํ•˜๊ธฐ (CRUD)

2025.01.30 - [๊ฐœ๋ฐœ Code/์›น๊ฐœ๋ฐœ WebDev] - [WebDev][Node.js] Node.jsํ™˜๊ฒฝ ์„ค์ • ๋ฐ Express.js๋ฅผ ํ™œ์šฉํ•œ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ1. REST API๋ž€?REST(Representational State Transfer) API๋Š” HTTP ํ”„๋กœํ† ์ฝœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐฉ์‹์ด๋‹ค.CRUD(Create, Read, Update, Delete) ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.2. Express.js๋ฅผ ํ™œ์šฉํ•œ REST API ๊ตฌ์ถ•2.1. ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐํ™” ๋ฐ ํ•„์ˆ˜ ํŒจํ‚ค์ง€ ์„ค์น˜์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๊ณ  VSCode์—์„œ ํ•ด๋‹น ํด๋”๋กœ ์ด๋™ํ•จ:mkdir my-rest-apicd my-rest-apinpm์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•จ:npm init..

[WebDev][Node.js] Node.jsํ™˜๊ฒฝ ์„ค์ • ๋ฐ Express.js๋ฅผ ํ™œ์šฉํ•œ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ

1. VSCode์—์„œ Node.js ํ™˜๊ฒฝ ์„ค์ •1.1. Node.js ์„ค์น˜Node.js ๊ณต์‹ ์›น์‚ฌ์ดํŠธ์—์„œ LTS ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์„ค์น˜ํ•จ์„ค์น˜ ํ›„ ํ„ฐ๋ฏธ๋„์—์„œ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ •์ƒ์ ์œผ๋กœ ์„ค์น˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•จ:node -v # Node.js ๋ฒ„์ „ ํ™•์ธnpm -v # npm ๋ฒ„์ „ ํ™•์ธ     * linux์˜ ๊ฒฝ์šฐ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์‰ฝ๊ฒŒ ์„ค์น˜๊ฐ€ ๊ฐ€๋Šฅํ•จsudo apt-get install nodejs npm -y1.2. Visual Studio Code ์„ค์ •VSCode๋ฅผ ์„ค์น˜ํ•จBabel Javascript, Auto Close Tag, Auto Rename Tag, Better Comments, Code Runner ๋“ฑ์˜ ํ™•์žฅ(extensions) ์„ค์น˜๋ฅผ ํ†ตํ•ด ๋”์šฑ ํŽธํ•œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์ค€๋น„(๊ฒ€์ƒ‰์„ ํ†ตํ•ด ์ž..

[WebDev][Node.js] Node.js๋ž€? ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ํŠน์ง• ์ •๋ฆฌ

1. Node.js๋ž€?Node.js๋Š” Chrome V8 JavaScript ์—”์ง„ ์œ„์—์„œ ๋™์ž‘ํ•˜๋Š” ์˜คํ”ˆ ์†Œ์Šค, ํฌ๋กœ์Šค ํ”Œ๋žซํผ JavaScript ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์ž„๊ธฐ์กด์—๋Š” JavaScript๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์—์„œ๋งŒ ์‹คํ–‰๋˜์—ˆ์ง€๋งŒ, Node.js๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„œ๋ฒ„์—์„œ๋„ JavaScript๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ2. Node.js์˜ ํŠน์ง•2.1. ๋‹จ์ผ ์Šค๋ ˆ๋“œ ์ด๋ฒคํŠธ ๋ฃจํ”„ ๊ธฐ๋ฐ˜Node.js๋Š” ๋‹จ์ผ ์Šค๋ ˆ๋“œ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜์ง€๋งŒ, ์ด๋ฒคํŠธ ๋ฃจํ”„์™€ ๋น„๋™๊ธฐ I/O ์ฒ˜๋ฆฌ๋ฅผ ํ†ตํ•ด ๋†’์€ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•จ๋ธ”๋กœํ‚น(Blocking) ๋ฐฉ์‹์ด ์•„๋‹Œ ๋…ผ๋ธ”๋กœํ‚น(Non-blocking) ๋ฐฉ์‹์œผ๋กœ ์ž…์ถœ๋ ฅ์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋งŽ์€ ์š”์ฒญ์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ2.2. ๋น„๋™๊ธฐ I/ONode.js๋Š” ์ฝœ๋ฐฑ(callback), ํ”„๋กœ๋ฏธ์Šค(Promise), async/await ๊ฐ™์€ ๋น„๋™๊ธฐ..

728x90
๋ฐ˜์‘ํ˜•