์๋ฐ๋?
- ๊ฐ์ฒด์งํฅ ์ธ์ด (OOP Object Oriented Programming)
- ํ๋์ ๊ธฐ๋ฅ์ ๊ฐ์ฒด๋ก ๋ง๋ค์ด์ ๊ฐ์ฒด๋ค์ ์ข ํฉํ์ฌ ํ๋ก๊ทธ๋๋ฐํ๋ค.
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ OOP์ 4๊ฐ์ง ํน์ฑ
********(์บก์ํ, ๋คํ์ฑ, ์์, ์ถ์ํ)
1. ์บก์ํ
- ์๋ก ๊ด๋ จ๋ Data, Method๋ฅผ ํ๋๋ก ๋ฌถ๋๊ฒ
2. ๋คํ์ฑ
- ํํ๊ฐ ๋ค์ํ ๊ฒ (๊ฐ์ ๋์, ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฌผ)
- ์ค๋ฒ๋ก๋ฉ๊ณผ ์ค๋ฒ๋ผ์ด๋ฉ์ด ํด๋น๋จ.
- ์ค๋ฒ๋ก๋ฉ?
๊ฐ์ ์ด๋ฆ์ ๋ฉ์๋๋ฅผ ๋งค๊ฐ๋ณ์์ ํ์ ๊ณผ ๊ฐฏ์๋ง ๋ค๋ฅด๊ฒ ํ์ฌ ๋ค๋ฅธ๊ธฐ๋ฅ์ ํ๊ฒ ํ๋ ๊ฒ
- ์ค๋ฒ๋ผ์ด๋ฉ?
์์ ํด๋์ค์ ๋ฉ์๋๋ฅผ ์์๋ฐ์ ์ฌ์ ์ ํ๋ ๊ฒ
3. ์์
์์ ํด๋์ค method๋ฅผ ์์ ํด๋์ค๊ฐ ์์๋ฐ์์ ์ฌ์ฉํ๋ ๊ฒ
4. ์ถ์ํ
ํ์ํ ๊ฒ์ ๋ณด์ฌ์ฃผ๊ณ ํ์์๋ ๊ฒ์ ์จ๊ธฐ๋ ๊ฒ
์ถ์ํด๋์ค์ ์ธํฐํ์ด์ค ์ฐจ์ด?
์ถ์ํด๋์ค :
- ๋จ์ผ์์
- ํ๋์ด์์ ์ถ์๋ฉ์๋ ํฌํจํ๊ฑฐ๋ abstract๋ก ์ ์๋ ํด๋์ค
- ์ถ์๋ฉ์๋๋? ์์ง ๊ตฌํ๋์ง ์์ abstract๋ก ์ ์๋ ๋ฉ์๋
์ธํฐํ์ด์ค :
- ๋ค์ค์์
- ๋ชจ๋ ๋ฉ์๋๊ฐ ์ถ์๋ฉ์๋์ธ ๊ฒฝ์ฐ
ex) dao : ๊ตฌํํ ๋ฉ์๋๋ง ์ ์ ํด๋๊ณ ์ค์ ๊ตฌํ์ daoImpl์์ ํจ
๋๊ธ