hello OOP

๊ฐ์ฒด์ง€ํ–ฅ ์ด๋ž€?

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

์—ญํ• , ์ฑ…์ž„, ํ˜‘๋ ฅ

  • ๊ฐ์ฒด๋Š” ํ˜‘๋ ฅ์„ ์œ„ํ•ด ํŠน์ •ํ•  ์—ญํ• ์„ ๋งก๊ณ  ์ ํ•ฉํ•œ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
  • ์—ฌ๊ธฐ์„œ ์—ญํ• ์€ ๋Œ€์ฒด ๊ฐ€๋Šฅ์„ฑ์„ ์˜๋ฏธํ•œ๋‹ค.
  • ๊ฐ ๊ฐ์ฒด๋Š” ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ž์œจ์ ์œผ๋กœ ์„ ํƒ ํ•˜๊ณ  ๋‹ค๋ฅธ ๊ฐ์ฒด์™€ ํ˜‘๋ ฅํ•œ๋‹ค.
  • ๊ฐ์ฒด๋Š” ๋‹ค๋ฅธ ๊ฐ์ฒด๊ฐ€ '๋ฌด์—‡(what)'์„ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€๋Š” ์•Œ์ˆ˜ ์žˆ์ง€๋งŒ '์–ด๋–ป๊ฒŒ(how)' ์ˆ˜ํ–‰ํ•˜๋Š”์ง€์— ๋Œ€ํ•ด์„œ๋Š” ์•Œ ์ˆ˜ ์—†๋‹ค.
  • ๊ฐ์ฒด์ง€ํ–ฅ ์„ธ๊ณ„์—์„œ๋Š” ์˜ค์ง '๋ฉ”์‹œ์ง€' ๋ผ๋Š” ์˜์‚ฌ์†Œํ†ต๋งŒ์ด ์กด์žฌํ•œ๋‹ค.

ํ˜‘๋ ฅ

  • ํ˜‘๋ ฅ์€ ํ•œ ์‚ฌ๋žŒ์ด ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ๋„์›€์„ ์š”์ฒญํ•  ๋•Œ ์‹œ์ž‘๋œ๋‹ค.
  • ์š”์ฒญ ๋ฐ›์€ ์‚ฌ๋žŒ์€ ์‘๋‹ต์„ ํ•œ๋‹ค.
  • ์š”์ฒญ๊ณผ ์‘๋‹ต์€ ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•˜๋Š” ๊ฐ์ฒด๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ฑ…์ž„์„ ์ •์˜ํ•˜๊ฒŒ ๋œ๋‹ค.

์ฑ…์ž„

  • ์ ์ ˆํ•œ ํ–‰๋™์„ ํ•œ ์˜๋ฌด๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ์— ํ•ด๋‹น ๊ฐ์ฒด๊ฐ€ ์ฑ…์ž„์„ ๊ฐ€์ง„๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ฑ…์ž„์€ ์ฃผ๋กœ ํ•˜๋Š”๊ฒƒ(doing)๊ณผ ์•„๋Š”๊ฒƒ(knowing)์œผ๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค.

    • ํ•˜๋Š” ๊ฒƒ

      • ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ๊ณ„์‚ฐ์„ ํ•˜๋Š” ๋“ฑ์˜ ์Šค์Šค๋กœ ํ•˜๋Š”๊ฒƒ
      • ๋‹ค๋ฅธ ๊ฐ์ฒด์˜ ํ–‰๋™์„ ์‹œ์ž‘์‹œํ‚ค๋Š” ๊ฒƒ
      • ๋‹ค๋ฅธ ๊ฐ์ฒด์˜ ํ™œ๋™์„ ์ œ์–ดํ•˜๊ณ  ์กฐ์ ˆํ•˜๋Š” ๊ฒƒ
    • ์•„๋Š” ๊ฒƒ

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

์—ญํ• 

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

ํƒ€์ž…๊ณผ ์ถ”์ƒํ™”

์ถ”์ƒํ™”

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

