๐Ÿ“•CS

๊ธฐ์ˆ ๋ฉด์ ‘ ์งˆ๋ฌธ ๋ชจ์Œ / ๋ฉด์ ‘ CS ์งˆ๋ฌธ ๋ชจ์Œ

stonesy 2024. 11. 3. 16:02
728x90

๐Ÿ“Œ์›น์˜ ๊ธฐ๋ณธ ๊ฐœ๋…

1. ์ธํ„ฐ๋„ท๊ณผ ์›น์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ธํ„ฐ๋„ท์ด ๊ณ ์†๋„๋กœ๋ผ๋ฉด ์›น์€ ์ž๋™์ฐจ? ใ…Žใ…Ž...
 
2. HTTP์™€ HTTPS์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
HTTPS๋Š” HTTP์— ๋ณด์•ˆ์„ฑ์ด ์ถ”๊ฐ€๋œ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. HTTP์— SSL/TLS ์•”ํ˜ธํ™”๋ฅผ ์ถ”๊ฐ€ํ•œ ํ”„๋กœํ† ์ฝœ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก ์ค‘์— ๋ณด์•ˆ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์™€ ์„œ๋ฒ„ ๊ฐ„ ํ†ต์‹ ์ด ์•”ํ˜ธํ™”๋˜๋ฏ€๋กœ ๋„์ฒญ์ด๋‚˜ ๋ฐ์ดํ„ฐ ๋ณ€์กฐ๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
 
3. HTTP์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ(GET, POST, PUT, DELETE ๋“ฑ)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.

  • GET: ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ
  • POST: ๋ฐ์ดํ„ฐ๋ฅผ ๋“ฑ๋ก
  • PUT: ๋ฐ์ดํ„ฐ ๋Œ€์ฒด
  • PATCH: ๋ฐ์ดํ„ฐ๋ฅผ ์ผ๋ถ€ ์ˆ˜์ •
  • DELETE: ๋ฐ์ดํ„ฐ ์‚ญ์ œ

*๋ฉฑ๋“ฑ์„ฑ
๋ฉฑ๋“ฑ์„ฑ์ด๋ž€ ๋™์ผํ•œ ์š”์ฒญ์„ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ฐ˜๋ณตํ•ด๋„ ๊ฒฐ๊ณผ๊ฐ€ ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋˜๋Š” ์„ฑ์งˆ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฉฑ๋“ฑ์„ฑO: GET, PUT, DELETE
  • ๋ฉฑ๋“ฑ์„ฑX: POST
  • ๋ฉฑ๋“ฑ์„ฑOX: PATCH

 
4. HTTP ์ƒํƒœ ์ฝ”๋“œ(200, 301, 404, 500 ๋“ฑ)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.

  • 1XX(์ •๋ณด ์‘๋‹ต): ์š”์ฒญ์ด ์ˆ˜์‹ ๋˜์—ˆ๊ณ  ์ฒ˜๋ฆฌ๊ฐ€ ์ง„ํ–‰ ์ค‘์ž„์„ ๋‚˜ํƒ€๋‚ธ๋‹ค
  • 2XX(์„ฑ๊ณต): ์š”์ฒญ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋˜์—ˆ์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • 3XX(๋ฆฌ๋‹ค์ด๋ ‰์…˜): ์š”์ฒญํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋‹ค๋ฅธ ์œ„์น˜๋กœ ์ด๋™ํ–ˆ์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • 4XX(ํด๋ผ์ด์–ธํŠธ ์—๋Ÿฌ): ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • 5XX(์„œ๋ฒ„ ์—๋Ÿฌ): ์„œ๋ฒ„์—์„œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋„์ค‘ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Œ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

 
5. ์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ์— ์ €์žฅ๋˜์–ด ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํด๋ผ์ด์–ธํŠธ์—์„œ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ๊ฐ„๋‹จํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
์„ธ์…˜์€ ์„œ๋ฒ„์— ์ €์žฅ๋˜์–ด ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์ธ์ฆ์ด๋‚˜ ์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.
 
6. ์ฟ ํ‚ค, ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€, ์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

์ฟ ํ‚ค๋Š” HttpOnly, Secure, SameSite ์†์„ฑ์„ ํ†ตํ•˜์—ฌ ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€์— ๋น„ํ•ด XSS, CSRF ๊ณต๊ฒฉ์— ์ž˜ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

- HttpOnly: HttpOnly ์†์„ฑ์„ ํ†ตํ•ด์„œ JS๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋„๋ก ํ•  ์ˆ˜ ์žˆ๋‹ค.

- Secure: Secure ์†์„ฑ์„ ํ†ตํ•ด์„œ HTTPS ์—ฐ๊ฒฐ์—์„œ๋งŒ ์ „์†ก๋˜๋„๋ก ์ œํ•œํ•  ์ˆ˜ ์žˆ๋‹ค.

- SameSite: SameSite ์†์„ฑ์„ ํ†ตํ•ด์„œ ๋™์ผํ•œ ์ถœ์ฒ˜๋ผ๋ฆฌ๋งŒ ์ „์†ก๋˜๋„๋ก ์ œํ•œํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

7. CORS(Cross-Origin Resource Sharing)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

๋ธŒ๋ผ์šฐ์ €๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ Same Origin Policy๋ฅผ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋™์ผํ•œ ์ถœ์ฒ˜๋ผ๋ฆฌ๋งŒ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค. CORS(Cross- Origin Resource Sharing)๋ž€ ๋™์ผํ•œ ์ถœ์ฒ˜๊ฐ€ ์•„๋‹Œ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ์ œํ•œํ•˜๋Š” ๋ณด์•ˆ ๋งค์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค.

 

8. CDN(Content Delivery Network)์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์™œ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์„ค๋ช…ํ•˜์„ธ์š”.
 
9. REST์™€ RESTful API์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
REST๋ž€ url๋กœ ์ž์›์„ ๊ตฌ๋ถ„ํ•˜๊ณ , HTTP ๋ฉ”์„œ๋“œ(GET, POST, PATCH, PUT, DELETE)๋ฅผ ์‚ฌ์šฉํ•ด ํ•ด๋‹น ์ž์›์— ๋Œ€ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  RESTful API๋Š” REST ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋”ฐ๋ฅด๋Š” API๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. RESTful API๋ฅผ ํ†ตํ•ด ์ž์›์„ ๊ด€๋ฆฌํ•  ๋•Œ ์ง๊ด€์ ์ด๊ณ  ์ผ๊ด€์„ฑ ์žˆ๊ฒŒ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 
10. GraphQL๊ณผ REST API์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“Œ๋ธŒ๋ผ์šฐ์ €์™€ ๋ Œ๋”๋ง

1. ๋ธŒ๋ผ์šฐ์ €์˜ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?
 
2. ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ๊ณผ์ •์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
HTML์„ ํŒŒ์‹ฑํ•˜์—ฌ DOM ํŠธ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , CSS๋ฅผ ํŒŒ์‹ฑํ•˜์—ฌ CSSOM ํŠธ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋‘ ํŠธ๋ฆฌ๋ฅผ ํ•ฉ์ณ ๋ Œ๋” ํŠธ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  Layout>Paint>Composite ๊ณผ์ •์„ ๊ฑฐ์ณ ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง์ด ์ด๋ฃจ์–ด์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

  • Layout: ๊ฐ ์š”์†Œ์˜ ํฌ๊ธฐ์™€ ์œ„์น˜๋ฅผ ๊ณ„์‚ฐ
  • Paint: ๊ฐ ์š”์†Œ๋ฅผ ํ™”๋ฉด์— ๊ทธ๋ฆฐ๋‹ค.
  • Composite: ์š”์†Œ๋ฅผ ํ•ฉ์ณ ํ™”๋ฉด์— ์ตœ์ข…์ ์œผ๋กœ ํ‘œ์‹œํ•œ๋‹ค.

 
3. DOM๊ณผ CSSOM์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
DOM(Document Object Model) ํŠธ๋ฆฌ๋Š” HTML ๋ฌธ์„œ๋ฅผ ํŒŒ์‹ฑํ•œ ๊ฒƒ์œผ๋กœ, HTML ๊ตฌ์กฐ๋ฅผ ํ‘œํ˜„ํ•˜์—ฌ ๊ฐ HTML ํƒœ๊ทธ๊ฐ€ ๋…ธ๋“œ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค.
CSSOM(CSS Object Model) ํŠธ๋ฆฌ๋Š” ์Šคํƒ€์ผ ์ •๋ณด๋ฅผ ๊ตฌ์กฐํ™”ํ•œ ๊ฒƒ์œผ๋กœ, DOM ํŠธ๋ฆฌ์™€ ๊ฒฐํ•ฉํ•ด ๋ Œ๋”๋ง ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
 
4. Reflow์™€ Repaint์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
Reflow๋Š” ์š”์†Œ์˜ ๋ ˆ์ด์•„์›ƒ์ด๋‚˜ ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ ๋ฐœ์ƒํ•˜๋ฉฐ, DOM ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜๊ณ  ์š”์†Œ๋ฅผ ์ƒˆ๋กญ๊ฒŒ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค. Repaint๋Š” ์‹œ๊ฐ์  ์Šคํƒ€์ผ์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: CSS ์†์„ฑ ์ค‘์— color, background-color, visibility, box-shadow ๋“ฑ) Repaint๊ฐ€ Reflow์— ๋น„ํ•ด ๊ณ„์‚ฐ ๋น„์šฉ์ด ์ ์Šต๋‹ˆ๋‹ค.
 
