๐Ÿ“ ์ฝ”๋”ฉ ์šฉ์–ด ์ •๋ฆฌ

๊น€์ง€ํ˜œยท2023๋…„ 6์›” 6์ผ
0

Node.js

๋ชฉ๋ก ๋ณด๊ธฐ
1/13

1. ์ปดํ“จํ„ฐ&์ธํ„ฐ๋„ท

  • OS(์šด์˜์ฒด์ œ): ์ธ๊ฐ„์ด ๊ธฐ๊ณ„์™€ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ๋Š” ๊ธฐ๋ฐ˜ ํ”„๋กœ๊ทธ๋žจ
    (์ธ๊ฐ„์˜ ์–ธ์–ด > ๊ธฐ๊ณ„์˜ ์–ธ์–ด)
  • ์ฝ”๋”ฉ: OS(์šด์˜์ฒด์ œ)์— ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๊ฒƒ
  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด: {์ฝ”๋”ฉ: OS(์šด์˜์ฒด์ œ)์— ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๊ฒƒ}์˜ ์–ธ์–ด
  • ํ”„๋กœ๊ทธ๋žจ: [{์ฝ”๋”ฉ: OS(์šด์˜์ฒด์ œ)์— ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๊ฒƒ}์˜ ์–ธ์–ด]๋ฅผ ๋ฏธ๋ฆฌ ์งœ๋‘” ๊ฒƒ

  • ์ธํ„ฐ๋„ท: ์ปดํ“จํ„ฐ๋ผ๋ฆฌ ์†Œํ†ต
  • ์›น(http): ์†Œํ†ต์˜ ๊ทœ์น™
  • http's': ์•”๊ตฌํ˜ธ ํ‘œ๋ฅผ ๊ฐ€์ ธ๊ฐ€์„œ ๊ฐ€์šด๋ฐ์„œ ๋ชป ๋“ฃ๊ฒŒ ํ•˜๋Š” ๊ฒƒ(๋ณด์•ˆ)

2. ์›น์„œ๋น„์Šค

์„œ๋ฒ„:

  • ๊ฐ€์šด๋ฐ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ฃผ๋Š” ๊ฒƒ (=์‚ฌ๋žŒ์ด ๋ชฐ๋ฆฌ๋ฉด ํž˜๋“ค๋‹ค.)
  • ์ปดํ“จํ„ฐ์˜ ์ง์—…
  • ๋ธŒ๋ผ์šฐ์ €: ์š”์ฒญ>์š”์ฒญ ๋ฐ›์Œ>์„œ๋ฒ„์—์„œ ์›ํ•˜๋Š” ๋Œ€๋กœ ๊ทธ๋ ค์คŒ
    (์›น: ์›นํŽ˜์ด์ง€ ๋‹ค ๋ฐ›์•„์„œ ๋‹ค์‹œ ๊ทธ๋ฆฐ๋‹ค.
    ์•ฑ: ๊ป๋ฐ๊ธฐ๋งŒ, ๋ฐ์ดํ„ฐ๋งŒ ์ฃผ๊ณ  ๋ฐ›์Œ)

  • JSON(์ œ์ด์Šจ) ๋ฐฉ์‹(ํ‚ค: ๋ฐธ๋ฅ˜): ๋ฐ์ดํ„ฐ๋ฅผ ์ค„ ๋•Œ ์ƒ๊ธฐ๋Š” ๊ทœ์น™ (์•ฑ์—์„œ ๋งŽ์ด ์“ด๋‹ค.)

3. ์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ ํ†ต์‹ 

-API: ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•˜๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ฐฝ๊ตฌ/์•ฝ์† (URL ํ˜•ํƒœ)
-API ๋ช…์„ธ์„œ: API ์š”์ฒญ ๋‚ด์—ญ ๋ฌธ์„œํ™”
https:// (์„œ๋ฒ„ ์œ„์น˜) (/API ์ฃผ์†Œ) ? (๊ฐ€์ ธ๊ฐ€๊ธฐ๋กœ ํ•œ ๋ฐ์ดํ„ฐ)

"API๋ฅผ ๋”ฐ๋‹ค/์—ด๋‹ค"

=์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ฐฝ๊ตฌ๋ฅผ ์—ด์–ด๋‹ฌ๋ผ๋Š” ์š”์ฒญ => ๊ทธ ์ชฝ์œผ๋กœ ์š”์ฒญํ•œ๋‹ค.

"API ๊ฐœ๋ฐœ ๋, ํด๋ผ์ด์–ธํŠธ๋Š” ์•„์ง"

=์ฐฝ๊ตฌ๋Š” ๋‹ค ๋งŒ๋“ฌ, ์š”์ฒญํ•˜๋Š” ์ชฝ์ด ์ž‘์—… ์ค‘


4. ๊ฐœ๋ฐœ ์–ธ์–ด, ํ”„๋ ˆ์ž„์›Œํฌ

  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด:

    {์ฝ”๋”ฉ: OS(์šด์˜์ฒด์ œ)์— ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๊ฒƒ}์˜ ์–ธ์–ด

  • ํ”„๋ ˆ์ž„ ์›Œํฌ: ๋ฏธ๋ฆฌ ์งœ๋‘” ์ฝ”๋“œ

์›น

