์ „์ฒด ๊ธ€

๊ฐœ๋ฐœ์ผ์ง€ ๋ฐ ์ •๋ณด ๊ณต์œ 
์ฐธ๊ณ ์‚ฌ์ดํŠธ • React ๊ณต์‹ ๋ฌธ์„œ - useRef ๐Ÿชฃ useRef ๋ Œ๋”๋ง์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฐ’์„ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” React Hook์ด๋‹ค. useRef๋Š” .current ํ”„๋กœํผํ‹ฐ๋กœ ์ „๋‹ฌ๋œ ์ธ์ž(initialValue)๋กœ ์ดˆ๊ธฐํ™”๋œ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ref ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋ฐ˜ํ™˜๋œ ๊ฐ์ฒด๋Š” ์ปดํฌ๋„ŒํŠธ์˜ ์ „ ์ƒ์• ์ฃผ๊ธฐ๋ฅผ ํ†ตํ•ด ์œ ์ง€๋œ๋‹ค. ๐Ÿ“ฆ Parameter • initialValue: ์ดˆ๊ธฐ์— ์ €์žฅ๋˜๋Š” ๊ฐ’์„ ๋„ฃ์œผ๋ฉฐ, ๋ชจ๋“  ์œ ํ˜•์˜ ๊ฐ’์ด(lite, DOM...)์ด ๋  ์ˆ˜ ์žˆ๋‹ค. ์ด ์ธ์ˆ˜๋Š” ์ดˆ๊ธฐ ๋ Œ๋”๋ง ํ›„์— ๋ฌด์‹œ๋œ๋‹ค. ๐ŸŽ Return useRef๋Š” ๋‹จ์ผ ์†์„ฑ์„ ๊ฐ€์ง„ ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. {current: value} • current: initialValue๊ฐ’์ด ๋“ค์–ด๊ฐ€ ์žˆ์œผ๋ฉฐ null์„ ์‚ฌ์šฉํ•ด๋„ ๋œ๋‹ค. ํ–ฅํ›„ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ..
์ฐธ๊ณ  ์‚ฌ์ดํŠธ • gofo-coding๋‹˜์˜ ํ‹ฐ์Šคํ† ๋ฆฌ ๐Ÿ—ฟ OpenGL Open Graphics Library๋กœ, Graphics ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์œ„ํ•œ API์ž…๋‹ˆ๋‹ค. (Library ์ด๋ฆ„๊ณผ ๋‹ฌ๋ฆฌ API์ด๋‹ค.) ๋”๋ณด๊ธฐ ๐Ÿ“„ Library • Collection of functions, pre-compiled routines or reusable components of code → ์ฝ”๋“œ๋ฅผ ๋ชจ์•„๋†“์€ ๊ฒƒ • ์ฝ”๋“œ์˜ ๋ฐ˜๋ณต์„ ์ค„์ด๊ณ  ์žฌ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์†๋„๋ฅผ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ“„ API • Collection of software protocols → ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ชจ์•„๋†“์€ ๊ณณ • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๋งŒ๋“ค์–ด์ ธ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. • ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ Utility Library๊ฐ€ ํ•„์š” OS๋Š” OpenG..
์ฐธ๊ณ  ์‚ฌ์ดํŠธ • ์†Œ๋…„์ฝ”๋”ฉ๋‹˜์˜ ํ‹ฐ์Šคํ† ๋ฆฌ ๐Ÿซต๐Ÿป ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์ด๋ผ๊ณ  ์•ž์„œ ๊ฒŒ์‹œ๊ธ€์—์„œ ์„ค๋ช…ํ•˜์˜€๋‹ค. ์ด๋•Œ, ๋‹ด๊ธฐ๋Š” ๊ณต๊ฐ„์€ ์ปดํ“จํ„ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ์ด๋ฉฐ, ํ•ด๋‹น ๋ณ€์ˆ˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์–ด๋””์— ์œ„์น˜ํ•ด์žˆ๋Š”์ง€ ์ฃผ์†Œ๊ฐ’์„ ๊ฐ€์ง„๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜๊ฐ€ ์•„๋‹Œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์‹œ์ž‘ ์ฃผ์†Œ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ํฌ์ธํ„ฐ๋ผ๊ณ  ํ•œ๋‹ค. โญ ํฌ์ธํ„ฐ ์„ ์–ธ ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋Š” ์ผ๋ฐ˜ ๋ณ€์ˆ˜์ฒ˜๋Ÿผ ์„ ์–ธ๋˜๋ฉฐ, ์ž๋ฃŒํ˜•๊ณผ ๋ณ€์ˆ˜ ์ด๋ฆ„ ๋˜๋Š” ๊ทธ ์‚ฌ์ด์— ( * )์ด ๋ถ™๋Š”๋‹ค. #include using namespace std; int main() { int v = 10; //๋ฐฉ๋ฒ•1 int* p_x = &v; //๋ฐฉ๋ฒ•2 int * p_y = &v; //๋ฐฉ๋ฒ•3 int *p_z = &v; // ์—ฌ๋Ÿฌ ํฌ์ธํŠธ ์„ ์–ธ ์‹œ, int *p1, *p2, *p3, p4 //์ด๋•Œ, p..
์ฐธ๊ณ  ์‚ฌ์ดํŠธ • banaba๋‹˜์˜ ํ‹ฐ์Šคํ† ๋ฆฌ • min-zero๋‹˜์˜ ํ‹ฐ์Šคํ† ๋ฆฌ ๐Ÿชฃ ๋ณ€์ˆ˜ ๋ณ€์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์„ ๊ณต๊ฐ„์„ ์˜๋ฏธํ•œ๋‹ค. ์ฆ‰ , ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์ด ๋ณ€์ˆ˜์ด๋‹ค. ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ์„ ์–ธ(declaration)๊ณผ ์ •์˜(definition)์„ ํ•ด์•ผํ•œ๋‹ค. ์šฉ์–ด ์„ค๋ช… ์„ ์–ธ (declaration) *์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์ฐธ์กฐํ•  *์‹๋ณ„์ž(identifier)์™€ ์ด๋ฆ„์„ ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ. ์„ ์–ธ์€ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ ์ƒ์— ์˜ฌ๋ฆฌ์ง€ ์•Š์•„ ์ค‘๋ณต๋˜์–ด๋„ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋‘ ๋ฒˆ ์ด์ƒ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ •์˜ (definition) ์‹๋ณ„์ž์™€ ์ด๋ฆ„์„ ํ†ตํ•ด ํ•„์š”ํ•œ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ˜ธ์ถœ๋˜์—ˆ์„ ๋•Œ, ์‹คํ–‰๋  ์ฝ”๋“œ๋“ค์ด ์ž‘์„ฑ๋˜๋ฏ€๋กœ ํ•ด๋‹น ๊ธฐ๋Šฅ ์‹คํ–‰์„ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ• ๋‹น๋˜๋ฉฐ, ์„ ์–ธํ•œ ์ด๋ฆ„์˜ ํ•จ์ˆ˜, ๋ณ€์ˆ˜, ํด๋ž˜์Šค๋“ฑ์ด ์–ด๋– ํ•œ ๋™์ž‘์„ ํ•  ๊ฒƒ์ธ์ง€ ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ...
๐ŸŽ† useEffect useEffect()๋Š” ํŽ˜์ด์ง€์˜ ๋งˆ์šดํŠธ, ์–ธ๋งˆ์šดํŠธ, ์—…๋ฐ์ดํŠธ ์‹œ ์ž‘์—…์„ ์„ค์ •ํ•œ๋‹ค. ์šฉ์–ด ์„ค๋ช… Mount ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํŽ˜์ด์ง€์— ๋‚˜ํƒ€๋‚จ unMount ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํŽ˜์ด์ง€์—์„œ ์‚ฌ๋ผ์ง ์—…๋ฐ์ดํŠธ๋Š” useEffect() ํŠน์ •๊ฐ’์— ์˜์กดํ•˜์—ฌ ํ•ด๋‹น ๊ฐ’์ด ๋ณ€๊ฒฝ, ์‹คํ–‰๋˜๋ฉด ํ•ด๋‹น useEffect()๋ฅผ ์žฌ์‹คํ–‰ํ•œ๋‹ค. useEffect()์˜ ๊ตฌ์กฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. useEffect(()=> { // ๋งˆ์šดํŠธ ์™„๋ฃŒ ํ›„ ์‹คํ–‰ํ•  ์ฝ”๋“œ return () => { // ์–ธ๋งˆ์šดํŠธ ์™„๋ฃŒ ํ›„ ์‹คํ–‰ํ•  ์ฝ”๋“œ } }, [dependencies]) ๐Ÿ’ป Code ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•œ๋‹ค. ๐Ÿ“„ EffectComponent.tsx import React, { useEffect, useState } from 'react..
๐Ÿ‘จ๐Ÿป‍๐Ÿผ useState ํŠน์ • ๊ฐ’์„ useState()๋กœ ์„ ์–ธํ•˜์—ฌ์„œ ๊ฐ’์˜ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ , ํ•ด๋‹น ๊ฐ’์˜ ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ํ™”๋ฉด์„ ๋ฆฌ๋ Œ๋”๋งํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ณด์—ฌ์ค€๋‹ค. ์ด๋•Œ, ๋ฆฌ๋ Œ๋”๋ง์ด ์ผ์–ด๋‚˜๋Š” ์ปดํฌ๋„ŒํŠธ์— ์ž์‹ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์žˆ๋‹ค๋ฉด, ์ž์‹ ์ปดํฌ๋„ŒํŠธ ๋˜ํ•œ ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์™€์ง€๋ฉด์„œ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๊นŒ์ง€ ๋ฆฌ๋ Œ๋”๋ง ๋ฉ๋‹ˆ๋‹ค. ๐Ÿ’ป Code ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๊ณ , ๋‹ค์Œ ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์ค€๋‹ค. ๐Ÿ“„ StateComponent.tsx import React, { useState } from 'react' export function StateComponent(): JSX.Element { const [num, setNum] = useState(0) const onIncrease = () => setNum(num + 1) const onDec..
์ž‘์„ฑ์ž ๊ฐœ๋ฐœ ํ™˜๊ฒฝ โœ… VScode โœ… Mac or Windows ๐Ÿ› ๏ธ ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ (CRA) CRA๋Š” Create-React-App์˜ ์•ฝ์ž๋กœ ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ(CMD) ํ˜น์€ >_ Terminal ์„ ์—ด์–ด์ค€๋‹ค. ๊ทธ ๋‹ค์Œ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. $ npx create-react-app ์— .์„ ๋„ฃ์œผ๋ฉด ํ˜„์žฌ ๊ฒฝ๋กœ์— ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜๊ณ , ์— ๋ฌธ์ž๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ํ•ด๋‹น ๋ฌธ์ž๋ฅผ ํด๋”๋ช…์œผ๋กœ ํ•˜๋Š” ํด๋”๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ทธ ์•ˆ์— ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๋Š” ํ•ด๋‹น ํ”„๋กœ์ ํŠธ์˜ ์˜ต์…˜์„ ๋ถ€๊ฐ€ํ•œ๋‹ค. --template typescript๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. ์•„๋ฌด๊ฒƒ๋„ ์ž‘์„ฑํ•˜์ง€ ์•Š์„ ์‹œ default๋กœ JavaScript ํ”„๋กœ์ ํŠธ๋ฅผ ..
๐ŸŒ ๋ฆฌ์•กํŠธ ๋ฉ”ํƒ€์—์„œ ๊ฐœ๋ฐœํ•œ ์˜คํ”ˆ ์†Œ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ํŽ˜์ด์ง€ ์ „ํ™˜ ๋ฐ ์‚ฌ์šฉ์ž UI ๋ถ€๋ถ„์—์„œ ์ƒ๋‹นํžˆ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๋˜๋Š” html์„ ํ•จ์ˆ˜, array, object์— ๋ณด๊ด€ํ•˜์—ฌ ์žฌ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜์—ฌ ํฐ ํ”„๋กœ์ ํŠธ์ผ์ˆ˜๋ก html ๊ด€๋ฆฌ๊ฐ€ ํŽธํ•ด์ง„๋‹ค. https://ko.legacy.reactjs.org/ React – ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ JavaScript ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ A JavaScript library for building user interfaces ko.legacy.reactjs.org โฌ‡๏ธ Install ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ nodejs๋ฅผ ์„ค์น˜ํ•ด์•ผํ•œ๋‹ค. ์„ค์น˜๊ฐ€ ๋˜์–ด์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ(CMD)๋ฅผ ์—ด์–ด์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•œ๋‹ค. ..
ma.caron_g
๐Ÿงช ๋งˆ์นด๋กฑ ๊ฐœ๋ฐœ์‹ค