๊ฐœ๋ฐœ๊ตฌ๋ฆฌ๐Ÿธ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ด๋ฒคํŠธ ๋ฃจํ”„

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋™์ž‘ ์›๋ฆฌ์˜ ํ•ต์‹ฌ์ธ ์ด๋ฒคํŠธ ๋ฃจํ”„์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๊ณ  ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ํ•œ๋ฒˆ์— ํ•œ ๊ฐ€์ง€ ์ผ๋งŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. โ“ํ•˜์ง€๋งŒ ๋น„๋™๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ? ๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž์ฒด์˜ ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ผ WebAPIs์˜ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. WebAPIs๋Š” ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. โ“๊ทธ๋Ÿผ NodeJS๋Š” ์–ด...

๋…ธ๋“œ ํ•™์Šต 2์ผ์ฐจ

REPL ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ถœ๋ ฅํ•ด์ฃผ๋Š” ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค. NodeJS ๋ง๊ณ ๋„ ๋‹ค๋ฅธ ์–ธ์–ด์—์„œ๋„ ์ด๋ฅผ ์ง€์›ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์˜ ์•ž ๊ธ€์ž๋ฅผ ๋”ด ์•ฝ์ž ์ž…๋‹ˆ๋‹ค. Read Evaluate Print Loop ์‚ฌ์šฉ ๋ฐฉ๋ฒ• CMD์ฐฝ์—์„œ node๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ง„์ž… ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. .exit๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜น์€ Ctrl + C ...

์‹คํ–‰ ์ปจํ…์ŠคํŠธ์™€ ํ˜ธ์ถœ ์Šคํƒ(Execution Context & Call Stack)

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉฐ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ (Execution Context)์™€ ํ˜ธ์ถœ ์Šคํƒ (Call Stack) ์— ๋Œ€ํ•ด ๋งŽ์ด ๋“ฃ๊ฒŒ ๋˜๋Š”๋ฐ ์ด์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๊ณ  ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰ ์ปจํ…์ŠคํŠธ(Execution Context) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋  ๋•Œ ๋งˆ๋‹ค ์ƒ์„ฑ๋˜๋Š” ํ™˜๊ฒฝ์„ ์–˜๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” this ๋“ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹คํ–‰ ์ปจ...

Next.js ๊ณต๋ถ€ํ•˜๊ธฐ 1์ผ์ฐจ

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ AWS๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์˜ฌ๋ฆด ํ”„๋กœ์ ํŠธ๋ฅผ ์–ด๋А ๊ฒƒ์œผ๋กœ ํ• ์ง€ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ NextJS ๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด๋Š” ๊ฒƒ์€ ์–ด๋–จ๊นŒ ์‹ถ์–ด์„œ ์ •๋ฆฌํ•ด๋ด…๋‹ˆ๋‹ค. ์‹œ์ž‘ํ•˜๊ธฐ NextJS ํ”„๋กœ์ ํŠธ์˜ ์‹œ์ž‘ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์šฐ์„ , ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์€ ํด๋”์˜ ์œ„์น˜ ์•„๋ž˜์—์„œ ๋‹ค์Œ์˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑ/์ดˆ๊ธฐํ™” ํ•ฉ๋‹ˆ๋‹ค. npm init ์„ ํƒ ์‚ฌํ•ญ์ด ์—ฌ๋Ÿฌ ๊ฐœ ๋‚˜์˜ค๋Š”๋ฐ ...

AWS RDS MySQL ์ธ์Šคํ„ด์Šค Workbench ์—ฐ๊ฒฐํ•˜๊ธฐ

์‚ฌ์šฉ ๊ธˆ์ง€ RDS์˜ IPv4๋Š” 24๋…„ 2์›”๋ถ€๋กœ ์œ ๋ฃŒํ™” ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ AWS๋ฅผ ์“ด๋‹ค ์‹ถ์œผ๋ฉด ํ•„์ˆ˜๋กœ ์“ฐ์ด๋Š” ์„œ๋น„์Šค ์ค‘ ํ•˜๋‚˜์ธ RDS ์—ฐ๊ฒฐ์„ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค ์ค€๋น„๋ฌผ RDS ์ธ์Šคํ„ด์Šค MySQL workbench ์ค€๋น„๋ฌผ ํ™•์ธ MySQL workbench์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์‚ฌํ•ญ์€ ์•„๋ž˜ ๋„ค ๊ฐ€์ง€ ์ž…๋‹ˆ๋‹ค ์—”๋“œํฌ์ธํŠธ ํฌํŠธ๋ฒˆํ˜ธ...