๋ถ„๋ฅ˜์˜ ์ธ์Šคํ„ด์Šคํ™”

  • '๋ถ„๋ฅ˜์™€ ์ธ์Šคํ„ด์Šคํ™”' ์˜ ์˜ˆ๋กœ๋Š” ์ž๋™์ฐจ , ์ƒˆ , ๋‚˜๋ฌด ๋“ฑ์ด ๋˜๊ฒ ๋‹ค.
  • '๋ถ„๋ฅ˜' ๋ผ๋Š”๊ฒƒ์€ ์„ธ์ƒ์— ์กด์žฌํ•˜๋Š” ๊ฐ์ฒด์— ๊ฐœ๋…์„ ์ ์šฉํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. ๊ฐ์ฒด์˜ ํŠน์ •ํ•œ ๊ฐœ๋…์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ง‘ํ•ฉ์˜ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ํฌํ•จ์‹œํ‚จ๋‹ค.
  • ์‚ฌ๋žŒ๋“ค์€ ์ด '๋ถ„๋ฅ˜'๋ฅผ ํ†ตํ•ด ๊ฐœ๋ณ„ ํ˜„์ƒ์„ ํ•˜๋‚˜์˜ ๊ฐœ๋…์œผ๋กœ ๋‹ค๋ฃจ๊ณ  ์ด๋•Œ ์ˆ˜๋งŽ์€ ๊ฐ๋ณ„์ ์ธ ํ˜„์ƒ๋“ค์„ '๊ฐ์ฒด' , 'ํ•˜๋‚˜์˜ ๊ฐœ๋…' ์„ 'ํƒ€์ž…' ์ด๋ผ๊ณ  ํ•œ๋‹ค.

์ผ๋ฐ˜ํ™”์™€ ํŠน์ˆ˜ํ™”

  • ์ผ๋ฐ˜ํ™”์™€ ํŠน์ˆ˜ํ™”๋Š” ๊ณ„์ธต ๊ด€๊ณ„๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๋‹ค. 'is-a' ๊ด€๊ณ„.

์ง‘ํ•ฉ๊ณผ ๋ถ„ํ•ด

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

๊ฐœ๋…

  • ๊ณตํ†ต์ ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ์ฒด๋ฅผ ๋ฌถ๊ธฐ ์œ„ํ•œ ๊ทธ๋ฆ‡์„ ๊ฐœ๋…(concept) ๋ผ๊ณ  ํ•œ๋‹ค.
  • ๊ฐœ๋…์˜ ๊ด€์  : ์‹ฌ๋ณผ(symbol), ๋‚ด์—ฐ(intension), ์™ธ์—ฐ(extension)
  • symbol : ๊ฐœ๋…์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ด๋ฆ„์ด๋‚˜ ๋ช…์นญ
  • intension : ๊ฐœ๋…์˜ ์™„์ „ํ•œ ์ •์˜ ์ด ์˜๋ฏธ๋กœ ์ธํ•ด ๊ฐ์ฒด๊ฐ€ ๊ฐœ๋…์— ์†ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • extension : ๊ฐœ๋…์— ์†ํ•˜๋Š” ๋ชจ๋“  ๊ฐ์ฒด์˜ ์ง‘ํ•ฉ.
  • ๊ฐœ๋…์„ ์ด์šฉํ•ด ๊ฐ์ฒด์˜ ๋ณต์žก์„ฑ์„ ๊ทน๋ณตํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜์ž.

ํƒ€์ž…

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

๊ฐ์ฒด์™€ ํƒ€์ž…

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

์ผ๋ฐ˜ํ™”/ํŠน์ˆ˜ํ™” ( ์Šˆํผํƒ€์ž…/์„œ๋ธŒํƒ€์ž… )

  • ์ผ๋ฐ˜ํ™” / ํŠน์ˆ˜ํ™”์˜ ์ ์ ˆํ•œ ์˜ˆ๋Š” ๊ณ ์–‘์ด๊ณผ ๋™๋ฌผ / ์‚ฌ์ž ๋ฅผ ๋“ค์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.
  • ์ผ๋ฐ˜ํ™” / ํŠน์ˆ˜ํ™” ๊ด€๊ณ„๋ฅผ ๊ฒฐ์ •์ง“๋Š” ๊ฒƒ์€ ๊ฐ์ฒด์˜ ์ƒํƒœ๊ฐ€ ์•„๋‹Œ ํ–‰๋™์ด๋‹ค.
  • ์—ฌ๊ธฐ์„œ ์ผ๋ฐ˜์ ์ธ ํƒ€์ž…์€ ํŠน์ˆ˜์ ์ธ ํƒ€์ž…์˜ ๋ชจ๋“  ํ–‰๋™์ค‘์—์„œ ์ผ๋ถ€ ํ–‰๋™๋งŒ ๊ฐ€์ง„๋‹ค.
  • ํŠน์ˆ˜ํ•œ ํƒ€์ž…์ด๋ž€ ์ผ๋ฐ˜์ ์ธ ํƒ€์ž…์ด ๊ฐ€์ง„ ๋ชจ๋“  ํƒ€์ž…์„ ํฌํ•จํ•˜์ง€๋งŒ ๊ฑฐ๊ธฐ์— ์ž์‹ ๋งŒ์˜ ํ–‰๋™์„ ์ถ”๊ฐ€ํ•˜๋Š” ํƒ€์ž…์„ ๊ฐ€๋ฆฌํ‚จ๋‹ค.