5. ๋ธŒ๋ผ์šฐ์ €์˜ ์ด๋ฒคํŠธ ๋ฃจํ”„(Event Loop)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ด๋ฒคํŠธ ๋ฃจํ”„๋Š” JavaScript์˜ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋งค์ปค๋‹ˆ์ฆ˜์œผ๋กœ, ์ด๋ฒคํŠธ ๋ฃจํ”„๊ฐ€ ๋Œ๋ฉด์„œ ์ฝœ์Šคํƒ์ด ๋น„์–ด์žˆ๋‹ค๋ฉด ์ฝœ๋ฐฑ ํ์— ๋“ค์–ด ์žˆ๋Š” ํ•จ์ˆ˜๋ฅผ ์ฝœ์Šคํƒ์œผ๋กœ ์˜ฎ๊ฒจ ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜๋„๋ก ํ•œ๋‹ค.
 
6. ์Šค๋กœํ‹€๋ง(throttling)๊ณผ ๋””๋ฐ”์šด์‹ฑ(debouncing)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์Šค๋กœํ‹€๋ง(throttling)์€ ์ผ์ •ํ•œ ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ ๋™์•ˆ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์‹คํ–‰ํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด๊ณ , ๋””๋ฐ”์šด์‹ฑ(debouncing)์€ ์ด๋ฒคํŠธ๊ฐ€ ์—ฐ์†์ ์œผ๋กœ ๋ฐœ์ƒํ•  ๋•Œ ๋งˆ์ง€๋ง‰ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•œ ํ›„ ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ ์ถ”๊ฐ€ ์ด๋ฒคํŠธ๊ฐ€ ์—†์„ ๋•Œ๋งŒ ์‹คํ–‰ํ•œ๋‹ค.
 
7. ์‹ฑ๊ธ€ ์“ฐ๋ ˆ๋“œ ํ™˜๊ฒฝ์—์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•˜์„ธ์š”.
์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ณ  ๋ฐ˜๋ณต์ ์ธ ์ž‘์—…๋“ค์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ์•„๋‹Œ ๋ธŒ๋ผ์šฐ์ €์˜ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ์ธ WebAPIs์—์„œ ์ฒ˜๋ฆฌ๋œ๋‹ค. ์ด๋ฒคํŠธ ๋ฃจํ”„๊ฐ€ ๋Œ๋ฉด์„œ ์ฝœ๋ฐฑ ํ๊ฐ€ ๋น„์–ด ์žˆ๋‹ค๋ฉด ์ฝœ์Šคํƒ์— ๋“ค์–ด ์žˆ๋Š” ํ•จ์ˆ˜๋ฅผ ์ฝœ์Šคํƒ์œผ๋กœ ์˜ฎ๊ฒจ ์‹คํ–‰ํ•œ๋‹ค.
 
8. ์„œ๋น„์Šค ์›Œ์ปค(Service Worker)์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
9. ์›น ์›Œ์ปค(Web Worker)๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์™œ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€์š”?
10. ์›น ์ ‘๊ทผ์„ฑ(Web Accessibility)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“ŒHTML

1. HTML5์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
1) ์ƒˆ๋กœ์šด ์‹œ๋งจํ‹ฑ ํƒœ๊ทธ(์˜๋ฏธ๋ฅผ ๋ช…ํ™•ํžˆ ์ „๋‹ฌํ•˜๋Š” ๊ตฌ์กฐ์  ํƒœ๊ทธ): <header>, <footer>, <section>, <article>, <nav>, <aside>
2) ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ์ง€์›(์˜ค๋””์˜ค์™€ ๋น„๋””์˜ค ํƒœ๊ทธ): <audio>์™€ <video> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด ํ”Œ๋Ÿฌ๊ทธ์ธ ์—†์ด ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ์ฝ˜ํ…์ธ  ์‚ฝ์ž… ๊ฐ€๋Šฅ
3) ๊ทธ๋ž˜ํ”ฝ๊ณผ ์• ๋‹ˆ๋ฉ”์ด์…˜: <canvas>ํƒœ๊ทธ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉํ•ด 2D ๊ทธ๋ž˜ํ”ฝ๊ณผ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ƒ์„ฑ
4) ์Šคํ† ๋ฆฌ์ง€ ๊ธฐ๋Šฅ: ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€, ์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€
5) ์ƒˆ๋กœ์šด API: Geolocation API, WebSocket API ๋“ฑ
 
์‹œ๋ฉ˜ํ‹ฑ ํƒœ๊ทธ(semantic tag)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
HTML5์˜ <canvas>์™€ <svg>์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
data-* ์†์„ฑ์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ธ์ œ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€์š”?
<meta> ํƒœ๊ทธ์˜ ์—ญํ• ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
HTML5์˜ ์ƒˆ๋กœ์šด ์ž…๋ ฅ ์œ ํ˜•(input types)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
<link>์™€ <script> ํƒœ๊ทธ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
<iframe>์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
HTML ๋ฌธ์„œ์—์„œ ์š”์†Œ์˜ ์šฐ์„ ์ˆœ์œ„๋Š” ์–ด๋–ป๊ฒŒ ๊ฒฐ์ •๋˜๋‚˜์š”?
HTML๊ณผ XHTML์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“ŒCSS

  1. CSS์˜ ์ƒ์†๊ณผ ์šฐ์„ ์ˆœ์œ„์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
  2. CSS ๋ฐ•์Šค ๋ชจ๋ธ(Box Model)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. CSS Flexbox์™€ Grid์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. CSS์—์„œ position ์†์„ฑ์˜ ๊ฐ’๋“ค(static, relative, absolute, fixed, sticky)์„ ์„ค๋ช…ํ•˜์„ธ์š”.
  5. CSS display ์†์„ฑ์˜ ์ฃผ์š” ๊ฐ’๋“ค(block, inline, inline-block, none)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
  6. CSS z-index๋Š” ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?
  7. CSS @media ์ฟผ๋ฆฌ๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. CSS ์ „์ฒ˜๋ฆฌ๊ธฐ(SCSS, LESS ๋“ฑ)์˜ ์žฅ์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. CSS ๋ณ€์ˆ˜(var())์˜ ์‚ฌ์šฉ๋ฒ•๊ณผ ์žฅ์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
  10. CSS ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ํŠธ๋žœ์ง€์…˜(Transition)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ธฐ๋ณธ ๊ฐœ๋…

1. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
2. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ==์™€ ===์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
3. ํด๋กœ์ €(Closure)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํด๋กœ์ €๋ž€ ๋‚ด๋ถ€ ํ•จ์ˆ˜๊ฐ€ ์™ธ๋ถ€ ํ•จ์ˆ˜์˜ ๋ณ€์ˆ˜๋‚˜ ์ƒํƒœ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๋งํ•˜๋ฉฐ, ํด๋กœ์ €๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€ํ•จ์ˆ˜์˜ ์‹คํ–‰์ด ๋๋‚œ ํ›„์—๋„ ํ•ด๋‹น ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
*์ฆ‰, ํด๋กœ์ €๋Š” ํ•จ์ˆ˜๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ์˜ Variable Environment๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์œ ์ง€ํ•˜์—ฌ, ํ•จ์ˆ˜ ์™ธ๋ถ€์˜ ๋ณ€์ˆ˜์— ๊ณ„์† ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
 
4. ํ˜ธ์ด์ŠคํŒ…(Hoisting)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ฝ”๋“œ ์‹คํ–‰ ์ „์— ๋ณ€์ˆ˜ ์„ ์–ธ๊ณผ ํ•จ์ˆ˜ ์„ ์–ธ์ด ํ•ด๋‹น ์Šค์ฝ”ํ”„์˜ ์ตœ์ƒ๋‹จ์œผ๋กœ ๋Œ์–ด์˜ฌ๋ ค์ง€๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํŠน์ง•์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „์— ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜์˜ ์„ ์–ธ์„ ๋ฏธ๋ฆฌ ์ฒ˜๋ฆฌํ•˜์—ฌ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋  ๋•Œ ์˜ค๋ฅ˜ ์—†์ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
์ด๋•Œ, var๊ณผ const, let์˜ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. var์˜ ๊ฒฝ์šฐ์—๋Š” ๋ณ€์ˆ˜์˜ ์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™”๊ฐ€ ๋™์‹œ์— ์ด๋ฃจ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋‚˜๊ธฐ ์ „์— ์ดˆ๊ธฐ๊ฐ’์ด undefined๋กœ ์„ค์ •๋˜์–ด ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ const, let์€ TDZ(Temperal Dead Zone)์ด ๋˜์–ด ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
 
5. ์ด๋ฒคํŠธ ๋ฒ„๋ธ”๋ง(Event Bubbling)๊ณผ ์บก์ฒ˜๋ง(Event Capturing)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
6. this ํ‚ค์›Œ๋“œ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋‚˜์š”?
 
7. call, apply, bind์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
8. ํ”„๋กœํ† ํƒ€์ž…(Prototype)๊ณผ ํ”„๋กœํ† ํƒ€์ž… ์ฒด์ด๋‹์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
9. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์Šค์ฝ”ํ”„(Scope)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์Šค์ฝ”ํ”„๋ž€ ๋ณ€์ˆ˜๋‚˜ ํ•จ์ˆ˜๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํšจ ๋ฒ”์œ„์ž…๋‹ˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์Šค์ฝ”ํ”„ ์ฒด์ธ์„ ํ†ตํ•ด ๋ณ€์ˆ˜๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค. ๋‚ด๋ถ€ ์Šค์ฝ”ํ”„์—์„œ ๋ณ€์ˆ˜๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ์™ธ๋ถ€ ์Šค์ฝ”ํ”„๋กœ ์˜ฌ๋ผ๊ฐ€๋ฉฐ ์ตœ์ƒ์œ„ ์Šค์ฝ”ํ”„์ธ ์ „์—ญ ์Šค์ฝ”ํ”„๊นŒ์ง€ ์˜ฌ๋ผ๊ฐ€๋„ ๋ณ€์ˆ˜๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ReferenceError๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์Šค์ฝ”ํ”„ ์ฒด์ธ์€ ํ•จ์ˆ˜๋‚˜ ๋ธ”๋ก ๋‚ด์—์„œ ๋ณ€์ˆ˜์˜ ์œ ํšจ ๋ฒ”์œ„๋ฅผ ์ •ํ•˜๊ณ , ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.
*์Šค์ฝ”ํ”„์ฒด์ธ์€ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ๋“ค์ด ์—ฐ๊ฒฐ๋œ ๊ตฌ์กฐ๋กœ ํ˜„์žฌ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์—์„œ ์‹œ์ž‘ํ•ด ์ƒ์œ„ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์œผ๋กœ ์ฐฐ๋Œ€๋กœ ํƒ์ƒ‰ํ•˜๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
 
10. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•(Callback, Promise, async/await)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
 
11. ์‹คํ–‰ ์ปจํ…์ŠคํŠธ๋ž€?
์‹คํ–‰ ์ปจํ…์ŠคํŠธ๋ž€ ์‹คํ–‰ํ•  ์ฝ”๋“œ์— ์ œ๊ณตํ•  ํ™˜๊ฒฝ ์ •๋ณด๋“ค์„ ๋ชจ์•„๋†“์€ ๊ฐ์ฒด๋กœ variable environment, lexical environment, this binding์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ฝœ์Šคํƒ์— ์ž๋™์œผ๋กœ ์ „์—ญ ์ปจํ…์ŠคํŠธ๊ฐ€ ์ƒ์„ฑ๋œ ํ›„ ํ•จ์ˆ˜ ํ˜ธ์ถœ์‹œ๋งˆ๋‹ค ํ•จ์ˆ˜ ์ปจํ…์ŠคํŠธ๊ฐ€ ์ƒ์„ฑ๋˜๊ณ , ์ปจํ…์ŠคํŠธ ์ƒ์„ฑ์ด ์™„๋ฃŒ๋œ ํ›„์— ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์‹คํ–‰ ์ค‘์ธ ์ฝ”๋“œ๊ฐ€ ํŠน์ • ๋ณ€์ˆ˜๋ฅผ ์ฐธ์กฐํ•˜ ๋•Œ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์—์„œ ์›ํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์ฐพ๊ณ  ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ๋‚ด๋ถ€ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์ด ์ฐธ์กฐํ•˜๋Š” ์™ธ๋ถ€ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์œผ๋กœ ๊ฒ€์ƒ‰ ๋ฒ”์œ„๋ฅผ ํ™•์žฅํ•˜๋ฉฐ ์ „์—ญ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ๊นŒ์ง€ ์ด๋ฅผ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.
-variable environment: ํ˜„์žฌ ์ปจํ…์ŠคํŠธ ๋‚ด์˜ ์‹๋ณ„์ž์— ๋Œ€ํ•œ ์ •๋ณด์™€ ์™ธ๋ถ€ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ •๋ณด๋‹ค. ์„ ์–ธ ์‹œ์ ์˜ lexical environment์˜ ์Šค๋ƒ…์ƒท์œผ๋กœ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋ฐ˜์˜๋˜์ง€ ์•Š๋Š”๋‹ค.
-lexical environment: ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ˜์˜๋œ๋‹ค.
-this binding: this ์‹๋ณ„์ž๊ฐ€ ๋ฐ”๋ผ๋ด์•ผ ํ•  ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
 

๐Ÿ“ŒES6+ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

ES6+๋Š” ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค. ํ…œํ”Œ๋ฆฟ ๋ฌธ์ž์—ด, const, let, ๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น, ํ™”์‚ดํ‘œ ํ•จ์ˆ˜, Promise ๋“ฑ์ด ์ถ”๊ฐ€๋˜๋ฉด์„œ JavaScript์˜ ํ‘œํ˜„๋ ฅ๊ณผ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
 
1. let, const, var์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
var๊ณผ let, const๋Š” ์Šค์ฝ”ํ”„์˜ ๋ฒ”์œ„ ํ˜ธ์ด์ŠคํŒ…๊ณผ ๊ด€๋ จํ•ด์„œ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. var์€ ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„, let๊ณผ const๋Š” ๋ธ”๋ก ์Šค์ฝ”ํ”„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ var์„ ๋ฌด๋ถ„๋ณ„ํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์˜ˆ์ƒํ•˜์ง€ ๋ชปํ•œ ๊ฒฐ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํ˜ธ์ด์ŠคํŒ…๊ณผ ๊ด€๋ จํ•ด์„œ var์€ ๋ณ€์ˆ˜์˜ ์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™”๊ฐ€ ๋™์‹œ์— ์ด๋ฃจ์–ด์ง€๊ณ  undefined๊ฐ€ ํ• ๋‹น๋˜์–ด ์‹ค์ œ ์ฝ”๋“œ๋ฅผ ๋งŒ๋‚˜๊ธฐ ์ „์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, let๊ณผ const๋Š” TDZ(Temperal Dead Zone)์œผ๋กœ ์‹ค์ œ ์ฝ”๋“œ๋ฅผ ๋งŒ๋‚˜๊ธฐ ์ „๊นŒ์ง€ ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
 
2. ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด(Template Literals)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด์ด๋ž‘ ๋ฌธ์ž์—ด๊ณผ ๋ณ€์ˆ˜๋ฅผ ์‰ฝ๊ฒŒ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ๋ฐฑํ‹ฑ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ‘œํ˜„์‹์ž…๋‹ˆ๋‹ค.
 
3. ํ™”์‚ดํ‘œ ํ•จ์ˆ˜(Arrow Function)์˜ ํŠน์ง•์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋Š” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„๋˜์–ด ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์„ ๋†’์—ฌ์ค๋‹ˆ๋‹ค. ๋˜ํ•œ ์ผ๋ฐ˜ ํ•จ์ˆ˜์™€ ๋น„๊ตํ•˜์—ฌ this์— ๋ฐ”์ธ๋”ฉ๋˜๋Š” ๊ฐ’์— ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ํ•จ์ˆ˜๋Š” ํ˜ธ์ถœ๋ฐฉ์‹์— ๋”ฐ๋ผ this์— ๋ฐ”์ธ๋”ฉ๋˜๋Š” ๊ฐ’์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋Š” ์ƒ์œ„ ์Šค์ฝ”ํ”„์˜ this ๊ฐ’์„ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ์ด๋ฅผ Lexical this๋ผ๊ณ  ํ•˜๋ฉฐ ํ•จ์ˆ˜๊ฐ€ ์„ ์–ธ๋˜ ์œ„์น˜์—์„œ์˜ this ๊ฐ’์„ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.
 
4. ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง ํ• ๋‹น(Destructuring Assignment)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
๊ตฌ์กฐ๋ถ„ํ•ด ํ• ๋‹น์ด๋ž€ ๋ฐฐ์—ด์ด๋‚˜ ๊ฐ์ฒด์˜ ๊ตฌ์กฐ๋ฅผ ๋ถ„ํ•ดํ•˜์—ฌ ๊ฐœ๋ณ„ ๋ณ€์ˆ˜์˜ ๊ฐ’์— ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋ฌธ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ตฌ์กฐ๋ถ„ํ•ด ํ• ๋‹น์„ ํ†ตํ•ด ํ•„์š”ํ•œ ๋ณ€์ˆ˜์˜ ๊ฐ’์— ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 
5. ํŽผ์นจ ์—ฐ์‚ฐ์ž(Spread Operator)์™€ ๋‚˜๋จธ์ง€ ๋งค๊ฐœ๋ณ€์ˆ˜(Rest Parameter)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
ํŽผ์นจ ์—ฐ์‚ฐ์ž๋Š” ๋ฐฐ์—ด์ด๋‚˜ ๊ฐ์ฒด์˜ ์š”์†Œ๋ฅผ ๊ฐœ๋ณ„์ ์ธ ๊ฐ’์œผ๋กœ ํŽผ์ณ์ฃผ๋ฉฐ, ๋‚˜๋จธ์ง€ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜์˜ ์ธ์ˆ˜๋“ค์„ ๋ฐฐ์—ด๋กœ ๋ฌถ์–ด์„œ ๋ฐ›์Šต๋‹ˆ๋‹ค.
 
6. Promise์™€ async/await์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
Promise๋Š” ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๊ฐ์ฒด๋กœ, .then(), .catch(), .finally() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ๋น„๋™๊ธฐ ์ž‘์—…์˜ ์„ฑ๊ณต, ์‹คํŒจ, ์™„๋ฃŒ ์ƒํƒœ์— ๋”ฐ๋ผ ๊ฐ๊ฐ์˜ ์ฝœ๋ฐฑ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ฝœ๋ฐฑ ์ง€์˜ฅ์„ ์ค„์ด๊ณ , ๋น„๋™๊ธฐ ์ž‘์—…์„ ์ข€ ๋” ์ฒด๊ณ„์ ์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
async/await๋Š” Promise๋ฅผ ๋งˆ์น˜ ๋™๊ธฐ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋ฌธ๋ฒ•์ž…๋‹ˆ๋‹ค. async ํ‚ค์›Œ๋“œ๋ฅผ ํ•จ์ˆ˜ ์•ž์— ๋ถ™์ด๊ณ , ํ•ด๋‹น ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ await ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Promise์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋น„๋™๊ธฐ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์„ ๋†’์ด๊ณ , ์ฝ”๋“œ๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์—ฌ์„œ ์ง๊ด€์ ์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 
7. Map๊ณผ Set์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
8. ES6 ๋ชจ๋“ˆ(Modules)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
9. ํด๋ž˜์Šค(Class)์™€ ์ƒ์„ฑ์ž(Constructor)์˜ ์—ญํ• ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
 
10. Symbol ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”

