๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ

    [Node.js] Cannot find module '@aws-sdk/util-endpoints' ์˜ค๋ฅ˜

    [Node.js] Cannot find module '@aws-sdk/util-endpoints' ์˜ค๋ฅ˜

    ์˜ค๋ฅ˜ 1) Cannot find module '@aws-sdk/util-endpoints' 2) this.client.send is not a function Node.js ํ”„๋กœ์ ํŠธ์—์„œ aws-sdk์™€ multer-s3 ๋ฅผ ์ด์šฉํ•ด์„œ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋˜ ์ค‘ ๋งŒ๋‚œ ์˜ค๋ฅ˜์ด๋‹ค. ํ•ด๊ฒฐ ๋‘๊ฐ€์ง€ ์˜ค๋ฅ˜๋Š” ์ „๋ถ€ ํŒจํ‚ค์ง€ ๊ฐ„ ๋ฒ„์ „ ํ˜ธํ™˜์ด ์•ˆ๋˜์–ด์„œ ์ƒ๊ธฐ๋Š” ์ด์Šˆ์˜€๋‹ค. ๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ multer-s3 2.x๋Š” aws-sdk 2.x์™€ ํ˜ธํ™˜๋˜๊ณ , multer-s3 3.x๋Š” aws-sdk 3.x์™€ ํ˜ธํ™˜๋œ๋‹ค๊ณ  ํ•œ๋‹ค. ๋‚ด๊ฐ€ ์„ค์น˜ํ•œ aws-sdk๋Š” 2.x ๋ฒ„์ „์ด๊ณ  multer-s3 ์€ 3.x ๋ฒ„์ „์ด์–ด์„œ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ํ•„์š”ํ–ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์žˆ๋˜ multer-s3 ๋ฅผ ์‚ญ์ œํ•˜๊ณ , 2.x ๋ฒ„์ „์œผ๋กœ ์„ค์น˜ ํ•ด์ฃผ์—ˆ๋”๋‹ˆ ์—๋Ÿฌ๊ฐ€ ..

    [AWS S3] The bucket does not allow ACLs ์˜ค๋ฅ˜

    [AWS S3] The bucket does not allow ACLs ์˜ค๋ฅ˜

    AWS S3 ACLs ์˜ค๋ฅ˜ AWS S3๋ฅผ ์ด์šฉํ•ด์„œ ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œ ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ ํ•˜๋˜ ์ค‘ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๋ฅผ ๋งŒ๋‚ฌ๋‹ค. ํ•ด๋‹น ์˜ค๋ฅ˜๋Š” ๋ฒ„ํ‚ท์˜ ACL(Access Control List)์ด ๋น„ํ™œ์„ฑํ™” ์ƒํƒœ๋ผ์„œ ์ƒ๊ธฐ๋Š” ์˜ค๋ฅ˜๋‹ค. ํ•ด๊ฒฐ S3๋กœ ๊ฐ€์„œ ๋ฒ„ํ‚ท์˜ ๊ถŒํ•œ์„ ๋ฐ”๊ฟ”์ฃผ๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค. 1. ํ•ด๋‹น ๋ฒ„ํ‚ท์˜ ๊ถŒํ•œ ํƒญ์œผ๋กœ ์ด๋™ํ•œ๋‹ค. 2. ์Šคํฌ๋กค์„ ๋‚ด๋ ค์„œ ๊ฐ์ฒด ์†Œ์œ ๊ถŒ ํŽธ์ง‘์„ ํด๋ฆญํ•œ๋‹ค. 3. ์•„๋ž˜์™€ ๊ฐ™์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•œ ํ›„ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ €์žฅ์„ ํด๋ฆญํ•œ๋‹ค. 4. ์ƒˆ๋กœ๊ณ ์นจ ํ›„ ํ™•์ธ ์ •์ƒ์ ์œผ๋กœ ์ฝ˜์†”์ฐฝ์— ์ด๋ฏธ์ง€ ์ •๋ณด๊ฐ€ ์ถœ๋ ฅ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ฐธ๊ณ  https://stackoverflow.com/questions/71080354/getting-the-bucket-does-not-allow-acls-error getting "The b..

    ๋ฉ‹์Ÿ์ด์‚ฌ์ž์ฒ˜๋Ÿผ ํ”„๋ก ํŠธ์—”๋“œ ์Šค์ฟจ 6์ฃผ ์ฐจ

    ํ‚ค์›Œ๋“œ JavaScript ๊ธฐ์ดˆ ๋ˆ„๋ฆฌ ๋ฉ˜ํ† ๋‹˜, ํ˜œ์ง„ ๋ฉ˜ํ† ๋‹˜ ํŠน๊ฐ• 6์ฃผ ์ฐจ ์ด๋ฒˆ ์ฃผ๋ถ€ํ„ฐ ๋ณธ๊ฒฉ์ ์œผ๋กœ JavaScript ๊ธฐ์ดˆ ๊ฐœ๋…์„ ๋ฐฐ์šฐ๊ณ  ์žˆ๋Š”๋ฐ, HTML / CSS ์ˆ˜์—… ๋•Œ๋ณด๋‹ค ํ›จ์”ฌ ์žฌ๋ฏธ์žˆ๊ฒŒ ๋“ฃ๊ณ  ์žˆ๋‹ค. ๋‹ค๋งŒ ์ˆ˜์—… ์ค‘๊ฐ„์— ํ˜ผ์ž MDN์„ ์ฝ์–ด๋ณด๋‹ค๊ฐ€ ์ˆ˜์—…์˜ ํ๋ฆ„์„ ๋†“์น˜๊ณค ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ˆ˜์—…์— ์ข€ ๋” ์ง‘์ค‘ํ•˜๊ธฐ ์œ„ํ•ด MDN์€ ์ž์Šต์‹œ๊ฐ„์„ ํ™œ์šฉํ•ด์„œ ์ฝ์–ด๋ณด๋Š” ๊ฒƒ์œผ๋กœ! ์ œ์ฝ”๋ฒ  100์ œ๋ฅผ ํ‘ธ๋Š” ์ค‘์ธ๋ฐ part2์— ๋“ค์–ด๊ฐ€๋‹ˆ ์ ์  ๋ฌธ์ œ๊ฐ€ ์–ด๋ ค์›Œ์ง„๋‹ค. ๋‹คํ–‰ํžˆ ํ˜ธ์ค€ ๋Œ€ํ‘œ๋‹˜์ด ์ œ์ฝ”๋ฒ  ๊ฐ•์˜๋ฅผ ์ œ๊ณตํ•ด ์ฃผ์…จ๋‹ค. ์šฐ์„  ์ฒ˜์Œ์—๋Š” ๋‚ด ์‹ค๋ ฅ์œผ๋กœ ํ’€์–ด๋ณด๊ณ  ๋‹ต์•ˆ์ด๋ž‘ ๋„ˆ๋ฌด ์ฐจ์ด๊ฐ€ ๋‚˜๊ฑฐ๋‚˜ ๊ถ๊ธˆํ•œ ๋ฌธ์ œ๋Š” ๊ฐ•์˜๋กœ ์ถ”๊ฐ€์ ์ธ ๊ณต๋ถ€๋ฅผ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์–ด๋–ค ๋ฌธ์ œ๋Š” ์˜ค๋ž˜ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ ์‚ฐ์œผ๋กœ ๊ฐ€๋ฒ„๋ฆฐ ์ ์ด ์žˆ์–ด์„œ ๊ฐ•์˜๋ฅผ ๋“ค์„ ์ˆ˜ ์žˆ๋Š” ๊ฒŒ ์ •๋ง ๋‹คํ–‰์ด๋‹ค ์‹ถ๋‹ค. ..

    [๊ณผ์ œ] ์ฒœํ•˜์ œ์ผ ์บ๋ฆญํ„ฐ ๊ฒฝ์ง„๋Œ€ํšŒ - ํ„ธ์ฐ

    [๊ณผ์ œ] ์ฒœํ•˜์ œ์ผ ์บ๋ฆญํ„ฐ ๊ฒฝ์ง„๋Œ€ํšŒ - ํ„ธ์ฐ

    ๋ฉ‹์‚ฌ EF 3๊ธฐ ์ฒœํ•˜์ œ์ผ ์บ๋ฆญํ„ฐ ๊ฒฝ์ง„๋Œ€ํšŒ ๋ฉ‹์Ÿ์ด์‚ฌ์ž ํ”„๋ก ํŠธ์—”๋“œ ์Šค์ฟจ์—์„œ HTML๊ณผ CSS๋กœ ๋‚˜๋งŒ์˜ ์บ๋ฆญํ„ฐ๋ฅผ ๋งŒ๋“œ๋Š” ๋Œ€ํšŒ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๊ท€์—ฝ๊ณ  ์žฌ๋ฏธ์žˆ๋Š” ์•„์ด๋””์–ด๊ฐ€ ๋งŽ์•„์„œ ๋ณด๋Š” ์žฌ๋ฏธ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋™๊ธฐ๋ถ„๋“ค์ด ์ œ์ถœํ•˜์‹  ๊ฒƒ๋“ค์„ ๋ณด๋ฉด์„œ ๊ณ„์† ๊ฐํƒ„ํ–ˆ๋‹ค. ๋‚˜๋Š” ์ด๋ฒˆ ๋Œ€ํšŒ์—์„œ ๊ฐ์‚ฌํ•˜๊ฒŒ๋„ ๋Œ€์ƒ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํšŒ๊ณ ๋„ ํ•  ๊ฒธ ์ž‘์—… ๊ณผ์ •์„ ๊ฐ„๋‹จํ•˜๊ฒŒ๋‚˜๋งˆ ๊ธฐ๋ก์œผ๋กœ ๋‚จ๊ฒจ๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๋ฐ๋ชจ https://sduu.github.io/character-contest/ ํ„ธ์ฐ sduu.github.io Github https://github.com/sduu/character-contest GitHub - sduu/character-contest Contribute to sduu/character-contest development by cr..

    [Deep Dive] 16์žฅ ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ

    16์žฅ ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ ์ด์ค‘ ๋Œ€๊ด„ํ˜ธ([[...]])๋กœ ๊ฐ์‹ผ ์ด๋ฆ„๋“ค์ด ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ๋‹ค. ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ๋Š” ECMAScript ์‚ฌ์–‘์— ์ •์˜๋œ ๋Œ€๋กœ ๊ตฌํ˜„๋˜์–ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์—์„œ ์‹ค์ œ๋กœ ๋™์ž‘ํ•˜์ง€๋งŒ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ์™ธ๋ถ€๋กœ ๊ณต๊ฐœ๋œ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋Š” ์•„๋‹ˆ๋‹ค. const o = {}; // ๋‚ด๋ถ€ ์Šฌ๋กฏ์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์˜ ๋‚ด๋ถ€ ๋กœ์ง์ด๋ฏ€๋กœ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋‹ค. o.[[Prototype]] // Uncaught StyntaxError: Unexpected token '[' // ์ผ๋ถ€ ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ์— ํ•œํ•˜์—ฌ ๊ฐ„์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•˜๊ธฐ๋Š” ํ•œ๋‹ค. o.__proto__ // Object.prototype ์ž‘์„ฑ์ผ ๊ธฐ์ค€ Object.pro..

    [JavaScript] ์‰ผํ‘œ ์—ฐ์‚ฐ์ž (Comma Operator)

    ์‰ผํ‘œ ์—ฐ์‚ฐ์ž๋ž€ MDN์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ํ•œ๋‹ค. ์‰ผํ‘œ ์—ฐ์‚ฐ์ž๋Š” ๊ฐ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ‰๊ฐ€ํ•˜๊ณ  ๋งˆ์ง€๋ง‰ ํ”ผ์—ฐ์‚ฐ์ž์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์‰ผํ‘œ ์—ฐ์‚ฐ์ž๋Š” ์ฃผ๋กœ ์—ฌ๋Ÿฌ ๋™์ž‘์„ ํ•˜๋‚˜์˜ ์ค„์—์„œ ์ฒ˜๋ฆฌํ•˜๋ ค๋Š” ๋ณต์žกํ•œ ๊ตฌ์กฐ์—์„œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์—ฐ์‚ฐ์ž ์šฐ์„ ์ˆœ์œ„์—์„œ ๊ฐ€์žฅ ๋‚ฎ์€ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๊ธฐ๋•Œ๋ฌธ์— ๋จผ์ € ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. let x, y, z; x = 1, y = 2, z = 3; // 3 console.log(x); // 1 let a, b, c; a = (b = 5, c = 6); // 6 console.log(a); // 6 ์‰ผํ‘œ ์—ฐ์‚ฐ์ž์˜ ํ™œ์šฉ for ๋ฌธ const array = [ ['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i'], ]; for (let..

    ๋ฉ‹์Ÿ์ด์‚ฌ์ž์ฒ˜๋Ÿผ ํ”„๋ก ํŠธ์—”๋“œ ์Šค์ฟจ 4์ฃผ ์ฐจ

    ํ‚ค์›Œ๋“œ [CSS] flex, grid, perspective, CSS Sprite ๊ธฐ๋ฒ•, IR ๊ธฐ๋ฒ• [CSS ํŠน๊ฐ•] ์ง€๊ทธ์žฌ๊ทธ ์‹ค์Šต [JavaScript] ์Šค์ฝ”ํ”„, let, const ํ‚ค์›Œ๋“œ 4์ฃผ ์ฐจ ๊ผญ ํ•„์š”ํ•œ ์š”์†Œ๋งŒ ๋งˆํฌ์—… ํ•˜๋Š” ๊ฒƒ๊ณผ ํ™•์žฅ์„ฑ์„ ๊ณ ๋ คํ•œ ๋งˆํฌ์—… ์‚ฌ์ด์—์„œ ๊ณ ๋ฏผํ•˜๋‹ค ๋ณด๋ฉด ๋งˆํฌ์—…์— ๊ฝค ์‹œ๊ฐ„์„ ์Ÿ๊ฒŒ ๋œ๋‹ค. ์šฐ์„ ์€ ์ข…์ฐฌ๋‹˜ ํŠน๊ฐ•์—์„œ ๋ฐฐ์šด ๊ฒƒ์ฒ˜๋Ÿผ ์ฝ˜ํ…์ธ ์— ์ง‘์ค‘ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ๋ ˆ์ด์•„์›ƒ์„ ๊ณ ๋ คํ•ด์„œ ๋งˆํฌ์—… ํ•˜๋Š” ๊ฒƒ์— ์ต์ˆ™ํ•ด์ ธ์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค. ๋ฒค๋”ฉ ๋จธ์‹  ๊ณผ์ œ๋ฅผ ํ•˜๋ฉด์„œ ์š”๊ตฌํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ๋ฒ„๊ฑฐ์› ์ง€๋งŒ ๋”ฅ๋‹ค์ด๋ธŒ์—์„œ ๋ฐฐ์šด ๊ฒƒ์„ ์จ ๋ณผ ์ˆ˜ ์žˆ์–ด์„œ ์žฌ๋ฏธ์žˆ์—ˆ๋‹ค. ์ด์ œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ˆ˜์—…์— ์‹œ์ž‘๋˜๋Š”๋ฐ, ๊ฐœ๋…์ ์ธ ๊ฒƒ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ˜‘์—…์„ ์œ„ํ•ด ์ข‹์€ ์ฃผ์„์„ ์ž‘์„ฑํ•˜๋Š” ๋ฒ•, ๊ฐ€๋…์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๊ณ ๋ คํ•œ ์ฝ”๋”ฉ ๋ฐฉ๋ฒ•๋„ ๋ฐฐ์šฐ๊ณ  ์‹ถ๋‹ค. ๋‹ค..

    [Deep Dive] 14-15์žฅ

    14์žฅ ์ „์—ญ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์  ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ ์ „์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ๊ฐ™๋‹ค. ํ•˜์ง€๋งŒ ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์„ ์–ธ๋œ ์ง€์—ญ ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ์ƒ์„ฑ๋˜๊ณ  ํ•จ์ˆ˜๊ฐ€ ์ข…๋ฃŒํ•˜๋ฉด ์†Œ๋ฉธํ•œ๋‹ค. ์ฆ‰, ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ๋Š” ํ•จ์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ์ผ์น˜ํ•œ๋‹ค. ์ง€์—ญ ๋ณ€์ˆ˜๊ฐ€ ํ•จ์ˆ˜๋ณด๋‹ค ์˜ค๋ž˜ ์ƒ์กดํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€ ์Šค์ฝ”ํ”„๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์œผ๋ฉด ์Šค์ฝ”ํ”„๋Š” ์†Œ๋ฉธํ•˜์ง€ ์•Š๊ณ  ์ƒ์กดํ•˜๊ฒŒ ๋œ๋‹ค. ์ง€์—ญ ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜๊ฐ€ ์ƒ์„ฑํ•œ ์Šค์ฝ”ํ”„์— ๋“ฑ๋ก๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๋ณ€์ˆ˜๋Š” ์ž์‹ ์ด ๋“ฑ๋ก๋œ ์Šค์ฝ”ํ”„๊ฐ€ ์†Œ๋ฉธ(๋ฉ”๋ชจ๋ฆฌ ํ•ด์ œ)๋  ๋•Œ๊นŒ์ง€ ์œ ํšจํ•˜๋‹ค. ๋˜ํ•œ ํ˜ธ์ด์ŠคํŒ…์€ ์Šค์ฝ”ํ”„๋ฅผ ๋‹จ์œ„๋กœ ๋™์ž‘ํ•˜๋ฉฐ, ํ˜ธ์ด์ŠคํŒ…์€ ๋ณ€์ˆ˜ ์„ ์–ธ์ด ์Šค์ฝ”ํ”„์˜ ์„ ๋‘๋กœ ๋Œ์–ด ์˜ฌ๋ ค์ง„ ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ณ ์œ ์˜ ํŠน์ง•์„ ๋งํ•œ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ „์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ ๋ธŒ..

    [Deep Dive] 12-13์žฅ

    12์žฅ ํ•จ์ˆ˜ ํ•จ์ˆ˜๋ž€? ํ•จ์ˆ˜๋Š” ์ผ๋ จ์˜ ๊ณผ์ •์„ ๋ฌธ์œผ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ์ฝ”๋“œ ๋ธ”๋ก์œผ๋กœ ๊ฐ์‹ธ์„œ ํ•˜๋‚˜์˜ ์‹คํ–‰ ๋‹จ์œ„๋กœ ์ •์˜ํ•œ ๊ฒƒ์ด๋‹ค. ์ž…๋ ฅ์„ ๋ฐ›์•„์„œ ์ถœ๋ ฅ์„ ๋‚ด๋ณด๋‚ด๋Š” ์ผ๋ จ์˜ ๊ณผ์ •์ด๋ผ๊ณ ๋„ ํ•  ์ˆ˜์žˆ๋‹ค. ์ด๋•Œ ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ์ž…๋ ฅ์„ ์ „๋‹ฌ๋ฐ›๋Š” ๋ณ€์ˆ˜๋ฅผ ๋งค๊ฐœ ๋ณ€์ˆ˜(parameter), ์ž…๋ ฅ์„ ์ธ์ˆ˜(argument), ์ถœ๋ ฅ์„ ๋ฐ˜ํ™˜๊ฐ’(return value)์ด๋ผ ํ•œ๋‹ค. ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ : ํ•จ์ˆ˜๋Š” ํ•„์š”ํ•  ๋•Œ ์—ฌ๋Ÿฌ ๋ฒˆ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค .์ฆ‰ ์‹คํ–‰ ์‹œ์ ์„ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๊ณ  ๋ช‡ ๋ฒˆ์ด๋“  ์žฌ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ฝ”๋“œ์˜ ์‹ ๋ขฐ์„ฑ : ์ฝ”๋“œ์˜ ์ค‘๋ณต์„ ์–ต์ œํ•˜๊ณ  ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๋Š” ํ•จ์ˆ˜๋Š” ์œ ์ง€๋ณด์ˆ˜์˜ ํŽธ์˜์„ฑ์„ ๋†’์ด๊ณ  ์ฝ”๋“œ์˜ ์‹ ๋ขฐ์„ฑ์„ ๋†’์ด๋Š” ํšจ๊ณผ๊ฐ€ ์žˆ๋‹ค. ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ : ์ ์ ˆํ•œ ํ•จ์ˆ˜ ์ด๋ฆ„์€ ํ•จ์ˆ˜์˜ ๋‚ด๋ถ€ ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜์ง€ ์•Š๊ณ ๋„ ํ•จ์ˆ˜์˜ ์—ญํ• ์„ ํŒŒ์•…..

    ๋ฉ‹์Ÿ์ด์‚ฌ์ž์ฒ˜๋Ÿผ ํ”„๋ก ํŠธ์—”๋“œ ์Šค์ฟจ 3์ฃผ ์ฐจ

    ํ‚ค์›Œ๋“œ [CSS] position floats ์™€ normal flow BFC(Block-Formatting-Context) CSS selector flex [CSS ํŠน๊ฐ•] font ์™€ line-height em ๋‹จ์œ„ ๋„ค๊ฑฐํ‹ฐ๋ธŒ ๋งˆ์ง„ [๊ธˆ์š”์ผ ํŠน๊ฐ•] ๋ฉ‹์‚ฌ ์Šคํƒ€ํ„ฐ ํ‚คํŠธ Hard Skills and Soft Skills ์ทจ์ค€ ์ „๋žต๊ณผ ํ•ด์™ธ ์ทจ์—… 3์ฃผ ์ฐจ ํ•ด์•ผ ํ•  ๊ฒƒ์€ ๋งŽ์€๋ฐ, ํšจ์œจ์ ์œผ๋กœ ์‹œ๊ฐ„ ๋ถ„๋ฐฐ๊ฐ€ ์ž˜ ์•ˆ๋˜๋Š” ๋Š๋‚Œ์ด ๋“ ๋‹ค. ํŠนํžˆ ์ด๋ฒˆ ์ฃผ๋Š” ์‹ค์Šต๊ณผ ๊ณผ์ œ๊ฐ€ ์ข€ ์žˆ์—ˆ๋Š”๋ฐ ๊ณ„์† ์ฝ”๋“œ๋ฅผ ๋‹ค๋“ฌ์œผ๋ฉด์„œ ์‹œ๊ฐ„์„ ๋งŽ์ด ์“ด ๊ฒƒ ๊ฐ™๋‹ค. ๋”ฑ ๊ณ„ํšํ•œ ์‹œ๊ฐ„๋งŒํผ๋งŒ ๊ณผ์ œ์— ํž˜์„ ์Ÿ๊ณ  ๋ถ€์กฑํ•œ ์ ์€ ๋ฐฐ์›Œ๋‚˜๊ฐ€๋ฉด์„œ ๊ณ ์ณ๋‚˜๊ฐ€๋Š” ๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ํ•˜๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค. ์ด๋ฒˆ ์ฃผ์— ๊ฐ€์žฅ ํฅ๋ฏธ๋กœ์› ๋˜ ๊ฒƒ์€ `๋งˆ์ง„ ๋ณ‘ํ•ฉ์ด ๋˜๋Š” ์ด์œ `์™€ `body ์š”์†Œ์— ์ปฌ๋Ÿฌ๋ฅผ ์ฃผ..