ํด๋ž˜์Šค

  • ํด๋ž˜์Šค๋Š” ๋‹จ์ง€ ํƒ€์ž…์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ตฌํ˜„ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ์ค‘ ํ•˜๋‚˜์ด๋‹ค.
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๊ฒฝ์šฐ์—๋Š” ํ”„๋กœํ† ํƒ€์ž… ๊ธฐ๋ฐ˜์˜ ์–ธ์–ด๋ผ ํด๋ž˜์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ƒํƒœ, ํ–‰๋™, ์‹๋ณ„์ž

์ƒํƒœ

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

ํ–‰๋™

  • ๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ๊ฐ์ฒด์˜ ์ž๋ฐœ์ ์ธ ํ–‰๋™์ด๋‹ค.
  • ๊ฐ์ฒด์˜ ํ–‰๋™์€ ์ƒํƒœ์— ์˜ํ–ฅ์„ ๋ฐ›๋Š”๋‹ค.
  • ํ–‰๋™์ด๋ž€ ์™ธ๋ณด์˜ ์š”์ฒญ ๋˜๋Š” ์ˆ˜์‹ ๋œ ๋ฉ”์‹œ์ง€์— ์‘๋‹ตํ•˜๊ธฐ ์œ„ํ•ด ๋™์ž‘ํ•˜๊ณ  ๋ฐ˜์‘ํ•˜๋Š” ํ™œ๋™
  • ํ–‰๋™์˜ ๊ฒฐ๊ณผ๋กœ๋Š” ๊ฐ์ฒด์˜ ์ž์‹ ์˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๊ฐ์ฒด์— ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํ–‰๋™์€ ๋‹ค๋ฅธ๊ฐ์ฒด์™€์˜ ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•˜๋ฏ€๋กœ ์™ธ๋ถ€์— ๊ฐ€์‹œ์ ์ด๋‹ค.
  • drinkBeverage() -> ๋‚˜ ๊ฐ์ฒด -> drunken(quantity) -> ์Œ๋ฃŒ๊ฐ์ฒด

์‹๋ณ„์ž

  • ์„œ๋กœ๋ฅผ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ •ํ•œ ํ”„๋กœํผํ‹ฐ๊ฐ€ ์‹๋ณ„์ž๋ผ๊ณ  ํ•œ๋‹ค.
  • ๊ฐ’์˜ ์ƒํƒœ๋Š” ๋ณ€ํ•˜์ง€ ์•Š๊ธฐ์— immutable state๋ฅผ ๊ฐ€์ง„๋‹ค.
  • ๊ฐ์ฒด์˜ ์ƒํƒœ๋Š” ํ–‰๋™์— ์˜ํ•ด ๋ณ€ํ• ์ˆ˜ ์žˆ๊ธฐ์— mutable state๋ผ๊ณ  ํ•œ๋‹ค.
  • ๋™๋“ฑ์„ฑ : ์ƒํƒœ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋น„๊ต , ๋™์ผ์„ฑ: ์‹๋ณ„์ž๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋น„๊ต
  • ๊ฐ์ฒด์˜ ๊ฒฝ์šฐ ์ƒํƒœ๊ฐ€ ๊ฐ€๋ณ€์ ์ด๊ธฐ์— ์ƒํƒœ ๋ณ€๊ฒฝ์— ๋…๋ฆฝ์ ์ธ ๋ณ„๋„์˜ ์‹๋ณ„์ž๋ฅผ ์ด์šฉํ•ด์„œ ๋‘ ์ธ์Šคํ„ด์Šค๋ฅผ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋‹ค.

์€์œ ์™€ ๊ฐ์ฒด

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

๊ฐ์ฒด์ง€ํ–ฅ ์„ค๊ณ„ ๊ธฐ๋ฒ•

