๐Ÿ’ป Programming

๐Ÿ’ป Programming/JS, TS

[TypeScript] Map

map์€ React.js์—์„œ๋Š” ์ฃผ๋กœ ๋ฐฐ์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฟŒ๋ ค์ค„ ๋•Œ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ์—ˆ๋Š”๋ฐ, ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์—์„œ ์‚ฌ์šฉ๋ฒ•์ด ์กฐ๊ธˆ ํŠน์ดํ•œ ๊ฒƒ ๊ฐ™์•„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค. 1. Map์ด๋ž€? ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์—์„œ ์ œ๊ณต๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ์ค‘ ํ•˜๋‚˜๋กœ, Key์™€ Value์˜ ์Œ์„ ์ €์žฅํ•˜๋Š” ์ปฌ๋ ‰์…˜์ด๋‹ค. ์ด ์ปฌ๋ ‰์…˜์€ ๊ฐ’์— ๋Œ€ํ•œ ๊ณ ์œ ํ•œ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. 2. Map์˜ ํŠน์ง• 1) ๊ณ ์œ ํ•œ key๊ฐ’ `Map`์€ key-value ์Œ์„ ์ €์žฅํ•˜๋Š”๋ฐ, ๊ฐ key๋Š” ์ค‘๋ณต๋  ์ˆ˜ ์—†์œผ๋ฉฐ uniqueํ•œ ๊ณ ์œ ๊ฐ’์ด์–ด์•ผ ํ•œ๋‹ค. key๊ฐ€ ์ค‘๋ณต๋  ๊ฒฝ์šฐ, ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ value๊ฐ€ ์ €์žฅ๋œ๋‹ค. 2) key-value ์Œ์œผ๋กœ ์ €์žฅ ๊ฐ ํ•ญ๋ชฉ์„ key-value์˜ ์Œ์œผ๋กœ ์ €์žฅํ•˜์—ฌ, key๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๋‹น key์— ์—ฐ..

๐Ÿ’ป Programming/Algorithm

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv. 0] ๋ฐฐ์—ด ํšŒ์ „์‹œํ‚ค๊ธฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด https://school.programmers.co.kr/learn/courses/30/lessons/120844 ์‚ฌ์šฉ ์–ธ์–ด : ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ JavaScript JS 1. ๋ฐฐ์—ด ํšŒ์ „์‹œํ‚ค๊ธฐ 1) ๋ฌธ์ œ ์„ค๋ช… ์ •์ˆ˜๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด numbers์™€ ๋ฌธ์ž์—ด direction๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฐฐ์—ด numbers์˜ ์›์†Œ๋ฅผ direction๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ์นธ์”ฉ ํšŒ์ „์‹œํ‚จ ๋ฐฐ์—ด์„ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. 2) ์ œํ•œ ์‚ฌํ•ญ 3 ≤ numbers์˜ ๊ธธ์ด ≤ 20 direction์€ "left" ์™€ "right" ๋‘˜ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. 3) ์ž…์ถœ๋ ฅ ์˜ˆ numbers direction result [1, 2, 3] "right" [3, 1, 2] [4, 455, 6, 4, ..

๐Ÿ’ป Programming/React

[Redux] React Redux ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ์„ค์น˜/์„ธํŒ… ์ •๋ฆฌ

