[Software Engineering] ๐ ์ํํธ์จ์ด ์ํคํ ์ฒ ์คํ์ผ์ด๋?
๐ ์ํคํ ์ฒ๋?
์ปดํจํฐ ์ด๊ธฐ์ ํ๋ก๊ทธ๋จ์ ์ฃผ๋ก ์ด์
๋ธ๋ฆฌ ์ธ์ด๋ก ์์ฑ๋์๊ณ , ์ด๋ฅผ ์ดํดํ๊ธฐ ์ํ์ฌ ์ถ์ํ๋ฅผ ํ๋ ๊ฒ์ ๋งค์ฐ ๊ฐ๋จํ ๊ท๋ชจ์๋ค.
ํ์ง๋ง ํ๋ก๊ทธ๋จ์ด 20~30์ ๋์ด๊ฐ๋ Procedure
๊ท๋ชจ๊ฐ ๋๋ค๋ฉด, ์ ์ฒด๋ฅผ ํ๊บผ๋ฒ์ ์์
ํ๊ฑฐ๋ ์๊ฐํ๊ธฐ ์ฝ์ง ์๋ค.
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ํด๊ฒฐ์ฑ
๋ํ ์ถ์ํ
์ด๋ค.
์ํคํ ์ฒ๋ ๋ค์๊ณผ ๊ฐ๋ค.
- ์ํคํ ์ฒ๋ ์์คํ ์ ๊ตฌ์ฑ์์๋ค ๊ฐ์ ๊ด๊ณ์ ์์น, ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ด ์ด๋ฃจ๋ ์ ๋ฐ์ ์ธ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๋ ๊ฒ์ด๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ฝ๋์์ ์ฌ๋ฌ๊ฐ์ง ํจ์๋ค์ด ๋ด๊ฒจ์ ธ ์๋ ํจํค์ง๋ผ๋ ๊ฐ๋ ๋ ํด๋์ค๋ฅผ ์๋ฏธ์๋ ๊ด๋ จ๋ ๊ทธ๋ฃน์ผ๋ก ๊ตฌ์ฑํ๋ ์ผ์ข ์ ์ํคํ ์ฒ ๊ฐ๋ ์ด๋ค.
์ด๋ ์ํคํ
์ฒ ๊ตฌ์ฑ ์์ ์์์ ์ด๋ฃจ์ด์ง๋ ์์ธ ์ค๊ณ์์ ๋์์ธ ํจํด์ด ์ฌ์ฉ๋๋ค.
์ด์ ๋ํด ์์๋ณด๊ณ ์ถ์ผ๋ฉด ๋์์ธ ํจํด์ด๋? ์์ ์์๋ณด์
๋์์ธ ํจํด์ ์์ฃผ ์ ํ๋ ๋ฌธ์ ์ ๋ํ ์ค๊ณ ์๋ฃจ์ ์ ์ ๊ณตํ๋ค.
๐ ์ํคํ ์ฒ ์คํ์ผ
์ํคํ
์ฒ ์คํ์ผ์ ๊ตฌ์ฑ ์์ ์ ํ์ ๋ํ ์ค๋ช
๋ฐ ๋ฐ ํ์ ์ ์ด, ๋ฐ์ดํฐ ์ ์ก์ ๋ํ ํจํด์ด๋ค.
์์คํ
์ปดํฌ๋ํธ ์ ํ๊ณผ ๊ทธ ์ํธ ์์ฉ ํจํด์ ๋ํ ์ ์ฝ์ด๋ค.
์ฆ, ์คํ์ผ์ ์ํคํ
์ฒ ์ ํ์ ์ ์ํ ๊ฒ์ด๋ค.
๐ ํด๋ผ์ด์ธํธ ์๋ฒํ
๋คํธ์ํฌ๋ ์์์ ๊ด๋ฆฌํ๋ ์๋ฒ์ ์ด๋ฅผ ์ด์ฉํ๋ ํด๋ผ์ด์ธํธ ์ฌ์ด์ ์ปค๋ฎค๋์ผ์ด์
์ด๋ค.
ํด๋ผ์ด์ธํธ๋ ์๋ก ์ง์ ํต์ ํ์ง ์๊ณ ์๋ฒ๋ฅผ ํตํด์ ๊ฐ์ ์ ์ผ๋ก ํต์ ํ ์ ์๋ค.
ํด๋ผ์ด์ธํธ ์๋ฒ ์คํ์ผ์ ์ฌ๋ฌ ํ์๋ ์ ํ์ด ์๋ค.
3-๊ณ์ธต
, ๋ฌด๊ฑฐ์ด ํด๋ผ์ด์ธํธ
, ๊ฐ๋ฒผ์ด ํด๋ผ์ด์ธํธ
๋ฑ์ด ์๋ค.
์ฅ์
- ๋ชจ๋ ๋ฐ์ดํฐ๋ ์๋ฒ์ ๋ชจ์์ ๋ฐ์ดํฐ ๊ตฌ์ฑ๊ณผ ๊ด๋ฆฌ๊ฐ ๊ฐ๋จํ๋ค.
- ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ชจ๋ํฐ๋งํ๊ณ ๊ธฐ๋กํ ์ ์์ด์ ๋ณด์์ ์ธ ์ธก๋ฉด์์ ์ ๋ฆฌํ๋ค.
๋จ์
- ์๋ฒ์ ํต์ ํ๋ ค๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ง์์ง๋ฉด ์๋ฒ์ ๋ถํ๊ฐ ์๊ธด๋ค.
- ์ค์น ๋ฐ ๊ด๋ฆฌ ๋น์ฉ์ด ์ผ๋ฐ์ ์ผ๋ก ๋๋ค.
- ์๋ฒ๊ฐ ์๋์ ์ค์งํ๋ฉด, ํด๋ผ์ด์ธํธ๋ ๊ฐ์ด ์๋์ ์ค์งํ๋ค.
๐ ๊ณ์ธตํ
๐ ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ํคํ ์ฒ
๐ MVC
MVC(Model - View - Controller)๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ก๋ถํฐ ๋น์ฆ๋์ค ๋ก์ง์ ๋ถ๋ฆฌ์์ผ ์๊ฐ์ ์์๋ ๋น์ฆ๋์ค ๋ก์ง์ ์๋ก ์ํฅ ์์ด ์ฝ๊ฒ ๊ณ ์น ์ ์๋ ์คํ์ผ์ ์ํคํ ์ฒ์ด๋ค.
- Model - ๋ฐ์ดํฐ์ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ก์ง์ ๋ด๋นํ๋ค.
- View - ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๋ด๋นํ๊ณ , ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ญํ ์ ๋ด๋นํ๋ค.
- Controller - ์ฌ์ฉ์์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ , ๋ชจ๋ธ๊ณผ ๋ทฐ๋ฅผ ์ ์ดํ๋ค.
์ฅ์
- ๊ฐ ์ปดํฌ๋ํ์ ๊ฒฐํฉ์ด ์ฝํด ๋ค๋ฅธ ๋ถ๋ถ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค.
- ๋น๋๊ธฐ ๊ธฐ์ ์ ์ด์ฉํ์ฌ, ๋ก๋ฉ์ด ๋น ๋ฅด๋ค
- ๋ค์์ ๋ค๋ฅธ ๋ทฐ๋ฅผ ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
๋จ์
- ๋ถ๋ฆฌ๋ ์ปดํฌ๋ํธ๋ก ์ธํด ์ดํด๋ฅผ ์ํ ๋ณต์ก๋๊ฐ ์ฌ๋ผ๊ฐ ์ ์๋ค.
- ๋ทฐ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ทผํ์ฌํ ํด์ผํด์ ๋นํจ์จ์ ์ด๋ค.
๐ ํ์ดํ ํํฐ
๐ ๋ฐ์ดํฐ ์ค์ฌ ์ํคํ ์ฒ
๐ Peer-to-Peer ์คํ์ผ
๐ ๋์ง์ด๋ณด๊ธฐ
- ์ด์์ฒด์ ์ ์ ์
- ์ด์์ฒด์ ์ ๊ธฐ๋ฅ
- ๋ก๋์ ๋ป
- ๋ฐฐ์น์ ๋ป
- ์ค์ผ์ฅด๋ง ๊ธฐ๋ฒ 4๊ฐ์ง ์ข ๋ฅ์ ์๋ฏธ
๊ฐ์ธ ๊ณต๋ถ ๊ธฐ๋ก์ฉ ๋ธ๋ก๊ทธ์
๋๋ค.
ํ๋ฆฌ๊ฑฐ๋ ์ค๋ฅ๊ฐ ์์ ๊ฒฝ์ฐ ์ ๋ณดํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.๐