์ฑ…์ž„-์ฃผ๋„ ์„ค๊ณ„

  • ๊ฐ์ฒด์ง€ํ–ฅ ์„ค๊ณ„๋ž€ app์˜ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ํ˜‘๋ ฅ ๊ด€๊ณ„๋ฅผ ๊ณ ์•ˆํ•˜๊ณ , ํ˜‘๋ ฅ์— ํ•„์š”ํ•œ ์—ญํ• ๊ณผ ์ฑ…์ž„์„ ์‹๋ณ„ํ•œ ํ›„ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ ˆํ•œ ๊ฐ์ฒด๋ฅผ ์‹๋ณ„ํ•ด ๋‚˜๊ฐ€๋Š” ๊ณผ์ •.
  • ์ด ์„ค๊ณ„๋Š” ๊ฐ์ฒด์˜ ์ฑ…์ž„์„ ์ค‘์‹ฌ์œผ๋กœ ์‹œ์Šคํ…œ์„ ๊ตญ์ถ•ํ•˜๋Š” ์„ค๊ณ„ ๋ฐฉ๋ฒ•
  • ์‹œ์Šคํ…œ์€ ๋” ์ž‘์€ ๊ทœ๋ชจ์˜ ์ฑ…์ž„์œผ๋กœ ๋ถ„ํ• ๋˜๊ณ  ๊ฐ ์ฑ…์ž„์€ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•  ์ ์ ˆํ•œ ๊ฐ์ฒด์—๊ฒŒ ํ• ๋‹น๋œ๋‹ค. ๊ฐ์ฒด๊ฐ€ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋„์ค‘์— ํ•„์š”ํ•˜๋‹ค๋ฉด ์ ์ ˆํ•œ ๊ฐ์ฒด๋ฅผ ์ฐพ์•„ ํ•„์š”ํ•œ ์ž‘์—…์„ ์š”์ฒญํ•œ๋‹ค. ๋งŒ์•ฝ ์ฑ…์ž„์„ ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ๊ฐ์ฒด๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํ˜‘๋ ฅ์ž๋Š” ๊ฐ์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ์ถ”์ƒ์ ์ธ ์—ญํ• ๋กœ ๋Œ€์ฒด๋œ๋‹ค.
  • ์‹œ์Šคํ…œ์ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ์ธ ์‹œ์Šคํ…œ ์ฑ…์ž„์„ ํŒŒ์•…ํ•œ๋‹ค.
  • ์‹œ์Šคํ…œ ์ฑ…์ž„์„ ๋” ์ž‘์€ ์ฑ…์ž„์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค.
  • ๋ถ„ํ• ๋œ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ ˆํ•œ ๊ฐ์ฒด ๋˜๋Š” ์—ญํ• ์„ ์ฐพ์•„ ์ฑ…์ž„์„ ํ• ๋‹นํ•œ๋‹ค.
  • ๊ฐ์ฒด๊ฐ€ ์ฑ…์ž„์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ค‘์— ๋‹ค๋ฅธ๊ฐ์ฒด์˜ ๋„์›€์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ด๋ฅผ ์ฑ…์ž„์งˆ ์ ์ ˆํ•œ ๊ฐ์ฒด๋ฅผ ์ฐพ๋Š”๋‹ค.
  • ํ•ด๋‹น ๊ฐ์ฒด์—๊ฒŒ ์ฑ…์ž„์„ ํ• ๋‹นํ•จ์œผ๋กœ์จ ๋‘ ๊ฐ์ฒด๊ฐ€ ํ˜‘๋ ฅํ•˜๊ฒŒ ๋œ๋‹ค.