1. Redux๋ž€? ์ƒํƒœ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์ค‘์•™ state ๊ด€๋ฆฌ์†Œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ํŒจํ‚ค์ง€ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์— state ๋ฐ์ดํ„ฐ๋“ค์„ ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„๋กœ ์„ค์ •ํ•˜์—ฌ props๋ฅผ ํ†ตํ•ด ํ•œ์ •์ ์œผ๋กœ ์ „๋‹ฌํ•˜์ง€ ์•Š๊ณ , ์ค‘์•™์—์„œ ๊ด€๋ฆฌํ•˜์—ฌ ์–ด๋–ค ์ปดํฌ๋„ŒํŠธ์—์„œ๋“  ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•˜๊ณ  ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค€๋‹ค. 1) Redux์˜ ํ๋ฆ„ View์—์„œ ์•ก์…˜์ด ์ผ์–ด๋‚œ๋‹ค. dispatch์—์„œ action์ด ์ผ์–ด๋‚˜๊ฒŒ ๋œ๋‹ค. action์— ์˜ํ•œ reducerํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „์— middleware๊ฐ€ ์ž‘๋™ํ•œ๋‹ค. middleware์—์„œ ๋ช…๋ น๋‚ด๋ฆฐ ์ผ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋‚œ ๋’ค, reducerํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. reducer์˜ ์‹คํ–‰๊ฒฐ๊ณผ store์— ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค. store์˜ state์— subscribeํ•˜๊ณ  ์žˆ๋˜ UI์— ๋ณ€๊ฒฝ๋œ ๊ฐ’์„ ์ค€๋‹ค. 2) Pro..

๐Ÿ’ป Programming/Algorithm

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv. 0] ์ธ๋ฑ์Šค ๋ฐ”๊พธ๊ธฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด ์‚ฌ์šฉ ์–ธ์–ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ JavaScript JS 1. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv. 0 ์ธ๋ฑ์Šค ๋ฐ”๊พธ๊ธฐ 1) ๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ž์—ด my_string๊ณผ ์ •์ˆ˜ num1, num2๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, my_string์—์„œ ์ธ๋ฑ์Šค num1๊ณผ ์ธ๋ฑ์Šค num2์— ํ•ด๋‹นํ•˜๋Š” ๋ฌธ์ž๋ฅผ ๋ฐ”๊พผ ๋ฌธ์ž์—ด์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”. 2) ์ œํ•œ ์‚ฌํ•ญ 1

๐Ÿ’ป Programming/JS, TS

[JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ํฌ๋ฆฌ์Šค๋งˆ์Šค๊นŒ์ง€ ๋‚จ์€ ์‹œ๊ฐ„ ๊ณ„์‚ฐํ•˜๊ธฐ

๋‚˜๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ํฌ๋ฆฌ์Šค๋งˆ์Šค์˜ ๋ถ„์œ„๊ธฐ์™€ ๋ฌด๋“œ๋ฅผ ๋งค์šฐ ๋งค์šฐ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ์ด๋‹ค. ์•„์ง ํ•œ์—ฌ๋ฆ„๋„ ์ฑ„ ์˜ค์ง€ ์•Š์•˜์ง€๋งŒ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์šฉํ•˜์—ฌ ์˜ฌํ•ด ํฌ๋ฆฌ์Šค๋งˆ์Šค๊นŒ์ง€ ๋‚จ์€ ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•ด ๋ณด์ž! 1. JavaScript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํฌ๋ฆฌ์Šค๋งˆ์Šค๊นŒ์ง€ ๋‚จ์€ ์‹œ๊ฐ„ ๊ณ„์‚ฐํ•˜๊ธฐ ๋จผ์ € HTML์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ž‘์„ฑํ•˜๊ณ , ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ดค์Œ! ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ธ”๋Ÿญ ๋‚ด์— ์ˆœ์„œ ๋‹จ๊ณ„๋ฅผ ์ฃผ์„์œผ๋กœ ์ ์–ด๋‘์—ˆ๊ณ , ์ž์„ธํ•œ ์„ค๋ช…์€ ์ฝ”๋“œ๋ธ”๋Ÿญ ํ•˜๋‹จ์—์„œ ํ’€์–ด์„œ ์ ์–ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. Santa is coming! // 1) ์‹œ๊ฐ„์„ ํ‘œ์‹œํ•  HTML ์š”์†Œ ์ง€์ • const countdownClock = document.querySelector(".countdown"); // 2) ํ•จ์ˆ˜ ์ž‘์„ฑํ•˜๊ธฐ const waitingXmas = () => { // (1) ์˜ค๋Š˜ ..

๐Ÿ’ป Programming/JS, TS

[JavaScript] var, let, const

1. ๋ณ€์ˆ˜๋ž€? 1) ์ •์˜ ํ•˜๋‚˜์˜ ๊ฐ’์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ™•๋ณดํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„ ์ž์ฒด ๋˜๋Š” ๊ทธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ๋ถ™์ธ ์ด๋ฆ„ ๊ธฐ์–ตํ•˜๊ณ  ์‹ถ์€ ๋ฐ์ดํ„ฐ ๊ฐ’์„ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๊ณ , ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ๊ฐ’์„ ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ์‹๋ณ„์ž: ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์„ '์‹๋ณ„์ž(identifier)'๋ผ๊ณ ๋„ ํ•˜๋Š”๋ฐ, ์‹๋ณ„์ž๋Š” ๊ฐ’ ์ž์ฒด๊ฐ€ ์•„๋‹Œ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ธฐ์–ตํ•œ๋‹ค. ์‹๋ณ„์ž๋Š” ๋ณ€์ˆ˜๋ช…์— ๊ตญํ•œ๋œ ๊ฐœ๋…์ด ์•„๋‹ˆ๊ณ , ๋ณ€์ˆ˜, ํ•จ์ˆ˜, ํด๋ž˜์Šค ๋“ฑ์˜ ์ด๋ฆ„์€ ๋ชจ๋‘ ์‹๋ณ„์ž๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. 2) ๋ณ€์ˆ˜์˜ ์ƒ์„ฑ 3๋‹จ๊ณ„ - ์„ ์–ธ, ์ดˆ๊ธฐํ™”, ํ• ๋‹น (1) ๋ณ€์ˆ˜ ์„ ์–ธ ๋ณ€์ˆ˜ ์„ ์–ธ์ด๋ž€ ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ, ์ฆ‰ ๊ฐ’์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•˜๊ณ  ๋ณ€์ˆ˜๋ช…๊ณผ ํ™•๋ณด๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์˜ ์ฃผ์†Œ๋ฅผ ์—ฐ๊ฒฐํ•ด์„œ ๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ์ค€๋น„ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ..

๐Ÿ’ป Programming/HTML, CSS

[HTML] ์›น ๋ฌธ์„œ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ: header, main, footer

๋ฉ”๋‰ด 1 ๋ฉ”๋‰ด 2 ๋ฉ”๋‰ด 3 h1๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ œ๋ชฉ์œผ๋กœ ํŽ˜์ด์ง€์— 1๊ฐœ๋งŒ ์‚ฌ์šฉํ•  ๊ฒƒ ์ค‘๊ฐ„์„ ๋นผ๋จน์ง€ ์•Š๊ณ  ์ˆœ์ฐจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ๊ฒƒ ๊ธ€์”จ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•˜๋Š” ์šฉ๋„๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค ๋ถ€์ฐจ์ , ๋ณด์™„์  ์˜์—ญ ์›นํŽ˜์ด์ง€์˜ ํ•˜๋‹จ

๐Ÿ’ป Programming/HTML, CSS

[CSS] BEM (Block-Element-Modifier)

https://naradesign.github.io/bem-by-example.html ์˜ˆ์ œ๋กœ ์ดํ•ดํ•˜๋Š” BEM. HTML, CSS(flex/grid), UI/UX, Accessibility, ์ •์ฐฌ๋ช… naradesign.github.io

๐Ÿ’ป Programming/HTML, CSS

[CSS] CSS, ๊ทธ๋ฆฌ๊ณ  ์Šคํƒ€์ผ ์‹œํŠธ

