๐Ÿ“– MVC(Model-View-Controller)ํŒจํ„ด

๋ฏธ๋‚˜ยท2023๋…„ 9์›” 15์ผ

์ƒˆ๋กœ์•Œ๊ฒŒ๋œ ์ •๋ณด

๋ชฉ๋ก ๋ณด๊ธฐ
5/23

๐Ÿ“Œ MVCํŒจํ„ด ์ด๋ž€?

  • ์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ ํŒจํ„ด ์ค‘ ํ•˜๋‚˜
  • ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๋‹นํ•˜๋Š” Model, ๋ณด์—ฌ์ง€๋Š” ๊ฒƒ์„ ๋‹ด๋‹นํ•˜๋Š” View, ๋‘˜์€ ์—ฐ๊ฒฐํ•˜๋Š” Controller๋ฅผ ์ด๋ฅด๋Š” ๋ง.
  • ์ฝ”๋“œ์™€ ๊ธฐ๋Šฅ์„ ์œ„ ์„ฑ๊ฒฉ์— ๋”ฐ๋ผ ๋‚˜๋ˆ„๋Š” ๊ฒƒ

๐Ÿ“Œ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ?

  • ์žฌ์‚ฌ์šฉ์„ฑ ๋†’์€ ๋ถ€๋ถ„์„ ๋ชจ๋“ˆํ™”ํ•ด์„œ ๊ต์ฒด๊ฐ€ ์šฉ์ดํ•จ
  • ๊ด€๋ จ ๊ธฐ์ˆ ๋“ค์˜ ์ง‘ํ•ฉ -> ํ˜‘์—…์— ์ข‹๋‹ค. ๋ฐฑ์—”๋“œ๋Š” Model, Controller, ํ”„๋ก ํŠธ์—”๋“œ๋Š” View์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ฝ”๋“œ ๋ถ„๋ฆฌ๋กœ ์œ ์ง€๋ณด์ˆ˜์™€ ๊ฐ€๋…์„ฑ์ด ์ข‹์•„์ง„๋‹ค.
  • ์ž๋ฐ” ์›น๊ธฐ์ˆ  ์ค‘ ๋งŽ์€ ๋ถ€๋ถ„์ด MVC ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ๊ณต๋œ๋‹ค.

๐Ÿ“Œ MVCํŒจํ„ด์œผ๋กœ ์ฝ”๋”ฉํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. Model์€ Controller์™€ View์— ์˜์กดํ•˜์ง€ ์•Š์•„์•ผํ•œ๋‹ค.
    (= Model ๋‚ด๋ถ€์— Controller์™€ View์— ๊ด€๋ จ๋œ ์ฝ”๋“œ๊ฐ€ ์žˆ์œผ๋ฉด ์•ˆ๋œ๋‹ค.)

  2. View๋Š” Model์—๋งŒ ์˜์กดํ•ด์•ผํ•˜๊ณ , Controller์—๋Š” ์˜์กดํ•˜๋ฉด ์•ˆ๋œ๋‹ค.

  3. View๊ฐ€ Model๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์„๋•Œ๋Š” ์‚ฌ์šฉ์ž๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ๋ณด์—ฌ์ฃผ์–ด์•ผํ•˜๋Š” ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด์„œ๋งŒ ๋ฐ›์•„์•ผํ•œ๋‹ค.
    ex) ๋ฐฐ๋‹ฌ๊ด€๋ จ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค„๋•Œ ์ฃผ์†Œ, ์ƒ์„ธ์ฃผ์†Œ, ์—ฐ๋ฝ์ฒ˜๋Š” ๋‹ค๋ฅด๊ฒŒ ๋ณด์—ฌ์ค˜์•ผํ•ด์„œ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋“ค์€ ๋ฐ›์•„์•ผํ•˜์ง€๋งŒ, ๊ณตํ†ต๋œ ์ •๋ณด์ธ ์นดํ…Œ๊ณ ๋ฆฌ์ด๋ฆ„๋“ค์€ View๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.

  4. Controller๋Š” Model๊ณผ View์— ์˜์กดํ•ด๋„๋œ๋‹ค.

  5. View๊ฐ€ Model๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์„๋•Œ, ๋ฐ˜๋“œ์‹œ Controller์—์„œ ๋ฐ›์•„์•ผํ•œ๋‹ค.

์ถœ์ฒ˜ : youtube

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