๋””์ž์ธํŒจํ„ด

  • ๋ฐ˜๋ณต์ ์œผ๋กœ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์™€ ๊ทธ ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๋ฒ•์˜ ์Œ
  • ํŒจํ„ด์œผ๋กœ ํ•ด๊ฒฐํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ํŒŒ์•…ํ•˜๊ณ  ํŒจํ„ด์„ ์ ์šฉํ• ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ๊ณผ ์ ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์„ ์ธ์ง€ํ•˜์ž.
  • COMPOSITE ํŒจํ„ด์€ ์ „์ฒด์™€ ๋ถ€๋ถ„์„ ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ์ถ”์ƒํ™”ํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋œ๋‹ค.
  • ์œ„ ์˜ˆ๋กœ๋Š” ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ๋Œ€์ƒ์ด ํŒŒ์ผ์ธ์ง€ ํด๋”์ธ์ง€ ์ƒ๊ด€์—†์ด ํŒŒ์ผ์˜ ๊ฒฝ๋กœ๋ฅผ ๋ฐ”๊ฟ€์ˆ˜๋„ ์žˆ์ง€๋งŒ ํด๋”์˜ ๊ฒฝ๋กœ๋ฅผ ๋ฐ”๊พธ๊ฒŒ ๋˜๋ฉด ๊ทธ ์•ˆ์— ์žˆ๋Š” ํŒŒ์ผ๊นŒ์ง€๋„ ํ•œ๋ฒˆ์— ๋ณ€๊ฒฝ ํ• ์ˆ˜๋„ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ๋‹จ์ง€ ๋Œ€์ƒ์„ ์„ ํƒํ•œ ํ›„ ๊ฒฝ๋กœ๋ฅผ ๋ฐ”๊พธ๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค.
  • ์ฆ‰, ๋ฉ”์‹œ์ง€ ์ˆ˜์‹ ์ž๊ฐ€ ๋ถ€๋ถ„(ํŒŒ์ผ) ์ธ์ง€ ์ „์ฒด(ํด๋”) ์ธ์ง€์— ์ƒ๊ด€ ์—†์ด ๋™์ผํ•œ ๋ฉ”์‹œ์ง€(๊ฒฝ๋กœ๋ณ€๊ฒฝ)์„ ์ด์šฉํ•ด ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ๋Œ€์ƒ๊ณผ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ณ  ์‹ถ์„๋•Œ ์ด์šฉํ•œ๋‹ค.

์ฑ…์ž„๊ณผ ๋ฉ”์‹œ์ง€

์ž์œจ์ ์ธ ์ฑ…์ž„

  • ์ž์œจ์„ฑ ๊ทธ๊ฒƒ์€ ์ž๊ธฐ ์Šค์Šค๋กœ์˜ ์›์น™์— ๋”ฐ๋ผ ์–ด๋–ค ์ผ์„ ํ•˜๊ฑฐ๋‚˜ ์ž์‹ ์„ ํ†ต์ œํ•ด์„œ ์ ˆ์ œํ•˜๋Š” ์„ฑ์งˆ์ด๋‚˜ ํŠน์„ฑ์ด๋‹ค.
  • ๊ฐ์ฒด๊ฐ€ ์–ด๋–ค ํ–‰๋™์„ ํ•˜๋Š” ์œ ์ผํ•œ ์ด์œ ๋Š” ๋‹ค๋ฅธ ๊ฐ์ฒด๋กœ๋ถ€ํ„ฐ ์š”์ฒญ์„ ์ˆ˜์‹ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • ์ž์œจ์ ์ธ ์ฑ…์ž„์˜ ํŠน์ง•์€ ๊ฐ์ฒด๊ฐ€ '์–ด๋–ป๊ฒŒ (how)' ํ•ด์•ผ ํ•˜๋Š”๊ฐ€๊ฐ€ ์•„๋‹ˆ๋ผ '๋ฌด์—‡ (what)' ์„ ํ•ด์•ผ ํ•˜๋Š”๊ฐ€๋ฅผ ์„ค๋ช…ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

๋ฉ”์‹œ์ง€์™€ ๋ฉ”์„œ๋“œ

  • ๊ฐ์ฒด์˜ ํ–‰๋™์„ ์œ ๋ฐœํ•˜๋Š” ํ–‰์œ„๋ฅผ ๊ฐ€๋ฆฌ์ผœ ๋ฉ”์‹œ์ง€-์ „์†ก ์ด๋ผ๊ณ  ํ•œ๋‹ค.
  • ๋ชจ์ž์žฅ์ˆ˜.์ฆ์–ธํ•˜๋ผ(์–ด์ œ,์™•๊ตญ);
  • ๊ฐ์ฒด๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ˆ˜์‹ ํ•˜๋ฉด ๋จผ์ € ํ•ด๋‹น ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•œ๋‹ค. ๊ทธ ํ›„์— ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•  ๋ฐฉ๋ฒ•์ธ ๋ฉ”์„œ๋“œ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.
  • ๋ฉ”์‹œ์ง€๋Š” '์–ด๋–ป๊ฒŒ' ์ˆ˜ํ–‰๋  ๊ฒƒ์ธ์ง€๋Š” ๋ช…์‹œํ•˜์ง€ ์•Š๋Š”๋‹ค.