๐Ÿ“Œ CSS๋ž€? Cascading Style Sheets์˜ ์•ฝ์ž๋กœ, ์›นํŽ˜์ด์ง€๋ฅผ ๋ณด๊ธฐ ์ข‹๊ฒŒ ๊พธ๋ฏธ๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” ์ฝ”๋“œ HTML์ด ์›น๋ฌธ์„œ์˜ ๋ผˆ๋Œ€๋ฅผ ์ด๋ฃฌ๋‹ค๋ฉด, CSS๋Š” ๊ทผ์œก์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Œ (๋‚˜์ค‘์— ๋ฐฐ์šฐ๊ฒŒ ๋  JS๋Š” ๋™์ ์ธ ์›น์‚ฌ์ดํŠธ ๊ตฌํ˜„ํ•˜๋Š” ๋‡Œ์˜ ์—ญํ• ) /* ์„ ํƒ์ž { ์†์„ฑ1: ์†์„ฑ๊ฐ’, ์†์„ฑ2: ์†์„ฑ๊ฐ’2} */ p { text-align: center; color: red; } ๐Ÿ“Œ ์Šคํƒ€์ผ ์‹œํŠธ ์Šคํƒ€์ผ ์‹œํŠธ๋Š” ํฌ๊ฒŒ '๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ณธ ์Šคํƒ€์ผ'๊ณผ '์‚ฌ์šฉ์ž ์Šคํƒ€์ผ'๋กœ ๋‚˜๋‰˜๊ณ , ์—ฌ๊ธฐ์„œ ์‚ฌ์šฉ์ž ์Šคํƒ€์ผ์€ ๋‹ค์‹œ '์ธ๋ผ์ธ ์Šคํƒ€์ผ', '๋‚ด๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ', '์™ธ๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ' ์„ธ ๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๋Š”๋ฐ ์ด ์ค‘์—์„œ ๋‚ด๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ์™€ ์™ธ๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. 1. ๋‚ด๋ถ€ ์Šคํƒ€์ผ ์‹œํŠธ : ๊ฐ™์€ HTML ์›น๋ฌธ์„œ ์•ˆ์— ์ž‘์„ฑ..

๐Ÿ’ป Programming/๊ธฐํƒ€

ํ”„๋ก ํŠธ์—”๋“œ ์›น๊ฐœ๋ฐœ ๊ณต๋ถ€ ์œ ์šฉํ•œ ์‚ฌ์ดํŠธ ์ •๋ฆฌ

๊ฐ•์˜ ๋…ธ๋งˆ๋“œ ์ฝ”๋” - ์œ ํŠœ๋ฒ„ ๋…ธ๋งˆ๋“œ์ฝ”๋” ๋‹ˆ์ฝœ๋ผ์Šค์˜ ๋ฌด·์œ ๋ฃŒ ๊ฐ•์˜ ์‚ฌ์ด https://nomadcoders.co/ ์œ ๋ฐ๋ฏธ - ๋ฏธ๊ตญ ์˜จ๋ผ์ธ ๊ฐ•์˜ ์‚ฌ์ดํŠธ https://www.udemy.com/ko/ ์ธํ”„๋Ÿฐ - ๊ตญ๋‚ด ์˜จ๋ผ์ธ ๊ฐ•์˜ ์‚ฌ์ดํŠธ https://www.inflearn.com/ ๊ฐœ๋ฐœ ์ „๋ฐ˜ MDN Web Docs - ์›น ๊ด€๋ จ ๋‚˜๋ฌด์œ„ํ‚ค๊ฐ™์€ ์‚ฌ์ดํŠธ https://developer.mozilla.org/ko/ ์ถœํ‡ด๊ทผ๊ธธ ๊ฐœ๋ฐœ ์ฝ๊ธฐ - ๊ฐœ๋ฐœ ๊ด€๋ จ ์ปจํ…์ธ , ํŠธ๋ Œ๋“œ ๊ด€๋ จ ๋‹ค์–‘ํ•˜๊ณ  ์œ ์ตํ•œ ์ž๋ฃŒ https://github.com/Integerous/goQuality-dev-contents CSS Flexbox Froggy - CSS Flexbox์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ๊ฒŒ์ž„์œผ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ https://flexboxfr..

Jiwon()
'๐Ÿ’ป Programming' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (3 Page)