์›น ์„ฑ๋Šฅ ์ตœ์ ํ™” ๊ธฐ๋ฒ•์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
์ง€์—ฐ ๋กœ๋”ฉ(Lazy Loading)๊ณผ ์‚ฌ์ „ ๋กœ๋”ฉ(Prefetching)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ฝ”๋“œ ์Šคํ”Œ๋ฆฌํŒ…(Code Splitting)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ด๋ฏธ์ง€ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
์ค‘์š”ํ•œ ๋ Œ๋”๋ง ๊ฒฝ๋กœ(Critical Rendering Path)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์บ์‹ฑ(Caching)์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ์ข…๋ฅ˜์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
SSR(Server-Side Rendering)๊ณผ CSR(Client-Side Rendering)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์›นํŒฉ(Webpack)์—์„œ ํŠธ๋ฆฌ ์‰์ดํ‚น(Tree Shaking)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
Lighthouse๋ฅผ ์‚ฌ์šฉํ•œ ์›น ์„ฑ๋Šฅ ์ธก์ • ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
์ฝ˜ํ…์ธ  ์ „์†ก ๋„คํŠธ์›Œํฌ(CDN) ์ตœ์ ํ™”๋Š” ์–ด๋–ป๊ฒŒ ์ด๋ฃจ์–ด์ง€๋‚˜์š”?

 

๐Ÿ“Œ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ๋ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜

1. ๋ฐฐ์—ด(Array)๊ณผ ๊ฐ์ฒด(Object)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
2. ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ(Linked List)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
3. ์Šคํƒ(Stack)๊ณผ ํ(Queue)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
 
4. ํ•ด์‹œ ํ…Œ์ด๋ธ”(Hash Table)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
ํ•ด์‹œ ํ•จ์ˆ˜๋Š” ์ž„์˜์˜ ๊ธธ์ด์˜ ์ž…๋ ฅ๊ฐ’์„ ๊ณ ์ •๋œ ๊ธธ์ด์˜ ์ถœ๋ ฅ๊ฐ’์œผ๋กœ ๋ณ€ํ™”ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜์ด๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์„ฑ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•˜๋Š”๋ฐ ๋งŽ์ด ํ™œ์šฉ๋˜๋ฉฐ, ์˜ˆ์‹œ๋กœ๋Š” ํ•ด์‹œํ…Œ์ด๋ธ” ๋“ฑ์ด ์žˆ๋‹ค.
4-1)ํ•ด์‹œ ํ…Œ์ด๋ธ”
ํ•ด์‹œ ํ…Œ์ด๋ธ”์€ ๋ฐ์ดํ„ฐ๋ฅผ ํ‚ค-๊ฐ’ ์Œ์œผ๋กœ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋กœ, ํ‚ค ๊ฐ’์— ํ•ด์‹œํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜์—ฌ ๊ณ ์ •๋œ ํฌ๊ธฐ์˜ ํ•ด์‹œ๊ฐ’ ๋˜๋Š” index๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ํ•ด์‹œ๊ฐ’/index๋ฅผ ํ†ตํ•ด ๋ฐฐ์—ด์˜ ์ ์ ˆํ•œ ์œ„์น˜์— ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ, ๊ฒ€์ƒ‰, ์‚ญ์ œ ๋“ฑ์„ O(1)์˜ ์‹œ๊ฐ„๋ณต์žก๋„์— ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ค.
ํ•ด์‹œํ…Œ์ด๋ธ”์˜ ์ถฉ๋Œ
ํ•ด์‹œํ…Œ์ด๋ธ”์—์„œ๋Š” ๋™์ผํ•œ ํ•ด์‹œ ๊ฐ’์„ ๊ฐ€์ง„ ๋‘ ๊ฐœ ์ด์ƒ์˜ ํ‚ค๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•œ๋‹ค.
ํ•ด๊ฒฐ๋ฐฉ๋ฒ•1. ์ฒด์ด๋‹: ๊ฐ ๋ฒ„ํ‚ท(๋ฐฐ์—ด)์„ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๋กœ ๊ด€๋ฆฌํ•˜์—ฌ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ ์ƒˆ ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹
ํ•ด๊ฒฐ๋ฐฉ๋ฒ•2. ๊ฐœ๋ฐฉ ์ฃผ์†Œ๋ฒ•: ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•˜๋ฉด ํ•ด์‹œ ํ…Œ์ด๋ธ” ๋‚ด์˜ ๋‹ค๋ฅธ ๋นˆ ์Šฌ๋กฏ์„ ์ฐพ์•„ ํ‚ค-๊ฐ’ ์Œ์„ ์ฐพ์•„ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
4-2) ๋””์ง€ํ„ธ ์„ค๋ช…, ์•”ํ˜ธํ™”
ํ•ด์‹œํ•จ์ˆ˜๋Š” ์ถœ๋ ฅ๊ฐ’์œผ๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ๊ฐ’์„ ์œ ์ถ”ํ•˜๊ธฐ ํž˜๋“ค๋‹ค๋Š” ๋‹จ๋ฐฉํ–ฅ์„ฑ์˜ ํŠน์„ฑ์„ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ค ๊ฒ€์ฆ, ์•”ํ˜ธํ™”์—๋„ ๋งŽ์ด ํ™œ์šฉ๋œ๋‹ค. ๋””์ง€ํ„ธ ์„œ๋ช…๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ €์žฅ์„ ์˜ˆ์‹œ๋กœ ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
๋””์ง€ํ„ธ ์„œ๋ช…: ์„œ๋ช…ํ•  ๋ฉ”์‹œ์ง€์˜ ํ•ด์‹œ๊ฐ’์„ ๊ณ„์‚ฐํ•œ ํ›„, ์†ก์‹ ์ž์˜ ๊ฐœ์ธํ‚ค๋ฅผ ์ด์šฉํ•ด์„œ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๋””์ง€ํ„ธ ์„œ๋ช…์„ ๋งŒ๋“ ๋‹ค. ๋””์ง€ํ„ธ ์„œ๋ช… ๊ฒ€์ฆ์‹œ์—๋Š” ์†ก์‹ ์ž์˜ ๊ณต๊ฐœํ‚ค๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ณตํ˜ธํ™”ํ•œ ํ›„, ์›๋ณธ ๋ฉ”์‹œ์ง€์˜ ํ•ด์‹œ๊ฐ’๊ณผ ๋น„๊ตํ•œ๋‹ค.
๋น„๋ฐ€๋ฒˆํ˜ธ ์•”ํ˜ธํ™”: ์‚ฌ์šฉ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ง์ ‘ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋น„๋ฐ€๋ฒˆํ˜ธ์˜ ํ•ด์‹œ๊ฐ’์„ ์ €์žฅํ•˜์—ฌ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•œ๋‹ค.
 
๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS)๊ณผ ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ข…๋ฅ˜(๋ฒ„๋ธ”, ์„ ํƒ, ์‚ฝ์ž…, ํ€ต, ๋ณ‘ํ•ฉ)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
์ด์ง„ ๊ฒ€์ƒ‰(Binary Search)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
๋น…์˜ค ํ‘œ๊ธฐ๋ฒ•(Big-O Notation)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์žฌ๊ท€(Recursion)๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ธ์ œ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€์š”?
๋ฉ”๋ชจ์ด์ œ์ด์…˜(Memoization)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ๋„คํŠธ์›Œํฌ ๋ฐ ๋ณด์•ˆ

SSL/TLS์˜ ์—ญํ• ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
DNS(Domain Name System)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
TCP์™€ UDP์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
IP ์ฃผ์†Œ์™€ MAC ์ฃผ์†Œ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
5. XSS(Cross-Site Scripting)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
XSS ๊ณต๊ฒฉ์€ ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๊ณต๊ฒฉ์ž…๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” XSS ๊ณต๊ฒฉ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ์„ธ์…˜์„ ํƒˆ์ทจํ•˜๊ฑฐ๋‚˜, ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํ›”์น˜๊ณ , ์•…์„ฑ ์‚ฌ์ดํŠธ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜์‹œํ‚ค๋Š” ๋“ฑ์˜ ๊ณต๊ฒฉ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 
6. CSRF(Cross-Site Request Forgery)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
CSRF ๊ณต๊ฒฉ์€ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ํ›”์น˜๋Š” ๊ณต๊ฒฉ์œผ๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์˜๋„ํ•˜์ง€ ์•Š์€ ๊ณต๊ฒฉ์„ ํŠน์ • ์›น์‚ฌ์ดํŠธ์— ๋ณด๋‚ด๋„๋ก ์œ ๋„ํ•˜๋Š” ๊ณต๊ฒฉ์ž…๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” CSRF ๊ณต๊ฒฉ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์œผ๋กœ ์š”์ฒญ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๊ฐœ์ธ ์ •๋ณด๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๊ณ„์ • ์ •๋ณด๋ฅผ ํƒˆ์ทจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 
7. OAuth๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?
OAuth๋Š” ์ œ3์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ์— ์•ˆ์ „ํ•˜๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ํ”„๋กœํ† ์ฝœ์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์ด๋‚˜ ์™ธ๋ถ€ ์„œ๋น„์Šค์™€์˜ ์—ฐ๋™์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
ํด๋ผ์ด์–ธํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ์–ป๊ธฐ ์œ„ํ•ด ์ œ3์ž ์„œ๋น„์Šค์˜ ๊ถŒํ•œ ์„œ๋ฒ„๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ œ3์ž ์„œ๋น„์Šค์— ๋กœ๊ทธ์ธํ•œ ํ›„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋ฉด, ์ œ3์ž ์„œ๋น„์Šค๋Š” ์ธ๊ฐ€ ์ฝ”๋“œ๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ๋ฐœ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์ด ์ธ๊ฐ€ ์ฝ”๋“œ๋ฅผ ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•˜๊ณ , ์„œ๋ฒ„๋Š” ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ œ3์ž ์„œ๋น„์Šค์˜ ๊ถŒํ•œ ์„œ๋ฒ„์—์„œ ์•ก์„ธ์Šค ํ† ํฐ์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๊ฐ€ ์•ก์„ธ์Šค ํ† ํฐ์„ ๋ฐ›์œผ๋ฉด, ์ด๋ฅผ ์‚ฌ์šฉํ•ด ์ œ3์ž ์„œ๋น„์Šค์—์„œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ง์ ‘ ๋ฏผ๊ฐํ•œ ์ธ์ฆ ์ •๋ณด๋ฅผ ๋‹ค๋ฃจ์ง€ ์•Š๋„๋ก ํ•˜์—ฌ, ๋ณด์•ˆ์„ฑ๊ณผ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์˜ ์•ˆ์ „์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
 