EC2 ์ธ์Šคํ„ด์Šค mobaXterm ์œผ๋กœ SSH, SFTP ์—ฐ๊ฒฐํ•˜๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ ๊ฐœ๋ฐœ ๊ณต๋ถ€๋ฅผ ํ•˜๋‹ค ๋ณด๋ฉด ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ํ•„์ˆ˜ ๋ถˆ๊ฐ€๊ฒฐํ•˜๊ฒŒ ํ•™์Šตํ•˜๊ณ  ๋„˜์–ด๊ฐ€์•ผ ํ•˜๋Š” AWS์˜ EC2 ์„œ๋น„์Šค! ์ €๋Š” ์ฒ˜์Œ ๋ฐฐ์šธ ๋•Œ ์ ‘์†ํ•˜๊ณ ์ž ํ•˜๋Š” ์ธ์Šคํ„ด์Šค์—์„œ ์—ฐ๊ฒฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋‚˜์˜ค๋Š” SSH ์—ฐ๊ฒฐ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๋ฐฐ์› ๋Š”๋ฐ์š”. ์ •~๋ง ๋น„ํšจ์œจ์ ์ด๊ณ  ๋ฒˆ๊ฑฐ๋กœ์šด ์ผ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๊ณ  ์ •์„์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ํŒŒ์ผ๋ช…, ์ด๋ฆ„, ํผ๋ธ”๋ฆญ DNS ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ...

๋…ธ๋“œ ํ•™์Šต 1์ผ์ฐจ

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ ์ตœ๊ทผ์— Node.js ๋ฅผ ๊ณต๋ถ€ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทผ๋ž˜๋“ค์–ด React๋ฅผ ๊ฐ€๋ณ๊ฒŒ ๊ณต๋ถ€ํ–ˆ๋Š”๋ฐ ๋ฌธ๋“ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ƒ์‚ฐ์„ฑ์ด ์ข‹์„ ๊ฒƒ์ด๋ผ๋Š” ์ƒ๊ฐ์„ ํ–ˆ์–ด์š”. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์‹ค ๋ฌด์—‡๋ณด๋‹ค 2๋…„์ „๋ถ€ํ„ฐ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ๋„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ž์œ ๋„์— ๋” ๋ˆˆ๊ธธ์ด ๊ฐ€๊ณ  ์žฌ๋ฐŒ๋‹ค๊ณ  ๋А๋ผ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด์ฐธ์— ํ•œ๋ฒˆ ๊ณต๋ถ€๋ฅผ...

์ดํด๋ฆฝ์Šค setter, getter ๋‹จ์ถ•ํ‚ค

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ ๋‹ค๋“ค ์•Œ๊ณ  ๊ณ„์‹œ๊ฒ ์ง€๋งŒ ๋งค๋ชจ๋ฅผ ์œ„ํ•ดโ€ฆ ๋งค๋ฒˆ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๋งค๋ฒˆ ๊นŒ๋จน๋Š” ๋‹จ์ถ•ํ‚ค! ์ดํด๋ฆฝ์Šค์—์„œ๋Š” setter, getter๋ฅผ ๋‹จ์ถ•ํ‚ค๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Shift + Alt + S -> Generate Getters and Setters(๋‹จ์ถ•ํ‚ค R) ์œ„์—์„œ Generate Getters and Setters ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ...

๋นˆ(Bean), IoC ์ปจํ…Œ์ด๋„ˆ, DI ์•Œ์•„๋ณด๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿธ ์˜ค๋Š˜์€ ์Šคํ”„๋ง์„ ๊ณต๋ถ€ํ•˜๋ฉด ๋ฐ˜๋“œ์‹œ ๋ฐฐ์šฐ๋Š” ๊ฐœ๋…์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Bean ๋นˆ(Bean)์€ ioc ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐ์ฒด๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ new ํ•ด์„œ ์ƒ์„ฑํ•˜์ง€๋งŒ ๋นˆ์œผ๋กœ ๋“ฑ๋กํ•œ ๊ฐ์ฒด๋Š” ์Šคํ”„๋ง์—์„œ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด์ฒ˜๋Ÿผ ๊ฐ์ฒด์˜ ๊ด€๋ฆฌ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹Œ ์Šคํ”„๋ง์ด ํ•˜๋Š” ๊ฒƒ์„ IoC(Inversion of Contro...

๊ฐ€๋ณ€ ์ธ์ˆ˜ (varvargs: Variable Arguments)

๊ฐ€๋ณ€ ์ธ์ˆ˜(varargs : Variable Arguments) ๊ฐ€๋ณ€ ์ธ์ˆ˜๋Š” ์ž๋ฐ” 5(jdk 1.5)์—์„œ ์ถ”๊ฐ€๋œ ๊ธฐ๋Šฅ ์ž…๋‹ˆ๋‹ค. ๊ฐ€๋ณ€ ์ธ์ˆ˜๋Š” ๋ฉ”์„œ๋“œ์˜ ์ธ์ˆ˜์˜ ๊ธธ์ด๊ฐ€ ๊ฐ€๋ณ€์ ์ผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ธฐ๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์„œ๋“œ์˜ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋ฉฐ ์‚ฌ์šฉ ๋ฐฉ์‹์€ ์•„๋ž˜์˜ ํ˜•์‹์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. //์ƒ๋žต public void methodName(Object... ob...

์ธ๊ธฐ ํƒœ๊ทธ