๋ฐ˜์‘ํ˜•

๐ŸŸฉ Frontend-HTML & CSS & +JS 42

React ์ปดํฌ๋„ŒํŠธ ์กฐ๊ฑด๋ถ€๋ Œ๋”๋ง+๊ธฐ๋ณธ์ƒํƒœ๊ฐ’ ์ง€์ • props (์‚ผํ•ญ์—ฐ์‚ฐ์ž, ํŠน๋ณ„ํ•œ๊ฑฐ๋ฉด โ˜…์„ ์ฑ„์šด๊ฒƒ์œผ๋กœ ํ‘œ๊ธฐ)

| App.jsimport React from "react";import Wrapper from "./component/Wrapper";import Hello from "./component/Hello";import "./App.css";function App() { /* ๊ฐ์ฒดํ˜•์œผ๋กœ ํ˜„์žฌ ์ปดํฌ๋„ŒํŠธ์—์„œ ์Šคํƒ€์ผ์„ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ• */ const style = { backgroundColor: "skyblue", color: "white", fontSize: 40, padding: "1rem", }; const name = "hello2"; return ( {/* css๋ฅผ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• : className ์†์„ฑ์— ์ ์šฉ */} {/* ์ปดํฌ๋„ŒํŠธ์•ˆ..

React ์ปดํฌ๋„ŒํŠธ ์•ˆ์— ์ž์‹์š”์†Œ ์ปดํฌ๋„ŒํŠธ ๋„ฃ๊ธฐ (wrapper ์•ˆ์— ๋‹ค๋ฅธ div๋„ฃ๊ธฐ)

App.js์—์„œ Wrapper ๋ผ๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ์“ฐ๋‹ค๊ฐ€,Wrapper์•ˆ์— ์ƒˆ๋กœ์šด ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด๋ผ๋ฉด,(์›๋ž˜ ์ปดํฌ๋„ŒํŠธ ์•ˆ์— ํƒœ๊ทธ๋ฅผ ์ถ”๊ฐ€ ํ•  ์ˆ˜์—†์Œใ…‡) ๊ธฐ์กด Wrapper.jsx์•ˆ์— ์ฝ”๋“œ(div,p ๋“ฑ๋“ฑ) ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜์ง€๋งŒ,Wrapper.jsx์— children ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จhtml ์ฒ˜๋Ÿผ App.js์— ์ž์‹์š”์†Œ๋ฅผ ๊ทธ๋Œ€๋กœ ๋„ฃ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋จ   | Wrapper.jsx ์ฝ”๋“œimport React from "react";function Wrapper({ children }) { return( {children} );}export default Wrapper; Wrapper ์— ์ž์‹์š”์†Œ๋กœ ๋“ค์–ด๊ฐˆ children ์„ ์ง€์ •ํ•ด์ฃผ๊ณ ,App.js์—์„œ html ์—์„œ div,p๋“ฑ๋“ฑ์„ ์ž…๋ ฅํ•˜๋“ฏ ์ž‘์„ฑํ•จ  ..

React (const๋กœ ์Šคํƒ€์ผ ์ง€์ •) ๊ฐ์ฒดํ˜•์œผ๋กœ ํ˜„์žฌ ์ปดํฌ๋„ŒํŠธ ์•ˆ ์Šคํƒ€์ผ์ ์šฉ

App.jsimport React from "react";import Wrapper from "./component/Wrapper";import Hello from "./component/Hello";import "./App.css";function App() { /* ๊ฐ์ฒดํ˜•์œผ๋กœ ํ˜„์žฌ ์ปดํฌ๋„ŒํŠธ์—์„œ ์Šคํƒ€์ผ์„ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ• */ const style = { backgroundColor: "skyblue", color: "white", fontSize: 40, padding: "1rem", }; const name = "hello2"; return ( {/* css๋ฅผ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• : className ์†์„ฑ์— ์ ์šฉ */} {/* ์ปดํฌ๋„ŒํŠธ์•ˆ์— ..

[readFile/writeFile] ๋น„๋™๊ธฐ,๋™๊ธฐ์‹์œผ๋กœ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ(textํŒŒ์ผ ๋‚ด์šฉ์ฝ๊ณ , text ํŒŒ์ผ ๋‚ด์šฉ ์“ฐ๊ณ  ๋งŒ๋“ค๊ธฐ)

[FileSystem ๋ชจ๋“ˆ] ํŒŒ์ผ์ฒ˜๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“ˆ, node.js์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•˜๊ณ  ๊ธฐ์ดˆ๊ฐ€ ๋˜๋Š” ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค.  [์‚ฌ์šฉ ๋ฉ”์†Œ๋“œ ์ •๋ฆฌ] - readFile() : ํŒŒ์ผ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฝ์Šต๋‹ˆ๋‹ค. - readFileSync() : ํŒŒ์ผ์„ ๋™๊ธฐ์ ์œผ๋กœ ์ฝ์Šต๋‹ˆ๋‹ค. - writeFile() : ํŒŒ์ผ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์”๋‹ˆ๋‹ค. - writeFileSync() : ํŒŒ์ผ์„ ๋™๊ธฐ์ ์œผ๋กœ ์”๋‹ˆ๋‹ค. [๋™๊ธฐ / ๋น„๋™๊ธฐ์‹]๋™๊ธฐ์‹ : ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•˜๋Š” ์ƒํƒœ์—์„œ ์™„์ „ํžˆ ํ•ด๋‹น ๋‚ด์šฉ์„ ๋๋‚ด๊ณ  ๋‹ค์Œ์œผ๋กœ ์ œ์–ด๋ฅผ ๋„˜๊ธฐ๋Š” ๋ฐฉ์‹๋น„๋™๊ธฐ์‹ : ๋™์ž‘์ด ๋๋‚˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ๋„ ์ œ์–ด๊ถŒ์„ ๋„˜๊ธด ํ›„ ํ”„๋กœ๊ทธ๋žจ์„ ๊ณ„์† ์ง„ํ–‰ (์‹ค๋ฌด,node js์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ)https://www.youtube.com/watch?v=7woGFlMhSgk&ab_channel=%EC%8..

Node.js ๋ฉ”์†Œ๋“œ ๋ชจ๋“ˆ ๋“ฑ ๊ธฐ์ดˆ์ง€์‹ ( NPM ๊ธฐ๋ณธ ์„ธํŒ… / HTTP ๋ชจ๋“ˆ / Express ๋ชจ๋“ˆ / MIME ํƒ€์ž…)

Node.js๋ž€?Node.js๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์„œ๋ฒ„ ์ธก ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋Ÿฐํƒ€์ž„์œผ๋กœ, ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.Node.js ์ฃผ์š” ํŠน์ง•์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ™˜๊ฒฝGoogle V8 JavaScript ์—”์ง„์œผ๋กœ ๊ตฌ๋™๋จ.์„œ๋ฒ„์—์„œ๋„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ.์›น ์„œ๋ฒ„ ๋‚ด์žฅApache, Tomcat ๊ฐ™์€ ๋ณ„๋„์˜ ์›น ์„œ๋ฒ„ ์—†์ด ์ž์ฒด์ ์œผ๋กœ ์„œ๋ฒ„ ์—ญํ•  ๊ฐ€๋Šฅ.HTTP ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•ด ๊ฐ„๋‹จํžˆ ์„œ๋ฒ„ ๊ตฌ์ถ• ๊ฐ€๋Šฅ.NPM (Node Package Manager)Node.js์— ํฌํ•จ๋œ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž.๋‹ค์–‘ํ•œ ๋ชจ๋“ˆ ์„ค์น˜ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ์— ์‚ฌ์šฉ.Node.js ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ ๋ช…๋ น์–ดNode.js ๋‹ค์šด๋กœ๋“œ: Node.js ๊ณต์‹ ์‚ฌ์ดํŠธ์—์„œ LTS ๋ฒ„์ „ ๋‹ค์šด๋กœ๋“œ.๋ฒ„์ „ ํ™•์ธ:node -v (Node.js ๋ฒ„์ „ ํ™•์ธ)npm -v..

Node.js ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐํ™” ๋ฐ package.json๋งŒ๋“ค๊ณ  ์—ด์–ด๋ณด๊ธฐ

1. ํ„ฐ๋ฏธ๋„ ์ฐฝ์„ ์—ด๊ณ  (ctrl + j) ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•จ-   cd ํŒŒ์ผ๋ช… ํ•˜๊ฑฐ๋‚˜  cd.. ๋ฅผ ํ†ตํ•ด ์ƒ์œ„ํด๋”๋กœ ์ด๋™ ํ›„ cdํŒŒ์ผ๋ช…ํ•จ 2. npm init ๋กœ ์˜ต์…˜์„ ์ง์ ‘์ œ๊ณตํ•˜์—ฌ jsonํŒŒ์ผ์„ ๋งŒ๋“ค๊ฑฐ๋‚˜,npm init -y๋กœ ๊ธฐ๋ณธ๊ฐ’ ๊ทธ๋Œ€๋กœ ๋ฐ”๋กœ ์ƒ์„ฑํ•จ 3. about.js ๋ผ๋Š” ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋„ฃ์Œconst http = require("http");const hostname = "127.0.0.1";const port = 3001;const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader("Content-Type", "text/plain"); res.end("Hello World");});ser..

2024 4ํšŒ์ฐจ ์›น ๋””์ž์ธ ๊ธฐ๋Šฅ์‚ฌ ์‹ค๊ธฐ ๋Œ€๊ตฌ ํ›„๊ธฐ/๊ณต๋ถ€๋ฒ•/์‰ฌ์šด ์ œ์ด์ฟผ๋ฆฌ (์—๋ฐ‹ ์„ค์น˜ ๋ผ ์žˆ์—ˆ์Œ!)

์‹œํ—˜์€ ์•„์ฃผ ์ž˜ ์น˜๊ณ  ์˜จ๊ฒƒ๊ฐ™์Šต๋‹ˆ๋‹คํ›„๊ธฐ๋Š” ์•„์ฃผ ๊ฐ„๋žตํ•˜๊ฒŒ ์ •๋ฆฌํ•˜์—ฌ ์ ๊ฒ ์Šต๋‹ˆ๋‹น! ๐Ÿ“Œ์‹œํ—˜์žฅ์†Œ๋Œ€๊ตฌ ๊ณ„๋ช…๋Œ€ํ•™๊ต  (6์‹ค์˜ 1๋ฒˆ์ž๋ฆฌ ์˜€์Šต๋‹ˆ๋‹ค)  ๐Ÿ“Œ์‚ฌ์šฉํ”„๋กœ๊ทธ๋žจ  (์ผ๋Ÿฌ์ŠคํŠธ๋ผ๋˜๊ฐ€ ๋‹ค๋ฅธ๊ฒƒ๋„ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค๋งŒ ๊ตณ์ด ์•ˆ์จ๋„ ๋  ๋‚œ์ด๋„)ํฌํ† ์ƒต,VScode * ์ ์ง€ ์•Š์€ ๋ถ„๋“ค์ด emmet ๊ธฐ๋Šฅ์ด ์—†์„๊นŒ๋ด.. ์ž๋™์™„์„ฑ์ด ์•ˆ๋ ๊นŒ๋ด.. !tab ๋ˆŒ๋ €์„๋•Œ ๋‚˜์˜ค๋Š” ๊ธฐ๋ณธํผ๋“ค์„ ์™ธ์›Œ๊ฐ€์‹œ๋˜๋ฐ ์ œ๊ฐ€ ์นœ ์žฅ์†Œ์—์„œ๋Š” ๋ชจ๋‘ ์ž˜ ๋™์ž‘ํ–ˆ๋„ค์š”! ๐Ÿ“Œ ์‹œํ—˜๋ฌธ์ œ ์ฃผ์ œ ์ฒ ๊ธธ๋งˆ์„ *๊ณต๊ฐœ๋ฌธ์ œ์™€ ๋˜‘๊ฐ™์ด! ๋‚˜์™”์Šต๋‹ˆ๋‹ค  ๐Ÿ“Œ์‹œํ—˜์ง„ํ–‰ ๊ณผ์ •1. 8์‹œ 30๋ถ„(์‹œํ—˜ ์‹œ์ž‘์‹œ๊ฐ„)์— ์ž…์‹ค๊ฐ€๋Šฅ2. ์ขŒ์„๋ฒˆํ˜ธ ๋ฝ‘๊ธฐ (๋น„๋ฒˆํ˜ธ ํด๋”๋ช…์ด ์ด๋ ‡๊ฒŒ ์ •ํ•ด์ง‘๋‹ˆ๋‹ค)3. ํœด๋Œ€ํฐ ๋ฐ ์›Œ์น˜๋“ฑ์˜ ์ „์ž๊ธฐ๊ธฐ ๋ฐ˜๋‚ฉ (PASS๋กœ ์‹ ๋ถ„์ฆ์ธ์ฆ ํ•  ๋ถ„๋“ค์€ ์ด ๊ณผ์ •์—์„œ ์ธ์ฆ)4. ์‹œํ—˜๋ฌธ์ œ ๋ฐฐ๋ถ€ ํ›„, ์„ค๋ช…๋“ฃ๊ธฐ5. 9์‹œ์ฏค์— ..

Node.js ๋ฐ TypeScript ๊ธฐ์ดˆ ๊ฐ€์ด๋“œ

1. Node.js ๊ฐœ์š”Node.js๋Š” ์„œ๋ฒ„ ์‚ฌ์ด๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™˜๊ฒฝ์ด๋‹ค.Google V8 ์—”์ง„์„ ์‚ฌ์šฉํ•ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ๋น ๋ฅด๊ฒŒ ์‹คํ–‰ํ•œ๋‹ค.์›น ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด(์˜ˆ: Apache, Tomcat)๊ฐ€ ํ•„์š” ์—†์ด ๋‚ด์žฅ ์›น ์„œ๋ฒ„ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.**NPM(Node Package Manager)**์œผ๋กœ ๋‹ค์–‘ํ•œ ํŒจํ‚ค์ง€์™€ ๋ชจ๋“ˆ์„ ๊ด€๋ฆฌํ•œ๋‹ค.2. ๋ช…๋ น์–ด ์ •๋ฆฌ๋„์Šค ๋ช…๋ น์–ดcd / : ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์ด๋™cd ํด๋”๊ฒฝ๋กœ : ์›ํ•˜๋Š” ํด๋”๋กœ ์ด๋™cd .. : ์ƒ์œ„ ํด๋”๋กœ ์ด๋™md ํด๋”๋ช… : ํด๋” ์ƒ์„ฑ 3. TypeScript ๊ฐœ์š”2012๋…„ Anders Hejlsberg๊ฐ€ ์‹œ์ž‘ํ•œ ์˜คํ”ˆ ์†Œ์Šค ์–ธ์–ด.JavaScript์˜ Superset์œผ๋กœ, JavaScript๋กœ ๋ณ€ํ™˜๋˜์–ด ์‹คํ–‰๋œ๋‹ค.๊ฐ•๋ ฅํ•œ ํ˜•์‹ ์ง€์ • ๊ธฐ๋Šฅ๊ณผ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ..

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ์ดˆ ์ •๋ฆฌ ๋ฌธ์ œ ๋ฐ ํ’€์ด

[01]์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํŠน์ง•์œผ๋กœ ์•„๋‹Œ ๊ฒƒ์€ 1 ์›น์˜ ๋™์ž‘(๋™์ ) ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์–ธ์–ด 2 ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ž‘(๋‹จ, node.js๋Š” ์„œ๋ฒ„์—์„œ ๋™์ž‘) 3 html๋ฌธ์„œ ๋‚ด์—์„œ  ~  ํƒœ๊ทธ ์•ˆ์— ์ž‘์„ฑ 4 ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ณ„ํ•œ๋‹ค 5 ๊ฐ์ฒด ๊ธฐ๋ฐ˜์˜ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด 6 ์›น ๋ธŒ๋ผ์šฐ์ € ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ๋‚ด์žฅ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅ ์ •๋‹ต:- ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ณ„         - ์›น ๋ธŒ๋ผ์šฐ์ € ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ๋‚ด์žฅ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅ [02]๋ณ€์ˆ˜(Variable)์˜ ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•˜๊ธฐ ์ •๋‹ต: ๋ณ€์ˆ˜๋ž€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.  [03]์ƒ์ˆ˜(constant)์˜ ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•˜๊ธฐ ์ •๋‹ต: ํ•œ๋ฒˆ ์„ ์–ธ๋œ ์ƒ์ˆ˜๋Š” ๋‹ค์‹œ ์žฌ์ •์˜ ํ•  ์ˆ˜ ์—†์œผ๋ฉฐ, ๊ฐ’๋„ ์žฌํ• ๋‹น ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. [04]์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋ž€..

5. ๋ฐฐ์—ด ๊ฐ์ฒด์˜ ๋ฉ”์†Œ๋“œ (push,pop,shift๋“ฑ)

๐Ÿ“Œ ๋ฐฐ์—ด ๊ฐ์ฒด์˜ ๋ฉ”์†Œ๋“œ- push(): ๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ - pop(): ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์ฃผ์†Œ์— ์žˆ๋Š” ๊ฐ’์„ ์ œ๊ฑฐ  - shift(): ๋ฐฐ์—ด์˜ ์ฒซ๋ฒˆ์งธ ์ฃผ์†Œ์— ์žˆ๋Š” ๊ฐ’์„ ์ œ๊ฑฐ  - concat() : ๋‘ ๊ฐœ์˜ ๋ฐฐ์—ด์„ ํ•ฉ์นจ - join() : ๋ฐฐ์—ด ์š”์†Œ ์‚ฌ์ด์— ์›ํ•˜๋Š” ๋ฌธ์ž๋ฅผ ์‚ฝ์ž…  - reverse() : ๋ฐฐ์—ด์„ ์—ญ์ˆœ์œผ๋กœ ์žฌ๋ฐฐ์น˜ - sort() : ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ  | ์˜ˆ์‹œ์ฝ”๋“œ  | ๊ฒฐ๊ณผ

๋ฐ˜์‘ํ˜•