๋‹คํ˜•์„ฑ

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

what/who ์‚ฌ์ดํด

  • ๋จผ์ € '์–ด๋–ค ํ–‰์œ„(what)'์„ ์ˆ˜ํ–‰ํ•  ๊ฒƒ์ธ์ง€๋ฅผ ๊ฒฐ์ •ํ•œ ํ›„์— '๋ˆ„๊ฐ€(who)' ๊ทธ ํ–‰์œ„๋ฅผ ์ˆ˜ํ–‰ํ•  ๊ฒƒ์ธ์ง€๋ฅผ ๊ฒฐ์ •ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ.
  • ์ˆ˜์‹  ๊ฐ€๋Šฅํ•œ ๋ฉ”์‹œ์ง€๊ฐ€ ๋ชจ์—ฌ ๊ฐ์ฒด์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค.
  • ์ฐธ์—ฌํ•  ๊ฐ์ฒด๋ฅผ ๊ฒฐ์ •ํ•˜๊ธฐ ์ „์— ํ˜‘๋ ฅ์— ํ•„์š”ํ•œ ๋ฉ”์‹œ์ง€๋ฅผ ๋จผ์ € ๊ฒฐ์ •ํ•œ๋‹ค.
  • ๋ฉ”์‹œ์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๊ธฐ ์ „๊นŒ์ง€ ๊ฐ์ฒด์— ๊ด€ํ•ด ๊ณ ๋ฏผํ•˜์ง€ ๋ง์•„์•ผ ํ•œ๋‹ค.
  • '๋ฌป์ง€ ๋ง๊ณ  ์‹œ์ผœ๋ผ' ๋‹จ์ง€ ์†ก์‹ ์ž๋Š” ์ˆ˜์‹ ์ž๊ฐ€ ์–ด๋–ค ๊ฐ์ฒด์ธ์ง€๋Š” ๋ชจ๋ฅด์ง€๋งŒ ์ž์‹ ์ด ์ „์†กํ•œ ๋ฉ”์‹œ์ง€๋ฅผ ์ž˜ ์ฒ˜๋ฆฌํ•  ๊ฒƒ์ด๋ผ๋Š” ๊ฒƒ์„ ๋ฏฟ๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ „์†กํ•œ๋‹ค.

๊ฐ์ฒด ์ธํ„ฐํŽ˜์ด์Šค

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

๊ตฌํ˜„

  • ๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜์ง€๋งŒ ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค์— ํฌํ•จ๋˜์ง€ ์•Š๋Š” ๋ชจ๋“  ๊ฒƒ์ด ๊ตฌํ˜„์— ํฌํ•จ๋œ๋‹ค.
  • ๊ฐ์ฒด๋Š” ์ƒํƒœ์™€ ํ–‰๋™์„ ์ง€๋‹Œ๋‹ค ์ด ๋ถ€๋ถ„๋“ค์„ ๊ตฌ์„ฑํ•˜๋Š” ์ฝ”๋“œ ์ž์ฒด๋Š” ๊ฐ์ฒด ์™ธ๋ถ€์— ๋…ธ์ถœ๋˜๋Š” ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ผ๋ถ€๋Š” ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ์ฒด์˜ ๊ตฌํ˜„๋ถ€๋ถ„์— ํฌํ•จ๋œ๋‹ค.
  • ์ด ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•˜๋”๋ผ๋„ ๊ฐ์ฒด ์™ธ๋ถ€์— ์˜ํ–ฅ์„ ๋ฏธ์ณ์„œ๋Š” ์•ˆ๋œ๋‹ค. ๊ฐ์ฒด ์™ธ๋ถ€์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ณ€๊ฒฝ์€ ๊ฐ์ฒด์˜ ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ๋ฟ์ด๋‹ค.

์บก์Šํ™”

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

์ฑ…์ž„๊ณผ ๋ฉ”์‹œ์ง€์˜ ์ •๋ฆฌ

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

๊ฐ์ฒด์ง€ํ–ฅ์˜ ์˜ˆ๋ฅผ ์‚ดํŽด๋ณด์ž