HTML, CSS, Javascript
(Javascript๋กœ ๋งŒ๋“  ํ”„๋ ˆ์ž„์›Œํฌ: ์•ต๊ทค๋Ÿฌ(Angular), ๋ทฐ(Vue.js), ๋ฆฌ์•กํŠธ(React.js))

  • ์ž๋ฐ”: ์–ด๋ ค์›€, ํ˜•์‹์ด ๋งŽ์Œ, ํฐ ํšŒ์‚ฌ์—์„œ ์ฃผ๋กœ ์“ด๋‹ค.
  • ํŒŒ์ด์ฌ: ์‰ฝ๊ฒŒ ์ž…๋ฌธ(์ง๊ด€์ ), ์ž์œ ๋กœ์›€, ๋ฐ์ดํ„ฐ ๋ถ„์„์—๋„ ์‚ฌ์šฉ
  • Node.js: ์Šคํƒ€ํŠธ์—…์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ, (๋ฐฑ/ํ”„๋ก ํŠธ ์–ธ์–ด๊ฐ€ ๊ฐ™๋‹ค)

์•ฑ

  • Kotlin: ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ๋งŒ๋“ค ๋•Œ
  • Swift: ์•„์ดํฐ ์•ฑ
  • Flutter + React Native: ํ•œ๋ฒˆ์— ๊ฐœ๋ฐœ(์•ˆ๋“œ๋กœ์ด๋“œ + ์•„์ดํฐ)
    (C ์–ธ์–ด: ์ž„๋ฐฐ๋””๋“œ๋‚˜ ์นฉ์ด ์•„๋‹Œ ์ด์ƒ ์Šคํƒ€ํŠธ์—…์—์„œ ์•ˆ ์”€)

์„œ๋ฒ„

  • Java(spring)
  • Python(Django, Flask)
  • Node.js(Express)
  • C++, Go, TS
  • pnp, ASP

๋ฐ์ดํ„ฐ ๋ถ„์„

  • Python
  • SQL

5. ์•„ํ‚คํƒ์ฒ˜ / DB

  • ์•„ํ‚คํƒ์ฒ˜ ๋ณต์žกํ•จ / ํ˜„๋Œ€=ํด๋ผ์šฐ๋“œ๋ฅผ ์ž˜ ์“ฐ๋Š” ๊ฒŒ ์ค‘์š”
  • ์„œ๋ฒ„์˜ ์‹ค์ฒด: ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๊ตฌ์„ฑ, ๊ฐ„๋‹จ > ์‹ฌ์˜ค ๋ฒ„์ „ ๊นŒ์ง€
    (ํ™œ๋ฐœ > ์œ ์ € ์ˆ˜ ์ฆ๊ฐ€๋กœ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋ฅผ ๋”ฐ๋กœ ๋บ€๋‹ค.)
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: ๋ฐ์ดํ„ฐ๋ฅผ ์ž˜ ์ฐพ์œผ๋ ค๊ณ (๋ฐ์ดํ„ฐ ์ •๋ ฌ)
    (์ธ๋ฑ์Šค: ์ •๋ฆฌ๋œ ๊ฒƒ(ํšŒ์› ๋ฒˆํ˜ธ๋กœ ๊ฑธ๋ ค์žˆ๋‹ค.) > ์ž˜๋ชป๋  ์‹œ 'ํ’€ ์Šค์บ”')

  • DB ์ข…๋ฅ˜:

    =SQL: ์ •ํ˜•ํ™”
    (ORACLE, PostgreSQL, MySQL, SQL Server, SQLite)
    =NoSQL(Not-only-SQL): ๋น„์ •ํ˜•ํ™”, ๋ฐ์ดํ„ฐ ์ ์žฌ(๋ณ€๋™์ ์ธ ์Šคํƒ€ํŠธ์—…์—์„œ ์ฃผ๋กœ ์”€)
    (redis, mongo Db, HBASE, cassanbra ๋“ฑ)
    '๋ฐ์ดํ„ฐ ๋ถ„์„์„ ์œ„ํ•ด SQL์„ ๋ฐฐ์šด๋‹ค = SQL DB์—์„œ ๋ฐ์ดํ„ฐ ๋นผ์˜ค๋Š” ๋ฒ•์„ ๋ฐฐ์šด๋‹ค.'


6. ํ˜‘์—…

-git ํ”„๋กœ๊ทธ๋žจ: ๋ถ€๋ถ„์„ ๋‚˜๋ˆ ์„œ ์ž‘์—…ํ•˜๊ณ , ํ•ฉ์น˜๋Š” ๋ฐฉ๋ฒ•
-GitHub: git์œผ๋กœ ์ฝ”๋“œ๋ฅผ ๋ชจ์œผ๋Š” ๊ฒƒ

[Local] > Commit(1.์„ธ์ด๋ธŒ ํฌ์ธํŠธ) > push(2.์—…๋กœ๋“œ) > [Remote] > pull(3. ๋‹ค์šด๋กœ๋“œ(+์ž๋™/์ˆ˜๋™ ์ถฉ๋Œ ํ•ด๊ฒฐ))>๋‹ค์‹œ [Local
(4. ๋ธŒ๋žœ์น˜ ๋”ฐ๊ธฐ) > (5. ๋จธ์ง€ํ•˜๊ธฐ(ํ•ฉ์น˜๊ธฐ))

0๊ฐœ์˜ ๋Œ“๊ธ€