8. JWT(JSON Web Token)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
JWT๋Š” JSON ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •๋ณด๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ „๋‹ฌํ•˜๋Š” ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ์ด๋ฏ€๋กœ ์„œ๋ฒ„์— ์ƒํƒœ๋ฅผ ์ €์žฅํ•  ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ, ์„œ๋ช…์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์‚ฌ์šฉ์ž ์ธ์ฆ์— ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๋ฅผ ํ† ํฐ์— ํฌํ•จํ•˜๊ณ  ์žˆ์–ด ์ธ์ฆ ์„œ๋ฒ„๋‚˜ DB์— ๋Œ€ํ•œ ์˜์กด์„ฑ์„ ์ค„์—ฌ ์œ ์—ฐํ•œ ์ธ์ฆ ๋ฐฉ์‹์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
 
9. MITM(Man-In-The-Middle) ๊ณต๊ฒฉ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
10. ๋ฐฉํ™”๋ฒฝ(Firewall)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“Œ๊ธฐํƒ€ ํ”„๋ก ํŠธ์—”๋“œ ๊ด€๋ จ ์งˆ๋ฌธ

1. ๊ฐ€์ƒ DOM(Virtual DOM)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
๊ฐ€์ƒ DOM์€ ์‹ค์ œ DOM(Document Object Model, HTML ๋ฐ XML ๋ฌธ์„œ์˜ ๊ตฌ์กฐ๋ฅผ ํ‘œํ˜„)์„ ์ถ”์ƒํ™”ํ•œ ๊ฐœ๋…์œผ๋กœ, ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์— ๊ฐ€์ƒ์œผ๋กœ ์กด์žฌํ•˜๋Š” DOM์ž…๋‹ˆ๋‹ค. ์›น ํŽ˜์ด์ง€์— ์ƒํƒœ ๋ณ€ํ™”๊ฐ€ ์ผ์–ด๋‚  ๋•Œ๋งˆ๋‹ค ์‹ค์ œ DOM์„ ์กฐ์ž‘ํ•˜๋Š” ๋Œ€์‹  ๋ฉ”๋ชจ๋ฆฌ์— ์กด์žฌํ•˜๋Š” ๊ฐ€์ƒ DOM์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๊ธฐ ์ „์— ์ด์ „์˜ ๊ฐ€์ƒ DOM๊ณผ ๋น„๊ตํ•˜์—ฌ ์‹ค์ œ๋กœ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์ฐพ์•„๋‚ด ์‹ค์ œ DOM์— ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
 
2. ๋ฆฌ์•กํŠธ์˜ ์ƒํƒœ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
1) Context API๋Š” React์˜ ๋‚ด์žฅ API๋กœ context๋ฅผ ์ƒ์„ฑํ•˜๊ณ  Provider๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋ฉด ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ์—์„œ useContext๋ฅผ ํ†ตํ•ด์„œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งค์šฐ ๋‹จ์ˆœํ•˜์ง€๋งŒ, Provider๋ฅผ ํ†ตํ•ด์„œ ๋‚ด๋ณด๋‚ด๋Š” ๋ฐ์ดํ„ฐ ์ค‘ ํ•˜๋‚˜๋งŒ ๋ณ€๊ฒฝ๋˜๋”๋ผ๋„ ์ด๋ฅผ ๊ตฌ๋…ํ•˜๊ณ  ์žˆ๋Š” ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ชจ๋‘ ๋ฆฌ๋ Œ๋”๋ง ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. Context๋ฅผ ๋ถ„๋ฆฌํ•จ์œผ๋กœ์จ ์ด๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทผ๋ณธ์ ์œผ๋กœ ์ƒํƒœ๊ฐ€ ์ž์ฃผ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๋‚˜ ๋งค์šฐ ๊ฐ„๋‹จํ•œ props drilling ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•˜๋‹ค.
2) Redux๋Š” ๋งค์šฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, Flux ํŒจํ„ด์„ ํ†ตํ•ด ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ฐ•์กฐํ•œ๋‹ค. (action > dispatcher > store > view)
3) Recoil, Zustand ๋“ฑ 
 
3. ๋ฆฌ๋•์Šค(Redux)์˜ ๊ธฐ๋ณธ ์›์น™์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
Redux๋Š” Flux ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜๋ฉฐ ์ด๋Š” ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ฐ•์กฐํ•˜๋Š” ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ action์ด ๋ฐœ์ƒํ•˜๋ฉด dispatcher์— ์ „๋‹ฌ๋˜๊ณ , dispatcher๋Š” store(model)๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ์ตœ์ข…์ ์œผ๋กœ view์— ๋ฐ˜์˜๋˜๋Š” ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.
 
4. Next.js์™€ Gatsby.js์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
5. ๋ฐ˜์‘ํ˜• ์›น ๋””์ž์ธ(Responsive Web Design)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
6. Progressive Web App(PWA)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
7. ๋ชจ๋…ธ๋ ˆํฌ(Monorepo)์™€ ๋ฉ€ํ‹ฐ๋ ˆํฌ(Multirepo)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
8. ์›น ์†Œ์ผ“(WebSocket)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
WebSocket์€ ์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ ๊ฐ„์— ์–‘๋ฐฉํ–ฅ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ด์ฃผ๋Š” ํ”„๋กœํ† ์ฝœ์ž…๋‹ˆ๋‹ค. HTTP ์š”์ฒญ๊ณผ ๋‹ฌ๋ฆฌ ์—ฐ๊ฒฐ์ด ์ˆ˜๋ฆฝ๋œ ํ›„์—๋„ ์ง€์†๋˜๋ฉฐ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ์ด ์œ ์ง€๋˜๋ฏ€๋กœ ๋งค๋ฒˆ ์ƒˆ๋กœ์šด HTTP ์š”์ฒญ์„ ๋ณด๋‚ด์ง€ ์•Š๊ณ ๋„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด, ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…, ์ฃผ์‹ ๊ฐ€๊ฒฉ ์—…๋ฐ์ดํŠธ ๋“ฑ๊ณผ ๊ฐ™์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
 
9. Server-Sent Events(SSE)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
SSE๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—์„œ ์ผ๋ฐฉ์ ์œผ๋กœ Push ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” HTTP ๊ธฐ๋ฐ˜์˜ ํ†ต์‹  ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. WebSocket๊ณผ๋Š” ๋‹ฌ๋ฆฌ SSE๋Š” ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ๋กœ ์ผ๋ฐฉํ–ฅ ํ†ต์‹ ๋งŒ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ๋‰ด์Šค ํ”ผ๋“œ ์—…๋ฐ์ดํŠธ๋‚˜ ์•Œ๋ฆผ ์ „์†ก ๋“ฑ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ž์ฃผ ๊ฐฑ์‹ ๋  ํ•„์š”๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.
(SSE๋Š” HTTP ๊ธฐ๋ฐ˜ ๋‹จ๋ฐฉํ–ฅ ์ŠคํŠธ๋ฆฌ๋ฐ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋Œ€์ ์œผ๋กœ ์ ์€ ์„œ๋ฒ„ ์ž์›์„ ์†Œ๋ชจํ•˜๋ฉฐ, ์„œ๋ฒ„ ์ธก์—์„œ ๋งŽ์€ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ง€์†์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘ธ์‹œํ•˜๋Š” ์ˆ˜ํ‰์  ํ™•์žฅ์— ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.)
 
10. WebRTC์˜ ์—ญํ• ๊ณผ ์‚ฌ์šฉ ์‚ฌ๋ก€๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?
WebRTC(Web Real-Time Communication)์€ ์‹ค์‹œ๊ฐ„ ๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆฌ๋ฐ๊ณผ ๋ฐ์ดํ„ฐ ๊ตํ™˜์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. WebRTC๋Š” ์ฃผ๋กœ ํ™”์ƒ ํ†ตํ™”, ์Œ์„ฑ ํ†ตํ™”, ์‹ค์‹œ๊ฐ„ ์˜จ๋ผ์ธ ํ˜‘์—… ๋“ฑ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, WebRTC๋Š” ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „์†ก์ด ํ•„์š”ํ•  ๋•Œ ๊ณ ํ’ˆ์งˆ, ์ €์ง€์—ฐ์˜ ํ†ต์‹ ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
 
