๊ณต๋ถํ ๊ฒ
์ ์ฒ๊ธฐ 22๋ 1ํ์ฐจ
์๊ฒ๋ ๊ฒ
[1๊ณผ๋ชฉ] ์ํํธ์จ์ด ์ค๊ณ
1. ์ํํธ์จ์ด ์ค๊ณ ๋ฐฉ๋ฒ
- ์ํฅ์ ์ค๊ณ ๋ฐฉ๋ฒ : ๋ฐํ ์ , ์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ฌ ํฐ ๋ฌธ์ ๋ก ํตํฉ, ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ (Java)
- ํํฅ์ ์ค๊ณ ๋ฐฉ๋ฒ : ํ๋ค์ด, ํฐ ๋ฌธ์ ๋ฅผ ์์ ๋ฌธ์ ๋ก ๋ถํด, ์ ์ฐจ ์ค์ฌ ํ๋ก๊ทธ๋๋ฐ (C)
2. ๋ฐ์ดํฐ ํ๋ฆ๋
- ํ๋ก์ธ์ค : ์
- ๋ฐ์ดํฐ ํ๋ฆ : ํ์ดํ
- ๋ฐ์ดํฐ ์ ์ฅ : ํํ์
- ์ข ๋ฃ : ์ฌ๊ฐํ
3. UI ์ค๊ณ ๋๊ตฌ
- ์์ด์ด ํ๋ ์ : ํ์ด์ง์ ๋ํ ๋๋ต์ ์ธ ๋ ์ด์์ ๋ฐ UI ์์ ์ค๊ณ
- ๋ชฉ์ : ์์ด์ด ํ๋ ์์์ ๋์์ธ, ์ฌ์ฉ ๋ฐฉ๋ฒ ์ค๋ช , ํ๊ฐ๋ฅผ ์ํด ์ค์ ํ๋ฉด๊ณผ ์ ์ฌํ๋๋ก UI๋ฅผ ๋ณ๊ฒฝ (์ ์ )
- ์คํ ๋ฆฌ๋ณด๋ : ์์ด์ด ํ๋ ์์์ ์ฝํ ์ธ ์ค๋ช , ํ๋ฆ๋ ์ถ๊ฐ
- ํ๋กํ ํ์ : ์์ด์ด ํ๋ ์์ด๋ ์คํ ๋ฆฌ๋ณด๋์์ ์ค์ ๋์ ์ถ๊ฐ
- ์ ์ค์ผ์ด์ค : ์ฌ์ฉ์ ์ธก๋ฉด์์์ ์๊ตฌ ์ฌํญ
4. ํด๋์ค ์ค๊ณ ์์น
- ๋จ์ผ ์ฑ ์์ ์์น (Single Responsibility Principle) : ์ํํธ์จ์ด์ ์ค๊ณ ๋ถํ(ํด๋์ค, ํจ์) ๋ ๋จ ํ๋์ ์ฑ ์์ ๊ฐ์ ธ์ผ ํ๋ค.
- ๊ฐ๋ฐฉ ํ์์ ์์น (Open-Closed Principle) : ๊ธฐ์กด ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ๊ธฐ๋ฅ์ ์์ ํ๊ฑฐ๋ ์ถ๊ฐํ ์ ์์ด์ผ ํ๋ค.
- ๋ฆฌ์ค์ฝํ ์นํ ์์น (Liskov Substitution Principle) : ์์ ํด๋์ค๋ ๋ถ๋ชจ ํด๋์ค์์ ๊ฐ๋ฅํ ํ์๋ฅผ ์ํํ ์ ์์ด์ผ ํ๋ค.
- ์์กด ์ญ์ ์ ์์น (Dependency Inversion Principle) : ์์กด ๊ด๊ณ์์ ๋ณํํ๊ธฐ ์ด๋ ค์ด ๊ฒ๊ณผ ์์กดํด์ผ ํ๋ค.
- ์ธํฐํ์ด์ค ๋ถ๋ฆฌ ์์น (Interface Segregation Principle) : ํ๋์ ์ผ๋ฐ์ ์ธ ์ธํฐํ์ด์ค๋ณด๋ค๋ ์ฌ๋ฌ ๊ฐ์ ๊ตฌ์ฒด์ ์ธ ์ธํฐํ์ด์ค ๋ถ๋ฆฌํ๋ค.
5. ์ํคํ ์ณ ์ค๊ณ ๊ณผ์
- ์ค๊ณ ๋ชฉํ ์ค์ -> ์์คํ ํ์ ๊ฒฐ์ -> ์คํ์ผ ์ ์ฉ ๋ฐ ์ปค์คํฐ๋ง์ด์ง -> ์๋ธ์์คํ ์ ๊ธฐ๋ฅ, ์ธํฐํ์ด์ค ๋์ ์์ฑ -> ์ํคํ ์ณ ์ค๊ณ ๊ฒํ
6. ๋์์ธ ํจํด
- ์ํํธ์จ์ด ์ค๊ณ์์ ์์ฃผ ๋ฐ์ํ๋ ๋ฌธ์ ์ ๋ํ ์ผ๋ฐ์ ์ด๊ณ ๋ฐ๋ณต์ ์ธ ํด๊ฒฐ ๋ฐฉ๋ฒ
7. FEP
- Front-end-Processor : ์ ๋ ฅ๋๋ ๋ฐ์ดํฐ๋ฅผ ์ปดํจํฐ์ ํ๋ก์ธ์๊ฐ ์ฒ๋ฆฌํ๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ์ฒ๋ฆฌํ์ฌ ํ๋ก์ธ์ค๊ฐ ์ฒ๋ฆฌํ๋ ์๊ฐ์ ์ค์ฌ์ฃผ๋ ํ๋ก๊ทธ๋จ์ด๋ ํ๋์จ์ด
8. ๊ฐ์ฒด ์งํฅ ๋ถ์ ๊ธฐ๋ฒ
- Rumbaugh : ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ๊ฐ์ฒด ๋ชจ๋ธ, ๋์ ๋ชจ๋ธ, ๊ธฐ๋ฅ ๋ชจ๋ธ๋ก ๋๋๋ ๋ถ์ ๋ฐฉ๋ฒ
- Booch : ๋ฏธ์์ , ๊ฑฐ์์ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋ชจ๋ ์ฌ์ฉํ๋ ๋ถ์ ๋ฐฉ๋ฒ
- Jacobson : ์ ์ค์ผ์ด์ค๋ฅผ ๊ฐ์กฐํ์ฌ ์ฌ์ฉํ๋ ๋ถ์ ๋ฐฉ๋ฒ
- Wirfs-Brock : ๋ถ์๊ณผ ์ค๊ณ์ ๊ตฌ๋ถ์ด ์๊ณ , ๊ณ ๊ฐ ๋ช ์ธ์๋ฅผ ํ๊ฐํด์ ์ค๊ณ ์์ ๊น์ง ์ฐ์์ ์ผ๋ก ์ํํ๋ ๋ถ์ ๋ฐฉ๋ฒ
[2๊ณผ๋ชฉ] ์ํํธ์จ์ด ๊ฐ๋ฐ
1. ํ ์คํธ ์คํ & ํ ์คํธ ๋๋ผ์ด๋ฒ
- ํ ์คํธ ์คํ : ํํฅ์ ํ ์คํธ, ์์ ๋ชจ๋์์ ํ์ ๋ชจ๋๋ก ํ ์คํธ๋ฅผ ์งํํ๋ ๊ฒ
- ํ ์คํธ ๋๋ผ์ด๋ฒ : ์ํฅ์ ํ ์คํธ, ํ์ ๋ชจ๋์์ ์์ ๋ชจ๋๋ก ํ ์คํธ๋ฅผ ์งํํ๋ ๊ฒ
2. NS Chart
- ๋ ผ๋ฆฌ์ ๊ธฐ์ ์ ์ค์ ์ ๋ ๋ํ์ ์ด์ฉํ ํํ ๋ฐฉ๋ฒ
- ์์์ ์ ์ด ์ด๋์ด ์ด๋ ค์
- ๊ทธ๋ฆผ์ผ๋ก ํํํด์ ์ดํด๊ฐ ์ฌ์
3. ๋ธ๋ ๋ฐ์ค & ํ์ดํธ ๋ฐ์ค
- ๋ธ๋ ๋ฐ์ค : ์ํํธ์จ์ด ๋ด๋ถ ๊ตฌ์กฐ๋ ์๋ ์๋ฆฌ๋ฅผ ๋ชจ๋ฅธ ์ํ์์ ํ ์คํธ๋ฅผ ์งํ
- ํ์ดํธ ๋ฐ์ค : ์ํํธ์จ์ด์ ๋ด๋ถ ๊ตฌ์กฐ๋ ์ฝ๋๋ฅผ ์๊ณ ์๋ ์ํ์์ ํ ์คํธ๋ฅผ ์งํ
[3๊ณผ๋ชฉ] ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ
1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ
ํํ : ํ
์ดํ(๋ฆด๋ ์ด์
)์ ํ
์ดํธ๋ฆฌ๋ทฐํธ : ํ
์ด๋ธ(๋ฆด๋ ์ด์
)์ ์ด
์นด๋๋๋ฆฌํฐ : ํํ์ ๊ฐ์ = ํ์ ๊ฐ์
๋๊ทธ๋ฆฌ : ์ดํธ๋ฆฌ๋ทฐํธ์ ๊ฐ์ = ์ด์ ๊ฐ์
[4๊ณผ๋ชฉ] ํ๋ก๊ทธ๋๋ฐ์ธ์ด ํ์ฉ
1. IPv4 & IPv6
- IPv4 : ์ฃผ์ ๊ณต๊ฐ 32๋นํธ, Header Checksum O
- IPv6 : ์ฃผ์ ๊ณต๊ฐ 128๋นํธ, Auto Configuration ์ง์, Header Checksum X
2. ์๋ฌ
- ์ปดํ์ผ ์๋ฌ : ๊ตฌ๋ฌธ ์ค๋ฅ๋ก ํ๋ก๊ทธ๋จ ์ปดํ์ผ ๋ถ๊ฐ, ๋๋ถ๋ถ ๋ฌธ๋ฒ์์ ์๋ฌ (Syntax Error)
- ๋ฐํ์ ์๋ฌ : ์คํ ์ ๋ฐ์ํ๋ ์๋ฌ (NullPointerException, Divide by Zero)
3. ICMP
- Internet Control Message Protocol : TCP/IP ์์ IP ํจํท์ ์ฒ๋ฆฌํ ๋ ๋ฐ์๋๋ ๋ฌธ์ ๋ฅผ ์๋ ค์ฃผ๋ ํ๋กํ ์ฝ
4. ๊ฒฐํฉ๋ & ์์ง๋
- ๊ฒฐํฉ๋๋ ๋ฎ๊ฒ ์์ง๋๋ ๋๊ฒ
- ๊ฒฐํฉ๋ : ์ํํธ์จ์ด์์ ํ ์์๊ฐ ๋ค๋ฅธ ์์์ ์ผ๋ง๋ ๊ฐ๋ ฅํ๊ฒ ์ฐ๊ฒฐ๋์ด ์๋์ง, ์ผ๋ง๋ ์์กดํ๊ณ ์๋์ง
- ์์ง๋ : ์ํํธ์จ์ด์์ ๋น์ทํ ์์๋ผ๋ฆฌ ์ผ๋ง๋ ๋ญ์ณ์๋์ง
5. ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๊ธฐ๋ฒ
- First-Fit : ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฒ์๋ถํฐ ํ์ํด์ ๋ค์ด๊ฐ ์ ์๋ ๋ธ๋ก ์ค์ ์ฒซ ๋ฒ์งธ์ ํ ๋น
- Best-Fit : ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฒ์๋ถํฐ ํ์ํด์ ๊ฐ์ฅ ์ ํฉํ ๋ธ๋ก์ ํ ๋น
- Worst-Fit : ๋ค์ด๊ฐ ์ ์๋ ๋ธ๋ก ์ค ๊ฐ์ฅ ํฐ ๋ธ๋ก์ ํ ๋น -> ๋ด๋ถ๋จํธํ๊ฐ ์ฌํด์ง
6. ๋น๋ ๋๊ตฌ
- Make -> Ant -> Maven -> Gradle
7. ์ฐ์ฐ์ ์ฐ์ ์์
- ๋จํญ ์ฐ์ฐ์ > ๋นํธ ์ฐ์ฐ์ > ์ดํญ ์ฐ์ฐ์ > ๋ ผ๋ฆฌ ์ฐ์ฐ์
8. ์
- ์ปค๋๊ณผ ์ฌ์ฉ์ ์ฌ์ด์ ์ธํฐํ์ด์ค
- ๋ช ๋ น์ด ํด์๊ธฐ ๊ธฐ๋ฅ
- ๋ฐ๋ณต์ ์ธ ๋ช ๋ น ๊ฐ๋ฅ
- ์ด๊ธฐํ ํ์ผ๋ก ์ฌ์ฉ์ ํ๊ฒฝ ์ค์ ๊ฐ๋ฅ
[5๊ณผ๋ชฉ] ์ ๋ณด์์คํ ๊ตฌ์ถ๊ด๋ฆฌ
๊ณต๋ถํ ๊ฒ
์ ์ฒ๊ธฐ 21๋ 1ํ์ฐจ
๋๋ ์
์๋ ์ ๋ฐฐ์ด ๊ฒ๋ค ๋ณต์ตํ๋ ๋๋์ด๋ผ ์ฌ๋ฐ๋ค๐
์ผ์ฃผ์ผ ๋ฒผ๋ฝ์น๊ธฐ ๊ฐ๋ณด์
'๐ป ๊ฐ๋ฐ > iOS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] 22.04.20 (0) | 2022.04.20 |
---|---|
[TIL] 22.04.18 (0) | 2022.04.18 |
[TIL] 22.03.23 (0) | 2022.03.23 |
[TIL] 22.03.22 (0) | 2022.03.22 |
[TIL] 22.03.20 (0) | 2022.03.20 |