์ปคํ”ผ ์ „๋ฌธ์ 

  • ์ปคํ”ผ ์ „๋ฌธ์ ์—์„œ ์ฃผ๋ฌธํ•˜๊ธฐ

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

    • ํ˜‘๋ ฅ์„ ์ฐพ์ž. ๋ฉ”์‹œ์ง€๊ฐ€ ๊ฐ์ฒด๋ฅผ ์„ ํƒํ•˜๊ฒŒ ํ•ด์•ผํ•œ๋‹ค. ๋ฉ”์‹œ์ง€๋ฅผ ๋จผ์ € ์„ ํƒํ•˜๊ณ  ๊ทธ ํ›„์— ๋ฉ”์‹œ์ง€๋ฅผ ์ˆ˜์‹ ํ•˜๊ธฐ์— ์ ์ ˆํ•œ ๊ฐ์ฒด๋ฅผ ์„ ํƒํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด์ œ ๋ฏธ์‹œ์ง€๋ฅผ ์ˆ˜์‹ ํ•  ๊ฐ์ฒด๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•  ์ฑ…์ž„์„ ๋งก๊ฒŒ ๋˜๊ณ  ๊ฐ์ฒด๊ฐ€ ์ˆ˜์‹ ํ•˜๋Š” ๋ฉ”์‹œ์ง€๋Š” ๊ฐ์ฒด๊ฐ€ ์™ธ๋ถ€์— ์ œ๊ณตํ•˜๋Š” ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค์— ํ‘œํ˜„๋œ๋‹ค.
    • ์–ด๋–ค ๊ฐ์ฒด๊ฐ€ ์ปคํ”ผ๋ฅผ ์ฃผ๋ฌธํ•  ์ฑ…์ž„์„ ์ ธ์•ผ ํ•˜๋Š”๊ฐ€?? ์ปคํ”ผ๋ฅผ ์ฃผ๋ฌธํ•˜๋ผ ( ๋ฉ”๋‰ด์ด๋ฆ„ ) ์ด ๋ฉ”์‹œ์ง€์— ๋Œ€ํ•œ ์ฑ…์ž„์€ ์†๋‹˜์ด๋‹ค.
    • ์†๋‹˜์€ '๋ฉ”๋‰ด ํ•ญ๋ชฉ์„ ์ฐพ์•„๋ผ' ๋ผ๋Š” ์ƒˆ๋กœ์šด ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ธ๋‹ค. ๋ฉ”๋‰ด์ด๋ฆ„ ์ด๋ผ๋Š” ์ธ์ž๋„ ํ•จ๊ป˜ ๋ณด๋‚ธ๋‹ค.
    • ํ˜„์‹ค ๋ฉ”๋‰ดํŒ์€ ์Šค์Šค๋กœ ๋ฉ”๋‰ด๋ฅผ ์ฐพ์ง€ ์•Š์ง€๋งŒ ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๋Šฅ๋™์ ์ด๊ณ  ์ž์œจ์ ์ธ ์กด์žฌ๋‹ค. ๋”ฐ๋ผ์„œ ์„ค๊ณ„์ž๋Š” ๋ฌด์ƒ๋ฌผ์„ ์ƒ๋ฌผ์ฒ˜๋Ÿผ '์˜์ธํ™”' ํ•ด์•ผํ•œ๋‹ค.
    • ์†๋‹˜์€ ๋ฉ”๋‰ดํ•ญ๋ชฉ์„ ์–ป์—ˆ์œผ๋‹ˆ ์ด์ œ ์ปคํ”ผ๋ฅผ ์ œ์กฐํ•ด๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ธํ„ฐํŽ˜์ด์Šค ์ •๋ฆฌํ•˜๊ธฐ

    • ์†๋‹˜ : ์ œํ’ˆ์„ ์ฃผ๋ฌธํ•˜๋ผ
    • ๋ฉ”๋‰ดํŒ : ๋ฉ”๋‰ด ํ•ญ๋ชฉ์„ ์ฐพ์•„๋ผ
    • ๋ฐ”๋ฆฌ์Šคํƒ€ : ์ปคํ”ผ๋ฅผ ์ œ์กฐํ•˜๋ผ
    • ์ปคํ”ผ : ์ƒ์„ฑํ•˜๋ผ
      class Customer{
          constructor(){}
    
          order: function(menuName){}
      }
    
      class MenuItem{}
    
      class Menu{
          constructor(){}
    
          choose: function(name){}
      }
    
      class barista{
          constructor(){}
    
          makeCoffee: function(menuItem){}
      }
      
      class Coffee{
          constructor(menuItem){
    
          }
          
      }
  • ๊ตฌํ˜„ํ•˜๊ธฐ

    • ๊ณ ๊ฐ์€ ๋ฉ”๋‰ด์™€ ๋ฐ”๋ฆฌ์Šคํƒ€ ๊ฐ์ฒด์— ์ ‘๊ทผ์„ ํ•ด์•ผํ•œ๋‹ค.
    • ๋ฉ”๋‰ด๋Š” menuName์— ํ•ด๋‹นํ•˜๋Š” MenuItem์„ ์ฐพ์•„์•ผ ํ•˜๋Š” ์ฑ…์ž„์ด ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ Menu ๊ฐ€ MenuItem์„ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.
    • ๋ฐ”๋ฆฌ์Šคํƒ€๋Š” MenuItem์„ ์ด์šฉํ•ด์„œ ์ปคํ”ผ๋ฅผ ์ œ์กฐํ•œ๋‹ค.
    class Customer{
          constructor(){}
    
          order: function(menuName, menu, barista){
              let menuItem = menu.choose(menuName);
              let coffee = barista.makeCoffee(menuItem);
    
              //...
          }
      }
    
    class Menu{
      constructor(items){
          this._items = items || [];
          this._itemsLength = items.length();
      }
    
      choose: function(name){
          for(let i = itemLength; i > 0; i--){
              if(this._items[i].getName() === name){
                  
                  return this._items[i];
              }
          }
      }
    }
    
    class barista{
          constructor(){}
    
          makeCoffee: function(menuItem){
              let coffee = new Coffee(menuItem);
              return coffee;
          }
      }
    
    class Coffee{
        constructor(opts){
          this._name = opts.name;
          this._price = opts.price;
        }
    }
    
    class MenuItem{
        constructor(opts){
            this._name = opts.name;
            this._price = opts.price
        },
    
        getCost: function(){
            return this._price;
        }
        getName: function(){
            return this._name;
        }
    }