์ •๋ฆฌํ•˜๋ฉด, webSocket, SSE, webRTC ๋ชจ๋‘ ์‹ค์‹œ๊ฐ„ ํ†ต์‹ ์„ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ์ด๋ฉฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ๋ถ„ ํ†ต์‹  ๋ฐฉํ–ฅ ํ”„๋กœํ† ์ฝœ ์‚ฌ์šฉ ์‚ฌ๋ก€
WebSocket ์–‘๋ฐฉํ–ฅ(์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ) WebSocket ์ฑ„ํŒ…, ์‹ค์‹œ๊ฐ„ ์ฃผ์‹ ์—…๋ฐ์ดํŠธ
SSE ๋‹จ๋ฐฉํ–ฅ(์„œ๋ฒ„>ํด๋ผ์ด์–ธํŠธ) HTTP ์•Œ๋ฆผ ํ‘ธ์‹œ
WebRTC ์–‘๋ฐฉํ–ฅ(ํด๋ผ์ด์–ธํŠธ ๊ฐ„) TCP/UDP ๊ธฐ๋ฐ˜์˜ ํ”„๋กœํ† ์ฝœ๋กœ ๋ฏธ๋””์–ด ์ „์†ก, ๋‚ด๋ถ€์ ์œผ๋กœ signal ํ†ต๋กœ๋กœ webSocket ์‚ฌ์šฉ ์‹ค์‹œ๊ฐ„ ํ™”์ƒ ํšŒ์˜
(ํ™”์ƒ ํ†ต์‹ , ์Œ์„ฑ ํ†ต์‹ )

 
11. React์™€ Vue์˜ ์ฐจ์ด
์ฒซ์งธ๋กœ, React๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, Vue๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ React๊ฐ€ Vue์— ๋น„ํ•ด ์ž์œ ๋„๊ฐ€ ๋†’์Šต๋‹ˆ๋‹ค.(๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๊ฐœ๋ฐœ์˜ ์ฃผ๋„๊ถŒ์ด ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์žˆ๊ณ , ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ฐœ๋ฐœ์˜ ์ฃผ๋„๊ถŒ์ด ํ”„๋ ˆ์ž„์›Œํฌ์— ์žˆ์Šต๋‹ˆ๋‹ค.)
๋‘˜์งธ๋กœ, React๋Š” ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์‚ฌ์šฉํ•˜๊ณ  Vue๋Š” ์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. React๋Š” ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ์‹œ state๋ฅผ ํ†ตํ•ด UI๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜์ง€๋งŒ, Vue๋Š” ๊ฐ’ ๋Œ€์ž…๋งŒ์œผ๋กœ๋„ ๋ณ€์ˆ˜๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด UI์— ์ž๋™์œผ๋กœ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค. (์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์œผ๋กœ ๋ฐ์ดํ„ฐ์˜ ๋ณ€๊ฒฝ์ด ๋‹ค๋ฅธ ์ปดํฌ๋„ŒํŠธ์— ๋น ๋ฅด๊ฒŒ ๋ฐ˜์˜๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์— ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.)
์…‹์งธ๋กœ, Vue๊ฐ€ React์— ๋น„ํ•ด ์†๋„๊ฐ€ ๋น ๋ฆ…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์— ์˜ํ–ฅ์„ ๋ฏธ์น ์ •๋„๋Š” ์•„๋‹ˆ์ง€๋งŒ ๋ฏธ์„ธํ•˜๊ฒŒ ๋น ๋ฅด๋ฉฐ ๋”ฐ๋ผ์„œ ๋น„ํŠธ์ฝ”์ธ ๊ฑฐ๋ž˜ ์‚ฌ์ดํŠธ ๋“ฑ์— Vue๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
 

๐Ÿ“Œ์„œ๋ฒ„์™€ ๋„คํŠธ์›Œํฌ ๊ธฐ๋ณธ ๊ฐœ๋…

์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

HTTP์™€ HTTPS์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

HTTP ์ƒํƒœ ์ฝ”๋“œ(200, 301, 404, 500 ๋“ฑ)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.

HTTP ๋ฉ”์„œ๋“œ(GET, POST, PUT, DELETE ๋“ฑ)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.

 

5. REST์™€ RESTful API๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

REST๋ž€ url๋กœ ์ž์›์„ ๊ตฌ๋ถ„ํ•˜๊ณ , HTTP method๋กœ ์ž์›์— ๋Œ€ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ๋กœ, RESTful API๋Š” REST๋ฅผ ๋”ฐ๋ฅด๋Š” api์ž…๋‹ˆ๋‹ค. RESTful API๋ฅผ ํ†ตํ•ด์„œ ์ž์›์„ ๊ด€๋ฆฌํ•  ๋•Œ ์ผ๊ด€๋˜๊ณ  ์ง๊ด€์ ์œผ๋กœ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

REST์™€ SOAP์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

GraphQL์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ, REST API์™€์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

API ๊ฒŒ์ดํŠธ์›จ์ด(API Gateway)์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

9. CORS(Cross-Origin Resource Sharing)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

๋ธŒ๋ผ์šฐ์ €๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ SOP(Same Origin Policy)๋ฅผ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋™์ผํ•œ ์ถœ์ฒ˜๋ผ๋ฆฌ๋งŒ ๋ฆฌ์†Œ๋ฅด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CORS(Cross-Origin Resource Sharing)์ด๋ž€ ๋‹ค๋ฅธ ์ถœ์ฒ˜๋ผ๋ฆฌ ๋ฆฌ์†Œ์Šค ๊ณต์œ ๋ฅผ ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ์ œํ•œํ•˜๋Š” ์ •์ฑ…์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

 

ํ”„๋ก์‹œ ์„œ๋ฒ„์™€ ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

1. SQL๊ณผ NoSQL์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
2. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
3. ํŠธ๋žœ์žญ์…˜์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
4. ACID ์†์„ฑ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
5. ์ธ๋ฑ์Šค๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?
DB์—์„œ ์ธ๋ฑ์Šค๋ž€ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ํ…Œ์ด๋ธ”์—์„œ ํŠน์ • ์—ด์„ ๊ธฐ์ค€์œผ๋กœ ์กฐ๊ฑด์„ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์ธ๋ฑ์Šค๊ฐ€ ์—†๋‹ค๋ฉด ํ…Œ์ด๋ธ”์˜ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํƒ์ƒ‰ํ•˜๋Š” full table scan์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ธ๋ฑ์Šค๋Š” ๊ฒ€์ƒ‰ํ•˜๊ณ ์ž ํ•˜๋Š” ์—ด์— ๋Œ€ํ•œ ๋ณ„๋„์˜ ์ž๋ฃŒ๊ตฌ์กฐ(B-Tree๋‚˜ Hash ๊ตฌ์กฐ)๋ฅผ ์ƒ์„ฑํ•ด๋‘์–ด ๊ฒ€์ƒ‰ ์‹œ์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฐพ์•„๋ƒ…๋‹ˆ๋‹ค.
*B-Tree๋ž€ ์ด์ง„ ํŠธ๋ฆฌ๋ฅผ ํ™•์žฅํ•ด ํ•˜๋‚˜์˜ ๋…ธ๋“œ๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ž์‹ ๋…ธ๋“œ์˜ ์ตœ๋Œ€ ์ˆซ์ž๊ฐ€ 2๋ณด๋‹ค ํฐ ํŠธ๋ฆฌ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ท ํ˜• ํŠธ๋ฆฌ๋กœ ๋ฆฌํ”„ ๋…ธ๋“œ๋“ค์˜ ๋ ˆ๋ฒจ ์ฐจ์ด๊ฐ€ 1์ดํ•˜์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ท ํ˜• ์žกํžŒ ํŠธ๋ฆฌ๊ตฌ์กฐ์˜ ํŠน์„ฑ๊ณผ ๋Œ€์ˆ˜ํ™•์žฅ์„ฑ์ด B-Tree์˜ ์ž๋ฃŒ ํƒ์ƒ‰์„ ํšจ์œจ์ ์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
B-Tree๋Š” ๊ท ํ˜• ํŠธ๋ฆฌ์˜ ํŠน์„ฑ์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ๋ฆฌํ”„ ๋…ธ๋“œ๋Š” ๋น„์Šทํ•œ ๊นŠ์ด์— ์œ„์น˜ํ•˜์—ฌ ํŠน์ • ๊ฐ’์„ ์ฐพ์„ ๋•Œ ์ตœ์•…์˜ ๊ฒฝ์šฐ์—๋„ ๋น„์Šทํ•œ ๊นŠ์ด์—์„œ ํƒ์ƒ‰์ด ์ข…๋ฃŒ๋˜์–ด ์ผ์ •ํ•œ ์„ฑ๋Šฅ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ B-Tree๋Š” ๋ฐ์ดํ„ฐ์˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก ๋ถ„์‚ฐ๋˜์–ด ํŠธ๋ฆฌ์˜ ๊นŠ์ด๊ฐ€ ์ฒœ์ฒœํžˆ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
 
6. ์กฐ์ธ(Join)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? (INNER JOIN, LEFT JOIN ๋“ฑ)
7. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
8. 1์ฐจ ์ •๊ทœํ™”, 2์ฐจ ์ •๊ทœํ™”, 3์ฐจ ์ •๊ทœํ™”์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
9. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒค๋”ฉ(Sharding)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
10. ์บ์‹ฑ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฆฌํ”Œ๋ฆฌ์ผ€์ด์…˜(Replication)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“Œ์บ์‹œ์™€ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ

  1. ์บ์‹œ(Cache)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. Redis์™€ Memcached์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. TTL(Time to Live)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. ์บ์‹œ ์ ์ค‘(Cache Hit)๊ณผ ์บ์‹œ ๋ฏธ์Šค(Cache Miss)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. CDN(Content Delivery Network)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  6. ๋กœ์ปฌ ์บ์‹œ์™€ ๋ถ„์‚ฐ ์บ์‹œ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  7. LRU(Least Recently Used) ์บ์‹ฑ ์ •์ฑ…์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. ์บ์‹œ์˜ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. ์“ฐ๋ฃจ ์บ์‹œ(Through Cache)์™€ ๋ผ์ดํŠธ ๋น„ํ•˜์ธ๋“œ ์บ์‹œ(Write-Behind Cache)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  10. ์บ์‹œ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ๋ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜

  1. ๋ฐฐ์—ด(Array)์™€ ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ(Linked List)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. ์Šคํƒ(Stack)๊ณผ ํ(Queue)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. ํ•ด์‹œ ํ…Œ์ด๋ธ”(Hash Table)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. ์ด์ง„ ํŠธ๋ฆฌ(Binary Tree)์™€ ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ(Binary Search Tree)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS)๊ณผ ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  6. ํ€ต ์ •๋ ฌ(Quick Sort)๊ณผ ๋ณ‘ํ•ฉ ์ •๋ ฌ(Merge Sort)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  7. ์ด์ง„ ๊ฒ€์ƒ‰(Binary Search)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. ํž™(Heap)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. ํ•ด์‹œ ์ถฉ๋Œ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  10. ๋น…์˜ค ํ‘œ๊ธฐ๋ฒ•(Big-O Notation)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ๋ณด์•ˆ

