๊ทธ๋์ ์์ธ๋ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๋ ๊ฒ์ด ์ข์๊ฑธ๊น?
์ค๋ฅ ์ํฉ
- ์์ธ ์ํฉ๊ณผ ์ค๋ฅ ์ํฉ์ ๋ค๋ฅธ ์๋ฏธ๋ก ์ฌ์ฉํ ๊ฒ
- ์ค๋ฅ ์ํฉ์ error condition์ ๋งํจ
- ์ด ์ค๋ฅ ์ํฉ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ ์ค์ ์์ธ๊ฐ ์์
์ค๋ฅ ์ํฉ์ ์์ธก ๊ฐ๋ฅํ ์ํฉ์ ์๋ฏธํจ
- ํ๋ก๊ทธ๋จ ์คํ ์ค์ ๊ธฐ๋ณธ์ ์ผ๋ก๋ ์ผ์ด๋์ง ์์
- ํ์ง๋ง ์ผ์ด๋ ์ ์๋ ์ผ
- ๋ฐ๋ผ์ ์ด๋ฌํ ์ํฉ์ ์ฒ๋ฆฌํ๋ ์ฝ๋๋ ํ๋ก๊ทธ๋จ ๊ธฐ๋ฅ์ ์ผ๋ถ์
- ํ๋ก๊ทธ๋๋จธ๊ฐ ์ด๋ฅผ ์์ธกํ์ง ๋ชปํ๋ค๋ฉด?
- ๋ฒ๊ทธ
์ค๋ฅ ์ํฉ์ ์ฒ๋ฆฌํ๋ 4๊ฐ์ง ๋ฐฉ๋ฒ
๋ฌด์
- ๊ณง๋ฐ๋ก ํฌ๋์
- ์ผ๋จ์ ์๋ํ๋๋ฐ ์ธ์ ๊ฐ๋ ํฌ๋์
- ์์ ์ ์ด์ง ๋ชปํ ์ํ๋ก ๊ณ์ ๋์
- ๋ฐ์ดํฐ๊ฐ ๋ง๊ฐ์ง ์ํ
- ์ฌ๋ฐ๋ฅด์ง ์์ ๊ฒฐ๊ณผ๊ฐ ๋์ฌ ์ ์์
- ์ํ ์ถ๊ธ ์๋น์ค?
๊ฒ์ฌ ํ ์ ์์ ํ๋ก๊ทธ๋จ ์ข ๋ฃ
- ์ฌ์ฉ์์๊ฒ ๋ฌธ์ ์ํฉ์ ๋ณด์ฌ์ฃผ๊ณ ์ข
๋ฃ
- ํ์
- ๋ก๊ทธ ํ์ผ
- ํฌ๋์๋ณด๋ค ๋์์
- ์ ๋๋ก ์์คํ ์ํ๋ฅผ ์ ๋ฆฌํ๊ณ ํ๋ก๊ทธ๋จ ์ข ๋ฃํ ๊ฐ๋ฅ์ฑ์ด ๋์
- ์ข ๋ฃ ํ ์์คํ ์ด ์ข ๋ ์์ ์ ์ธ ๊ฐ๋ฅ์ฑ์ด ๋์
- ์์ ํ๋ ๋ด์ฉ์ ๋ ๋ฆฌ์ง ์๊ณ ์ ์ฅํด์ค ์ ์์
๋ฏธ๋ฆฌ ๊ฒ์ฌ ํ ๋ฌธ์ ๋ฅผ ๊ณ ์น๋ค.
- ๋ถ๋ชจ๊ฐ 0์ผ ๊ฒฝ์ฐ 1๋ก ๋ฐ๊พผ๋ค.
- ์ฌ์ฉ์์๊ฒ ์ฌ๋ฐ๋ฅธ ๊ฐ์ ์ ๋ ฅํ๋ผ๊ณ ๋ค์ ์์ฒญํ๋ค.
- ๋๊ตฐ๊ฐ๋ ์ด๋ฐ ๋ฐฉ์์ ๊ฐ์ฒด์งํฅ์ ์ด ์๋๋ผ๋ฉฐ ๋ฐฐ์ฒํจ
- ๋ชจ๋ ์ค๋ฅ๋ฅผ ์์ธ๋ก ํ์ ๋ถ๋ฅ๋ค
- ํ์ง๋ง UX๋ฅผ ํฌ๊ธฐํ๋ฉด์๊น์ง OO๋ฅผ ๊ณ์นํ ์ด์ ๊ฐ ์์
- ์์ธ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋นํด ์ฑ๋ฅ์ด ๊ฐ์ฅ ๋๋ฆผ
- ์ค๊ณ์ ํ์ํ ์ฑ๋ฅ ์์ค์ ๋ฐ๋ผ OO์์๋ ์ถฉ๋ถํ ์ข์ ๋ฐฉ๋ฒ์ด๋ค.
๋จ์
- ๋ฌธ์ ๊ฐ ์ฒ์ ๋ฐ์ํ ๊ณณ์ ํ์ ํ๊ธฐ๊ฐ ์ฝ์ง ์๋ค.
- ํ์ผ ์ฝ๋ ํจ์์์ ํ์ผ ๋ชป์ฐพ์ ๊ฒฝ์ฐ ๋น ๋ฌธ์์ด์ ๋ฐํํ๋ค๋ฉด?
- ๊ทธ ๋น์์๋ ๋ง์ ์ ์์
- ๊ทผ๋ฐ ๋์ค์ ๊ทธ ํ์ผ์ ๋ฌธ์์ด์ ๋ง๋ถ์ด๋ ค๊ณ ํ๋ฉด ๋ถ๊ฐ๋ฅํจ
- ํ๋ก๊ทธ๋๋จธ๋ ์๋ ํ์ผ์ด ์ฌ๋ผ์ก๋ค ์๊ฐํ ์ ์์
- ์ฆ, ๋๋ฒ๊น ์ด ์ด๋ ค์์ง
์์ธ๋ฅผ ๋์ง๋ค.
- ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๋ ์ฌ์ค์ ์๋ ค์ค ์๋ ์์
- ๊ทธ ์์ธ๋ฅผ ์ฒ๋ฆฌํ ์๋ ์์
์ค๋ฅ ์ํฉ์ ํผํ๋๊ฒ ์ต๊ณ
- ์ฒ์๋ถํฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์
- ๋ด๊ฐ ๊ฐ์ง ๊ฐ์ ์ด ์ณ์์ง๋ถํฐ ๊ฒํ ํ๋ ๊ฒ์ด ์ข๋ค.
- ํ์ผ์ด ํญ์ ์๋๊ฐ?
- 0์ผ๋ก ๋๋ ๊ฐ๋ฅ์ฑ์ ์๋๊ฐ?
- ๋ฐ์ดํฐ๋ ํญ์ ๋ค์ด์ ์๋๊ฐ?
ํ๋ก๊ทธ๋จ์ ์ฌ๋ฌ ์์คํ ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- ๊ฐ๊ฐ์ ๋ชจ๋์ ์์ ํ๋ค๊ณ ๊ฐ์ ํ์.
- ๋ฌธ์ ๋ ๊ฒฝ๊ณ์์ ์๊ธฐ๋๋ฐ, ์ด๋ด ๋ ์ข์ ๊ฒ์
- ๋ด ์์ญ์ผ๋ก ๋ค์ด์ค๋ ๋ฐ์ดํฐ๋ ์ธ์ ๋ ์ ํจํ๊ฒ ๋ง๋๋ ๊ฒ์ด๋ค.
- ๊ฒฝ๊ณ์์ ๋ค์ด์ค๋ ๋ฐ์ดํฐ๋ค์ ๋ฐ๋์ ๊ฒ์ฆํด์ผ ํ๋ค.
- ๋ง์ฝ ์๋ชป๋ ๋ฐ์ดํฐ๋ผ๋ฉด ๊ฑฐ๋ถํด๋ฒ๋ฆฐ๋ค.
- ์ฆ, ๋ด๊ฐ ํต์ ๊ฐ๋ฅํ๋๋ก ํ๋ ๊ฒ์ด ์ค์.
๋จ์๊ฒ ๋ฌธ์ ๋ฅผ ์๋ ค์ฃผ๋ ๋ฐฉ๋ฒ
- ์ฐธ/๊ฑฐ์ง์ด๋ null์ ๋ฐํ
- ์ค๋ฅ ์ฝ๋ (int, enum)์ ๋ฐํ
- ์์ธ๋ฅผ ๋์ง
์์ธ๋ OOP์ ์ผ๋ถ๊ฐ ์๋๋ค.
- ๋น์ทํ ์๊ธฐ์ ๋์ ์์ธ๊ฐ OO์ ์ผ๋ถ๋ผ ์๊ฐํ๋ ์ฌ๋๋ค์ด ์์
- ๊ทน๋จ์ ์ธ ์ง์์ OO์์ ๋ฌด์กฐ๊ฑด ์์ธ๋ง ์ฌ์ฉํด์ผ ํ๋ค๊ณ ํจ
- ์์ธ๋ง ์ํ๋ฉด ํ๋ก๊ทธ๋จ์ด ํผ์คํด ์ง๋ค??
์์ธ ์ธ์๋ ํด๊ฒฐ์ฑ ์ด ์๋ ๊ฒฝ์ฐ: ์์ฑ์
- null์ ๋ฐํํ์ฌ ์์ฑ์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ ์๋ ค์ค ์ ์์
- Swift์ ๊ฐ์ ์ธ์ด๋ ๊ฐ๋ฅ
- ์์ ๊ฐ์ ์ธ์ด์ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๋ ์ฌ์ค์ ์๋ ค์ฃผ๋ ค๋ฉด ์์ธ๊ฐ ์ ์ผํ ๋ฐฉ๋ฒ
- ์๋ํ๋ฉด ๊ฒฐ๊ตญ ์์ ๊ฐ์ ์ธ์ด๋ C๋ก ๊ตฌํ๋์์ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ
- C์ ๊ฒฝ์ฐ ๋ฉ๋ชจ๋ฆฌ ํ ๋น > ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ์ฒด์ ๋ฐฐ์ > ์์ฑ์๋ฅผ ํตํด ์ํ ์ด๊ธฐํ ์ ํ๋ฆ์ ๊ฐ๊ธฐ ๋๋ฌธ
- ์ผ๋จ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ์์ผ๋จ๋๋ฐ ์์ฑ์ ๋ธ๋ก ์์์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ๋๋๋ฆด ๋ฐฉ๋ฒ์ด ์์
- ์ฌ์ค ์ธ์ด์ ์ ์ฝ์ฌํญ..!
์๋ชป๋ ์์ธ์ฒ๋ฆฌ๋ณด๋ค ํฌ๋์๊ฐ ๋ซ๋ค.
- ์๋ชป ์ฒ๋ฆฌํ๋ฉด ํฌ๋์๊ฐ ์๋๊ณ ํ๋ก๊ทธ๋จ์ด ๊ณ์ ์คํ๋๊ณค ํจ
- ๋น์ฐํ ์์ ์ ์ด์ง ์์ ์ํ์
ํฌ๋์๋ฅผ ์์ ๋ณด๋ค ๋ ์ฌ๊ฐํ๊ฒ ์๊ฐํจ
- ํฌ๋์์ ๋ฌธ์ ๋ ์์ ๋ฌผ์ ์์ด๋ฒ๋ฆฌ๋ ๊ฒ
- ๊ทธ๋ฐ๋ฐ ์์ฆ์ ์ฐจ๋ผ๋ฆฌ ํฌ๋์๊ฐ ๋๊ฒํ๊ณ ์๋ ์ธ์ด๋ธ๋ก ํด๊ฒฐํจ
- ์ฌ์ง์ด ์จ๋ผ์ธ ๋ฌธ์ ํธ์ง๊ธฐ๋ ์ธ์ ๋ ์ ์ฅ๋จ
- ์ฆ, ์ฌ์ฉ์๋ค์ ๋๋์ฑ ํฌ๋์์ ์ ๊ฒฝ ์ ์ (์๋ ์ ๋นํด)
์์ OS, ํ๋์จ์ด๋ ๋ง์ด ๋ฐ์ ๋จ
- ์ด์ ๋ ๋ค์์ ๋ ์ฌํญ์ด ์์ ์ฑ ์ธก๋ฉด์์ ํฐ ์ฐจ์ด๊ฐ ์๋ค.
- ํฌ๋์ ๋ฐ์ > ํ๋ก๊ทธ๋จ ์ข ๋ฃ
- ๋ฐ์ํ ์์ธ๋ฅผ ์ฒ๋ฆฌ ์ํจ > ํ๋ก๊ทธ๋จ ์ข ๋ฃ
- ์์ ์๋ ์๋ฒ ์์์ ์ฌ๋์ด ์์์ด์ผ ํ์ผ๋ ๋์ด ์ฐจ์ด๊ฐ ๋๋ค.
- ํ์ง๋ง ์ด์ ๋ OS์์ ์ฒ๋ฆฌํด์ค
- ๋๋ฒ๊น
์ํ๋ ํ๋ก๊ทธ๋๋จธ๋ค์ ์คํ๋ ค ํฌ๋์๋ฅผ ์ ํธ
- ๋ฌธ์ ๋ฅผ ์ผ์ฐ ๋ฐ๊ฒฌ
- ํฌ๋์ ๋ฐ์ ์ด์ ๋ฅผ ๊ณง๋ฐ๋ก ์กฐ์ฌ ๊ฐ๋ฅ
ํฌ๋์์ ๋ฉ๋ชจ๋ฆฌ ๋คํ
- ๋ฉ๋ชจ๋ฆฌ ๋คํ: ๊ฑฐ์ ๋ชจ๋ ์ ๋ณด
- ๋๋ฒ๊ฑฐ์์ ์ด๋ฉด ๋ชจ๋ ์คํ ๊ฐ์ ๋ณผ ์ ์์
- ์์ธ: ์ ๋ณด๊ฐ ์ ์
- ํธ์ถ ์คํ ์ ๋ณด (๋ฌธ์์ด)
- ๋ฉ์์ง (null์ธ ๊ฒฝ์ฐ๊ฐ ๋น๋ฒ)
- ์์ธ ํ์
- ์์ธ๋ฅผ ๋์ง๊ฒ ๋๋ฉด ๋ง์ ๋ด์ฉ์ ๋ด๊ณ ์์ง ์๊ธฐ ๋๋ฌธ์ ํฌ๋์ ๋๋ ์๊ฐ ๊ทธ๋ฅ ๋ฉ๋ชจ๋ฆฌ ๋คํ๋ฅผ ๋ณด๋ด์ฃผ๋๊ฒ ๋ซ๋ค.
ํ๋ก๊ทธ๋จ ์ข ๋ฃ๋ ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ด๋ค.
- ์๋ชป๋ ์์ธ ์ฒ๋ฆฌ ๋๋ฌธ์ ์ด์ํ ์ํ์ ๋น ์ง๋ ์ผ์ ๋ฐฉ์งํ์.
- ๋ฌผ๋ก ํฌ๋์๋ณด๋ค๋ ์ข๋ค.
- ์ต๊ทผ 5๋ถ ๋์์ ์์ ๋ฌผ๋ ๋ค ์ ์ฅํด ์ค ์ ์์ผ๋
- ๊ทธ๋ฐ๋ฐ ์๋ ์ธ์ด๋ธ ๊ธฐ๋ฅ๋ง์ผ๋ก ์ถฉ๋ถํ๋ค.
์ค๋ฅ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์์: ์ฑ ์๊ฐ ์์
- ์์
- ์ข ๋ฃ
- ์์ธ: ๋จ์๊ฒ ํญํ ๋๋ฆฌ๋ ๊ผด
- ๋ฌด์: ๋งํ ํ์ ์์
์ค๋ฅ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์์: ์ค์ง๋ ์์
ํด๋ผ์ด์ธํธ๊ฐ ํ ์ผ์ ๋ด๊ฐ ํด์ค
- ์ข ๋ฃ
- ์์ : ํธ์ถ์๊ฐ ์์ ์ ์ํ์ง ์์ ์๋? ํน์ ๋ด๊ฐ ์๋ชป ๊ณ ์น๋ ๊ฑธ ์๋?
- ์์ธ
- ๋ฌด์
์ค๋ฅ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์์: ๋ช ํ์ฑ ์์
์ฝ๋๋ฅผ ๋ณด๋ ๊ฒ๋ง์ผ๋ก ์ด๋ค ์ผ์ด ์ผ์ด๋๋์ง ์ ์ ์๋๊ฐ?
- ์ข ๋ฃ / ์์
- ๋ฌด์
- ํฌ๋์๊ฐ ์๋๋ ๊ฒฝ์ฐ ์์ธ๋ณด๋ค ๋์จ
- ์์ธ: ์์ธ๊ฐ ์จ ๊ฒฝ์ฐ, ์ด๋ป๊ฒ ์ฒ๋ฆฌ..? ์ ๋งคํจ.
- ํญํ ๋๋ฆฌ๊ธฐ (๊ทธ๋ฅ ์์ชฝ์ผ๋ก ์ ํ)
- ์์ธ์ ๋ํด ์์ ํ๊ฒ ์์ฑํ๋๋ก ๋
ธ๋ ฅ (๋ ์์ธ๊ฐ ์๋ ๋ณต๊ตฌ์ํฌ ์ ์์ด)
- ์์ ์ ๊ณผ๋ํ๊ฐ
์์ธก ๊ฐ๋ฅํ ์ํฉ์ ์ฒ๋ฆฌ๋ฒ
- ์์ ์๊ฐํ 4๊ฐ์ง ์ฒ๋ฆฌ ๋ฐฉํฅ์ ์ธ์ ๋ 4๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋๊ฒ ์๋๋ค.
- ์ฆ, ์ํฉ๋ฐ๋ผ ์ฌ์ฉํ ์ ์๋ ๋ฐฉ๋ฒ์ ๊ฐ์๊ฐ ๋ฌ๋ผ์ง๋ค.
- ์ค๋ฅ๋ฅผ ์์ธกO: ๊ธฐ๋ฅ์ ์ผ๋ถ
- ์ค๋ฅ๋ฅผ ์์ธกX: ๋ฒ๊ทธ
์ด๋ฏธ ์์ธก + ๊ณ ์น๊ธฐ ์ฌ์
- ์์ ํ๊ฒ ๊ณ ์น ์ ์๋ ์์ ์ด ์์ด์ผ ํจ, ์ด๋ ต์ง ์์์ผ ํจ
- ์ฌ์ด ๊ฒฝ์ฐ ๊ณ ์น๊ณ ๊ณ์ ํ๋ก๊ทธ๋จ ์งํ
- ๋ค๋ฅธ ์์คํ ์์ ๋ฐ์ํ ์์ธ ์ญ์ ๊ฒฝ๊ณ์์ ์ฒ๋ฆฌํ๊ณ ๊ณ์ ์งํ์ํด
- ์ฆ, ์ด๋ฐ ๊ฒฝ์ฐ ์์ ํ์ฌ ์งํ์ํด
์ด๋ฏธ ์์ธก + ๊ณ ์น๊ธฐ ์ด๋ ค์ด ๊ฒฝ์ฐ
- ์ต์ข
์ฌ์ฉ์์๊ฒ ๋ฉ์์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์ถ๋ค๋ฉด? (์์ธ๋ฅผ ๋์ก๋ค๋ฉด)
- ์ค๊ฐ์์ ์๋ฌด๋ฐ๋ catch์ํ๊ณ ์ต์์๊น์ง ์์ธ๋ฅผ ์ ๋ฌ
- ์ต์์ ํจ์์์ ํ์ ์ฐฝ์ ๋์ ๋ฉ์์ง๋ฅผ ๋ณด์ฌ์ค
- GUI๊ฐ ์๋๋ผ๋ฉด
main
ํจ์์์ ๋ก๊ทธํ์ผ์ ๊ธฐ๋ก
- ์ต์ข
์ฌ์ฉ์์๊ฒ ๋ฉ์์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ซ๋ค๋ฉด?
- ๋ฌธ์ ๋ฐ์ ์์ ์์ ๋ก๊ทธ๋ฅผ ๋จ๊ธฐ๊ณ ํ๋ก๊ทธ๋จ ์ข ๋ฃ
- ์์ธ๋ฅผ ๋์ ธ
main
์์ catch ํ ๋ก๊ทธ๋จ๊ธฐ๊ณ ํ๋ก๊ทธ๋จ ์ข ๋ฃ
์์ธกํ์ง ๋ชปํ ์ํฉ
- ์ฒ๋ฆฌ ์ฝ๋๋ ๋น์ฐํ ์์
- ์์ ๋ ๋น์ฐํ ๋ถ๊ฐ๋ฅ
- ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋ฐ๋ผ ๋ฌ๋ผ์ง
- ํน์๋ผ๋ ๋ฐ์ํ ์ ์๋ ๋ชจ๋ ์์ธ๋ฅผ
main
์์ catchํ๊ณ ๋ก๊ทธ๋ฅผ ๋จ๊ฒจ์ค- ์์ธ๋ก ๋จ๊ธฐ๊ธฐ ๋๋ฌธ์ ์์ธํ ๋๋ฒ๊น ์ ๋ณด๋ ์์
- ํฌ๋์๊ฐ ๋์ ๋ฐ๋ก ๋ฉ๋ชจ๋ฆฌ ๋คํ๊ฐ ์๊น
- ํน์๋ผ๋ ๋ฐ์ํ ์ ์๋ ๋ชจ๋ ์์ธ๋ฅผ
์ ๋ฆฌ
- ์คํ ์ค์ ๋ฌธ์ ๋ฅผ ๊ณ ์น๋ ค ํ๋ค๊ณ ํ๋ก๊ทธ๋จ์ ์์ ์ฑ์ด ๋์์ง๋ ๊ฒ์ ์๋๋ค.
- ๋ฌด์กฐ๊ฑด ๊ณ ์น๋ผ๋ ๋ง์ ์๋ชป๋ ์กฐ์ธ์ด๋ค.
- ์ข๋น ์ํ๊ฐ ๋๋ ๊ฒ์ด ๋ ํฐ ๋ฌธ์ ๋ค.