์ •๋ฆฌ

  • ์ฝ”๋“œ๋Š” ์„ธ๊ฐ€์ง€ ๊ด€์ ์„ ๋ชจ๋‘ ์ œ๊ณตํ•ด์•ผํ•œ๋‹ค.

    • ๊ฐœ๋…๊ด€์ , ๋ช…์„ธ๊ด€์ , ๊ตฌํ˜„๊ด€์ 

      • ๊ฐœ๋…๊ด€์  : ๋„๋ฉ”์ธ์„ ๊ตฌ์„ฑํ•˜๋Š” ์ค‘์š”ํ•œ ๊ฐœ๋…๊ณผ ๊ด€๊ณ„๋ฅผ ๋ฐ˜์˜ํ•œ๋‹ค๋ฉด ๋ณ€๊ฒฝ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ณ  ์œ ์ง€๋ชจ์ˆ˜์„ฑ์„ ํ–ฅ์ƒ ์‹œํ‚ฌ์ˆ˜ ์žˆ๋‹ค.
      • ๋ช…์„ธ๊ด€์  : ํด๋ž˜์Šค์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ฐ”๋ผ๋ณธ๋‹ค. ํด๋ž˜์Šค์˜ public ๋ฉ”์„œ๋“œ๋Š” ๋‹ค๋ฅธ ํด๋ž˜์Šค๊ฐ€ ํ˜‘๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋“œ๋Ÿฌ๋‚ธ๋‹ค.
      • ๊ตฌํ˜„๊ด€์  : ํด๋ž˜์Šค์˜ ๋‚ด๋ถ€ ๊ตฌํ˜„์„ ๋ฐ”๋ผ๋ณธ๋‹ค ๋‚ด๊ตฌ ๊ตฌํ˜„๊ณผ ์†์„ฑ์ด ๋ณ€๊ฒฝ๋˜๋”๋ผ๋„ ์™ธ๋ถ€์˜ ๊ฐ์ฒด์—๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์ณ์„œ๋Š” ์•ˆ๋œ๋‹ค.
  • ๋„๋ฉ”์ธ ๊ฐœ๋…์„ ์ฐธ์กฐํ•˜์ž.

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

    • ํด๋ž˜์Šค๋ฅผ ๋ดค์„ ๋•Œ ํด๋ž˜์Šค๋ฅผ ๋ช…์„ธ ๊ด€์ ๊ณผ ๊ตฌํ˜„ ๊ด€์ ์œผ๋กœ ๋‚˜๋ˆ ๋ณผ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
ยฉ 2021 Merlin.ho, Built with Gatsby