1. SSL/TLS์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
2. ํ•ด์‹ฑ(Hashing)๊ณผ ์•”ํ˜ธํ™”(Encryption)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
3. ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”์™€ ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
4. HTTPS๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ณด์•ˆ์„ ์ œ๊ณตํ•˜๋Š”์ง€ ์„ค๋ช…ํ•˜์„ธ์š”.
 
5. XSS(Cross-Site Scripting)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
XSS ๊ณต๊ฒฉ์ด๋ž€ ์›น ์‚ฌ์ดํŠธ์— ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ฃผ์ž…ํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์˜๋„ํ•˜์ง€ ์•Š์€ ๋™์ž‘์ด๋‚˜ ์•…์˜์ ์ธ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์œ ๋„ํ•˜๋Š” ๊ณต๊ฒฉ์ด๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ณต๊ฒฉ์ž๊ฐ€ ์‚ฌ์šฉ์ž์˜ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ํƒˆ์ทจํ•  ์ˆ˜ ์žˆ๋‹ค.
 
6. CSRF(Cross-Site Request Forgery)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
CSRF ๊ณต๊ฒฉ์€ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ํƒˆ์ทจํ•˜๋Š” ๊ณต๊ฒฉ์œผ๋กœ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์œผ๋กœ ์•…์„ฑ ์‚ฌ์ดํŠธ์— ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ณต๊ฒฉ์ด๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ์•…์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
 
7. SQL Injection ๊ณต๊ฒฉ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
8. JWT(JSON Web Token)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
JWT๋ž€ ์‚ฌ์šฉ์ž ์ธ์ฆ์ •๋ณด๋ฅผ JSON ํ˜•ํƒœ๋กœ ์•”ํ˜ธํ™”ํ•œ ํ† ํฐ์œผ๋กœ Header, Payload, Signature๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. JWT๋Š” ์ฃผ๋กœ ์‚ฌ์šฉ์ž ์ธ์ฆ๊ณผ ๊ถŒํ•œ ๋ถ€์—ฌ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. (๋กœ๊ทธ์ธ ํ›„ ํด๋ผ์ด์–ธํŠธ์— JWT๋ฅผ ๋ฐœ๊ธ‰ํ•˜๋ฉด, ์ดํ›„ API ์š”์ฒญ์‹œ์— Authorization ํ—ค๋”์— ํ† ํฐ์„ ํฌํ•จํ•ด ์ธ์ฆํ•œ๋‹ค.)
 
9. OAuth๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?
OAuth๋ž€ ์‚ฌ์šฉ์ž๊ฐ€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์ง€ ์•Š๊ณ ๋„ ์ œ3์ž ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ์ธ์ฆ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ OAuth๋ฅผ ์š”์ฒญํ•˜๋ฉด ์ œ3์ž ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜๋˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ•˜์—ฌ ์ ‘๊ทผ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ๋กœ ์ธ๊ฐ€์ฝ”๋“œ๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ์ด ์ธ๊ฐ€์ฝ”๋“œ๋ฅผ ๋ฐฑ์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๋ฉด, ๋ฐฑ์„œ๋ฒ„๊ฐ€ ์ธ๊ฐ€์ฝ”๋“œ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ •๋ณด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
 
10. MITM(Man-In-The-Middle) ๊ณต๊ฒฉ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“Œ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜

  1. ๋ชจ๋†€๋ฆฌ์‹(Monolithic) ์•„ํ‚คํ…์ฒ˜์™€ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค(Microservices) ์•„ํ‚คํ…์ฒ˜์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ(Load Balancer)์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. ์„œ๋ฒ„๋ฆฌ์Šค(Serverless)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. CAP ์ด๋ก ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. CQRS(Command Query Responsibility Segregation)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  6. ์ด๋ฒคํŠธ ์†Œ์‹ฑ(Event Sourcing)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  7. API Rate Limiting์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. ์žฅ์•  ์กฐ์น˜(Failover)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. ๋ฐฑํ”„๋ ˆ์…”(Backpressure)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  10. ํšŒ๋กœ ์ฐจ๋‹จ๊ธฐ(Circuit Breaker) ํŒจํ„ด์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…

1. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

ํด๋ผ์šฐ๋“œ(Cloud)๋Š” ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์ƒํ™”๋œ ์„œ๋ฒ„์™€ ๊ทธ ์„œ๋ฒ„์—์„œ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” IT ํ™˜๊ฒฝ์„ ์˜๋ฏธํ•œ๋‹ค.

1) ๋น„์šฉ ํšจ์œจ์„ฑ

์ดˆ๊ธฐ ํˆฌ์ž ๋น„์šฉ์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. ์ดˆ๊ธฐ ์‹œ์Šคํ…œ ๊ตฌ์ถ•์ด ํ•„์š”ํ•œ ์˜จํ”„๋ ˆ๋ฏธ์Šค์™€ ๋‹ฌ๋ฆฌ ํด๋ผ์šฐ๋“œ๋Š” ์‚ฌ์šฉํ•œ๋งŒํผ๋งŒ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋ฉด ๋˜๋ฏ€๋กœ ์ดˆ๊ธฐ ํˆฌ์ž ๋น„์šฉ์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ํด๋ผ์šฐ๋“œ๋Š” ์ง€์†์ ์ธ ์„œ๋น„์Šค ์ด์šฉ๋ฃŒ๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„์šฉ ํšจ์œจ์„ฑ์€ ํ”„๋กœ์ ํŠธ์˜ ๊ธฐ๊ฐ„(๋‹จ/์žฅ๊ธฐ)์ด๋‚˜ ๊ทœ๋ชจ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๋‹ค.

2) ํ™•์žฅ์„ฑ

ํด๋ผ์šฐ๋“œ๋Š” ํ•„์š”์— ๋”ฐ๋ผ ์ž์›์„ ์‰ฝ๊ฒŒ ํ™•์žฅํ•˜๊ฑฐ๋‚˜ ์ถ•์†Œํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•˜๋Š” ์‹œ์žฅ์— ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

3) ๋ณด์•ˆ์„ฑ

์˜จํ”„๋ ˆ๋ฏธ์Šค๋Š” ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์™„์ „ํ•œ ํ†ต์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ ์˜จํ”„๋ ˆ๋ฏธ์Šค๊ฐ€ ์œ ๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

*ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ชจ๋ธ๋„ ๊ณ ๋ คํ•ด๋ณผ ๋งŒํ•˜๋‹ค. ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋Š” ์˜จํ”„๋ ˆ๋ฏธ์Šค์— ๋‘๊ณ , ์œ ์—ฐํ•œ ํ™•์žฅ์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„์€ ํด๋ผ์šฐ๋“œ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

 

2. SaaS, PaaS, IaaS, ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

SaaS๋Š” ์™„์„ฑ๋œ ์†Œํ”„ํŠธ์›จ์–ด๋กœ, ํด๋ผ์šฐ๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„œ๋น„์Šค ํ˜•ํƒœ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.

PaaS๋Š” ๊ฐœ๋ฐœ ํ”Œ๋žซํผ์„ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋กœ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœ, ์‹คํ–‰, ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

IaaS๋Š” ์ธํ”„๋ผ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋กœ, ๋ฌผ๋ฆฌ์  ์ธํ”„๋ผ๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ๊ฐ€์ƒํ™”๋œ ์ž์›์„ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

 

7. ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ(Cloud Native)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

Cloud Native๋ž€ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋œ์–ด ์„ค๊ณ„๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค๋ฅผ ์˜๋งˆํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ์˜ ํ•ต์‹ฌ ๊ธฐ์ˆ ๋กœ ์ปจํ…Œ์ด๋„ˆ, MSA, DevOps, CI/CD ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

  1. ๊ฐ€์ƒ ๋จธ์‹ (Virtual Machine)๊ณผ ์ปจํ…Œ์ด๋„ˆ(Container)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. AWS, GCP, Azure์™€ ๊ฐ™์€ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์˜ ์ฃผ์š” ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
  3. ์˜คํ† ์Šค์ผ€์ผ๋ง(Auto Scaling)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. ์„œ๋ฒ„๋ฆฌ์Šค ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. S3์™€ ๊ฐ™์€ ๊ฐ์ฒด ์Šคํ† ๋ฆฌ์ง€(Object Storage)์˜ ํŠน์ง•์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  6. ์ปจํ…Œ์ด๋„ˆ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? (์˜ˆ: Kubernetes)
  7. ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ(Multi-Cloud)์™€ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ(Hybrid Cloud)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„ ๋ฐ ์›์น™

  1. SOLID ์›์น™์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. MVC ํŒจํ„ด์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. ์‹ฑ๊ธ€ํ†ค(Singleton) ํŒจํ„ด์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. ํŒฉํ† ๋ฆฌ ํŒจํ„ด(Factory Pattern)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํŒจํ„ด(Repository Pattern)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  6. ์˜์กด์„ฑ ์ฃผ์ž…(Dependency Injection)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  7. ๋„๋ฉ”์ธ ์ฃผ๋„ ์„ค๊ณ„(DDD)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. TDD(Test-Driven Development)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  10. ํŽ˜์–ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Pair Programming)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ์šด์˜ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง

  1. ๋กœ๊น…(logging)๊ณผ ๋ชจ๋‹ˆํ„ฐ๋ง(monitoring)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  2. APM(Application Performance Monitoring)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  3. SLA(Service Level Agreement)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  4. MTTF, MTTR, MTBF๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  5. ๋กœ๊ทธ ๊ด€๋ฆฌ ๋„๊ตฌ(์˜ˆ: ELK Stack)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
  6. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  7. ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ(Deployment Pipeline)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  8. ๋ธ”๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ(Blue-Green Deployment)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  9. ์ง€์†์  ํ†ตํ•ฉ(Continuous Integration)๊ณผ ์ง€์†์  ๋ฐฐํฌ(Continuous Deployment)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
  10. ์นด๋‚˜๋ฆฌ์•„ ๋ฐฐํฌ(Canary Deployment)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

 

๐Ÿ“Œ๊ธฐํƒ€ ๋ฐฑ์—”๋“œ ๊ด€๋ จ ์งˆ๋ฌธ

1. ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ๊ณผ ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค๋กœ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด๋ฉฐ, ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ์€ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค ๋‚ด์—์„œ ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๋กœ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

  • ํ”„๋กœ์„ธ์Šค๋Š” ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ ๋‹จ์œ„๋กœ, ๊ฐ๊ฐ ๋…๋ฆฝ์ ์ธ ๋ฐ์ดํ„ฐ, ์ฝ”๋“œ, ํž™, ์Šคํƒ ์˜์—ญ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
  • ์Šค๋ ˆ๋“œ๋Š” ํ”„๋กœ์„ธ์Šค ๋‚ด๋ถ€์˜ ์ž‘์—… ํ๋ฆ„์œผ๋กœ, ๋ฐ์ดํ„ฐ, ์ฝ”๋“œ, ํž™ ์˜์—ญ์€ ๊ณต์œ ํ•˜๊ณ , ์Šคํƒ ์˜์—ญ์€ ๋…๋ฆฝ์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ๋ฉ”๋ชจ๋ฆฌ ํ™œ์šฉ ํšจ์œจ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ํ•œ ์Šค๋ ˆ๋“œ๊ฐ€ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ์†์ƒ์‹œํ‚ค๋ฉด ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ์—๋„ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 
2. ๋™๊ธฐ(synchronous)์™€ ๋น„๋™๊ธฐ(asynchronous)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
3. ๋ธ”๋กœํ‚น(Blocking)๊ณผ ๋…ผ๋ธ”๋กœํ‚น(Non-blocking)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
4. ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜(Event-Driven) ์•„ํ‚คํ…์ฒ˜๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
5. ์›น ์†Œ์ผ“(WebSocket)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
6. ๋ฉ”์‹œ์ง€ ํ(Message Queue)๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
7. Redis์™€ Kafka์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
8. gRPC๋ž€ ๋ฌด์—‡์ด๋ฉฐ, REST API์™€์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
9. ์†Œ์ผ“(Socket)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
10. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ ํ’€๋ง(Database Connection Pooling)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 

๐Ÿ“ŒJava ๊ธฐ๋ณธ ๊ฐœ๋…

1. Java์˜ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•(Primitive Data Types)์—๋Š” ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?
 
2. ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(OOP)๋ž€ ๋ฌด์—‡์ด๋ฉฐ, Java์—์„œ ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋‚˜์š”?
๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Object-Oriented Programming)์ด๋ž€ ํ˜„์‹ค ์„ธ๊ณ„์˜ ๊ฐœ๋…์„ ๊ฐ์ฒด๋กœ ๋ชจ๋ธ๋งํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก ์ด๋‹ค. ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ๋ฅผ ํ•˜๋‚˜๋กœ ๋ฌถ๊ณ , ์ถ”์ƒํ™”, ์บก์Šํ™”, ์ƒ์†, ๋‹คํ˜•์„ฑ์˜ ํŠน์ง•์„ ๊ฐ–๋Š”๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๊ณ , ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ด๋ฉฐ, ์ง๊ด€์ ์ธ ์„ค๊ณ„๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ค.

  • 1) ์ถ”์ƒํ™”: ๋ณต์žกํ•œ ๊ฐœ๋…์„ ๊ฐ์ถ”๊ณ  ํ•ต์‹ฌ๋งŒ ๋“œ๋Ÿฌ๋ƒ„
  • 2) ์บก์Šํ™”: ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ๋ฅผ ๋ฌถ๊ณ  ์ผ๋ถ€๋งŒ ์™ธ๋ถ€์— ๋“œ๋Ÿฌ๋‚ด ์€๋‹‰ํ•จ
  • 3) ์ƒ์†: ์ƒ์œ„ ํด๋ž˜์Šค์™€ ํŠน์„ฑ์„ ํ•˜์œ„ ํด๋ž˜์Šค๊ฐ€ ์ด์–ด ๋ฐ›์•„ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ, ๊ณ„์ธต์  ๊ตฌ์กฐ, ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ์ด๋Œ์–ด๋ƒ„
  • 4) ๋‹คํ˜•์„ฑ: ํ•˜๋‚˜์˜ ํ•จ์ˆ˜๋‚˜ ํด๋ž˜์Šค๊ฐ€ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ(์˜ค๋ฒ„๋กœ๋”ฉ, ์˜ค๋ฒ„๋ผ์ด๋”ฉ)

 
3. ํด๋ž˜์Šค(Class)์™€ ๊ฐ์ฒด(Object)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
4. Java์—์„œ ์ƒ์†(Inheritance)์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ, ๊ทธ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์ƒ์œ„ํด๋ž˜์Šค์˜ ํŠน์„ฑ์„ ํ•˜์œ„ํด๋ž˜์Šค๊ฐ€ ๋ฌผ๋ ค๋ฐ›์•„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ƒ์†์„ ํ†ตํ•ด ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ, ๊ณ„์ธต์  ๊ตฌ์กฐ์˜ ํ˜•์„ฑ, ์œ ์ง€๋ณด์ˆ˜์„ฑ์˜ ์žฅ์ ์„ ์ œ๊ณตํ•œ๋‹ค. ์ฆ‰, ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์ƒ์œ„ ํด๋ž˜์Šค์˜ ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•˜๊ฑฐ๋‚˜ ํ™•์žฅํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
 
5. ์˜ค๋ฒ„๋กœ๋”ฉ(Overloading)๊ณผ ์˜ค๋ฒ„๋ผ์ด๋”ฉ(Overriding)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
์˜ค๋ฒ„๋กœ๋”ฉ๊ณผ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์€ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋‹คํ˜•์„ฑ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ์˜ค๋ฒ„๋กœ๋”ฉ์€ ๋™์ผํ•œ ์ด๋ฆ„์˜ ๋ฉ”์„œ๋“œ๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜๋‚˜ ํƒ€์ž…์„ ๋‹ค๋ฅด๊ฒŒ ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฒˆ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์˜ค๋ฒ„๋ผ์ด๋”ฉ์€ ์ƒ์œ„ ํด๋ž˜์Šค์—์„œ ์ •์˜ํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์žฌ์ •์˜ํ•˜์—ฌ ๋™์ž‘์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

  ์˜ค๋ฒ„๋กœ๋”ฉ ์˜ค๋ฒ„๋ผ์ด๋”ฉ
๊ณตํ†ต์  ๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋‹คํ˜•์„ฑ์„ ๊ตฌํ˜„ํ•˜๋Š” 2๊ฐ€์ง€ ๋ฐฉ์‹
์ฐจ์ด์  ๋™์ผํ•œ ์ด๋ฆ„์˜ ๋ฉ”์„œ๋“œ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ํƒ€์ž…๊ณผ ๊ฐœ์ˆ˜๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฒˆ ์ •์˜ํ•˜๋Š” ๊ฒƒ ์ƒ์œ„ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋ฅผ ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์žฌ์ •์˜ํ•˜์—ฌ ๋™์ž‘์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ

 
6. ์ ‘๊ทผ ์ œ์–ด์ž(Access Modifiers)์—๋Š” ์–ด๋–ค ์ข…๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ทธ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
7. ์ถ”์ƒ ํด๋ž˜์Šค(Abstract Class)์™€ ์ธํ„ฐํŽ˜์ด์Šค(Interface)์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
8. Java์˜ main ๋ฉ”์„œ๋“œ์˜ ์‹œ๊ทธ๋‹ˆ์ฒ˜์™€ ์—ญํ• ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜์„ธ์š”.
 
9. Java์—์„œ ํŒจํ‚ค์ง€(Package)์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
 
10 . Java์˜ ์ปดํŒŒ์ผ๋Ÿฌ์™€ JVM(Java Virtual Machine)์˜ ์—ญํ• ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
JVM์€ ์ปดํŒŒ์ผ๋œ Java bytecode๋ฅผ OS์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. (Java๋Š” ํ”Œ๋žซํผ ๋…๋ฆฝ์ )
JVM์€ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉฐ ๊ทธ ์ค‘์—์„œ๋„ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜์€ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ์ž๋™ํ™”ํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น๊ณผ ํ•ด์ œ์— ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•„๋„ ๋˜๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค. 
JVM์€ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ young generation๊ณผ old generation์œผ๋กœ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. young generation์€ ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑ๋œ ๊ฐ์ฒด๊ฐ€ ํ• ๋‹น๋˜๋Š” ์˜์—ญ์ด๊ณ , old generation์€ young generation์—์„œ ์‚ด์•„๋‚จ์€ ๊ฐ์ฒด๊ฐ€ ์˜ฎ๊ฒจ์ง€๋Š” ์˜์—ญ์ž…๋‹ˆ๋‹ค. young generation์—์„œ๋Š” ์งง์€ ์‹œ๊ฐ„ ๋‚ด์— ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜์ด ์ž์ฃผ ๋ฐœ์ƒํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๊ฐ์ฒด๋ฅผ ์ œ๊ฑฐํ•˜๊ณ , old generation์—์„œ์˜ ๊ฐ€๋น„์ง€ ์ปฌ๋ Œ์…˜์€ ๋น„๊ต์  ์˜ค๋žœ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜์ง€๋งŒ ์ด ๊ณผ์ •์—์„œ ์˜ค๋žซ๋™์•ˆ ์œ ์ง€๋˜์–ด์•ผ ํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค.
 

๐Ÿ“Œ๊ธฐํƒ€ ์‹ ๊ธฐ์ˆ 

1. ์ƒ์„ฑํ˜• AI: RAG๋ž€?

LLM์˜ ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด LLM์ด ์ž์ฒด ํ•™์Šต ๋ฐ์ดํ„ฐ์—๋งŒ ์˜์กดํ•˜์ง€ ์•Š๊ณ , ์™ธ๋ถ€์˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์ง€์‹๋ฒ ์ด์Šค๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๊ด€๋ จ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‘๋‹ต์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

728x90