2. GoF(Gangs of Four) ๋์์ธ ํจํด
์ํํธ์จ์ด ์ค๊ณ์ ์์ฃผ ์ฌ์ฉ๋๋ 23๊ฐ์ ๋์์ธ ํจํด์ ์ฒด๊ณ์ ์ผ๋ก ์ ๋ฆฌํ ๊ฐ๋
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์์์ ๋ฐ๋ณต์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ํ ํ๋ฆฟ์ ์ ๊ณต
๋์์ธ ํจํด ๋ชฉ์ : ์ ์ง๋ณด์์ฑ ํฅ์, ์ฌ์ฌ์ฉ์ฑ ์ฆ๋, ํ์ฅ ์ฉ์ด์ฑ, ๊ฐ์ฒด์งํฅ ์์น ๊ฐํ
[GoF ๋์์ธ ํจํด ๋ถ๋ฅ]
1๏ธโฃ ์์ฑ Creational ํจํด: ๊ฐ์ฒด ์์ฑ ๊ณผ์ ์ ์บก์ํํ์ฌ ๊ฐ์ฒด ์์ฑ ๋ก์ง์ด ์ฝ๋์ ๋ถ์ฐ๋์ง ์๋๋ก ๋๋๋ค.
- Factory Method: ๊ฐ์ฒด ์์ฑ์ ํ์ ํด๋์ค์์ ์ ์ํ๋๋ก ์์
- Abstract Factory: ๊ด๋ จ ๊ฐ์ฒด๋ค์ ์งํฉ ์ ์ฑ์ ์ํ ์ธํฐํ์ด์ค ์ ๊ณต
- Singleton: ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ํ๋๋ง ์์ฑํ๊ณ ์ ์ญ์ ์ผ๋ก ์ ๊ทผ ๊ฐ๋ฅ
- Builder: ๋ณต์กํ ๊ฐ์ฒด๋ฅผ ๋จ๊ณ๋ณ๋ก ์์ฑ
- Prototype: ๊ธฐ์กด ๊ฐ์ฒด๋ฅผ ๋ณต์ฌํ์ฌ ์๋ก์ด ๊ฐ์ฒด ์์ฑ
2๏ธโฃ ๊ตฌ์กฐ Structural ํจํด: ํด๋์ค๋ ๊ฐ์ฒด๋ฅผ ์กฐํฉํ์ฌ ๋ ํฐ ๊ตฌ์กฐ๋ฅผ ํ์ฑํ๊ณ , ๊ด๊ณ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ตฌ์ฑํ๋ค.
- Adapter: ์๋ก ํธํ๋์ง ์์ ์ธํฐํ์ด์ค๋ฅผ ์ฐ๊ฒฐ
- Bridge: ์ถ์ํ์ ๊ตฌํ์ ๋ถ๋ฆฌํ์ฌ ๋ ๋ฆฝ์ ์ผ๋ก ํ์ฅ
- Composite: ๊ฐ์ฒด๋ฅผ ํธ๋ฆฌ ๊ตฌ์กฐ๋ก ๊ตฌ์ฑํ์ฌ ๋ถ๋ถ-์ ์ฒด ๊ด๊ณ๋ฅผ ํํ
- Decorator: ๊ฐ์ฒด์ ๋์ ์ผ๋ก ๊ธฐ๋ฅ์ ์ถ๊ฐ
- Facade: ์๋ธ์์คํ ์ ๋ํ ๋จ์ํ๋ ์ธํฐํ์ด์ค ์ ๊ณต
- Flyweight: ๊ณต์ ๋ฅผ ํตํด ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ ์ต์ํ
- Proxy: ๊ฐ์ฒด์ ๋ํ ๋๋ฆฌ์ธ ์ญํ ์ ์ํ
3๏ธโฃ ํ๋ Behavioral ํจํด: ๊ฐ์ฒด ๊ฐ์ ์ํธ์์ฉ๊ณผ ์ฑ ์ ๋ถ๋ฐฐ๋ฅผ ์ ์
- Chain of Responsibility: ์์ฒญ์ ์ฒ๋ฆฌํ ๊ฐ์ฒด๋ฅผ ์ฐ๊ฒฐ๋ ์ฒด์ธ์ผ๋ก ๊ตฌ์ฑ
- Command: ์์ฒญ์ ์บก์ํํ์ฌ ์คํ, ์ทจ์, ๋ก๊ทธ ๋ฑ์ ์์ ์ํ
- Interpreter: ์ธ์ด์ ๋ฌธ๋ฒ์ ํด๋์คํํ์ฌ ํด์
- Iterator: ์งํฉ ๊ฐ์ฒด๋ฅผ ์์ฐจ์ ์ผ๋ก ์ ๊ทผ
- Mediator: ๊ฐ์ฒด ๊ฐ์ ์ํธ์์ฉ์ ์ค์ฌ
- Memento: ๊ฐ์ฒด ์ํ๋ฅผ ์ ์ฅ ๋ฐ ๋ณต์
- Observer: ๊ฐ์ฒด ์ํ ๋ณํ๋ฅผ ๋ค๋ฅธ ๊ฐ์ฒด๋ค์๊ฒ ์๋ฆผ
- State: ๊ฐ์ฒด ์ํ์ ๋ฐ๋ผ ๋์ ๋ณ๊ฒฝ
- Strategy: ์๊ณ ๋ฆฌ์ฆ์ ์บก์ํํ๊ณ ๊ต์ฒด ๊ฐ๋ฅํ๊ฒ ์ค๊ณ
- Template Method: ์๊ณ ๋ฆฌ์ฆ์ ๊ณจ๊ฒฉ์ ์ ์ํ๊ณ ์ธ๋ถ ๋ด์ฉ์ ํ์ ํด๋์ค์์ ๊ตฌํ
- Visitor: ๊ฐ์ฒด ๊ตฌ์กฐ๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ์๋ก์ด ์ฐ์ฐ ์ถ๊ฐ
4. ์ ์ค์ผ์ด์ค
์์คํ ์ด ์ฌ์ฉ์ ๋๋ ๋ค๋ฅธ ์์คํ ๊ณผ ์ํธ์์ฉํ๋ ๋ฐฉ์์ ๋ํด ์ค๋ช ํ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ํ์ ์์ ์ค ํ๋
์ฃผ๋ก ์๊ตฌ์ฌํญ ๋ถ์ ๋จ๊ณ์์ ์์ฑ, ์์คํ ์ด ์ ๊ณตํด์ผ ํ ๊ธฐ๋ฅ์ ์ฌ์ฉ์ ๊ด์ ์์ ์ ์
- ์ ์ค์ผ์ด์ค ๋ค์ด์ด๊ทธ๋จ: UML์ ์ฌ์ฉํ์ฌ ์ ์ค์ผ์ด์ค๋ฅผ ์๊ฐ์ ์ผ๋ก ํํ
5. CASE
์ํํธ์จ์ด ๊ฐ๋ฐ ๊ณผ์ ์ ์๋ํํ๊ฑฐ๋ ์ง์ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๋๊ตฌ ๋ฐ ๊ธฐ์ ์ ์ง์นญํ๋ค.
8. ์์คํ ์ ๊ตฌ์ฑ์์
์์คํ ์ ์ ์ํ๊ณ ์ค๊ณํ๋ฉฐ ์ด์ํ๋ ๋ฐ ํ์ํ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์ฑ ๋จ์
- ์ ๋ ฅ Input
- ์ฒ๋ฆฌ Process
- ์ถ๋ ฅ Output
- ํผ๋๋ฐฑ Feedback
- ์ ์ด Control
- ๊ฒฝ๊ณ Boundary
- ํ๊ฒฝ Environment
- ์์ Resources
- ๋ชฉ์ Objective
- ์ํธ์์ฉ Interaction
10. ์๊ตฌ์ฌํญ ๊ฐ๋ฐ ํ๋ก์ธ์ค
(1) ์๊ตฌ์ฌํญ ๋์ถ: ์๊ตฌ์ฌํญ์ ์๋ณํ๊ณ ์์ง
(2) ์๊ตฌ์ฌํญ ๋ถ์: ์์งํ ์๊ตฌ์ฌํญ์ ๊ฒํ , ์ ๋ฆฌ, ์ฐ์ ์์ ์ค์
(3) ์๊ตฌ์ฌํญ ๋ช ์ธํ: ์๊ตฌ์ฌํญ์ ๋ฌธ์ํ
(4) ์๊ตฌ์ฌํญ ํ์ธ ๋ฐ ๊ฒ์ฆ: ์๊ตฌ์ฌํญ์ ์ ํ์ฑ๊ณผ ํ๋น์ฑ์ ๊ฒ์ฆ
(5) ์๊ตฌ์ฌํญ ๊ด๋ฆฌ: ์๊ตฌ์ฌํญ ๋ณ๊ฒฝ ๋ฐ ์ถ์
18. UML(Unified Modeling Language) ๋ค์ด์ด๊ทธ๋จ
์์คํ ์ ๊ตฌ์กฐ์ ๋์์ ์๊ฐ์ ์ผ๋ก ํํํ๊ธฐ ์ํ ํ์ค ์ธ์ด
(1) ๊ตฌ์กฐ ๋ค์ด์ด๊ทธ๋จ: ์์คํ ์ ์ ์ ์ธ ๊ตฌ์กฐ, ์ฆ ์์คํ ์ ๊ตฌ์ฑ ์์์ ๊ด๊ณ๋ฅผ ๋ํ๋ธ๋ค.
- ํด๋์ค ๋ค์ด์ด๊ทธ๋จ
- ๊ฐ์ฒด ๋ค์ด์ด๊ทธ๋จ
- ์ปดํฌ๋ํธ ๋ค์ด์ด๊ทธ๋จ
- ๋ฐฐ์น ๋ค์ด์ด๊ทธ๋จ
- ํจํค์ง ๋ค์ด์ด๊ทธ๋จ
- ๋ณตํฉ ๊ตฌ์กฐ ๋ค์ด์ด๊ทธ๋จ
- ํ๋กํ์ผ ๋ค์ด์ด๊ทธ๋จ
(2) ํ๋ ๋ค์ด์ด๊ทธ๋จ: ์์คํ ์ ๋์, ์ฆ ๊ตฌ์ฑ ์์ ๊ฐ์ ์ํธ์์ฉ๊ณผ ์ํ ๋ณํ๋ฅผ ๋ชจ๋ธ๋ง
- ์ ์ค์ผ์ด์ค ๋ค์ด์ด๊ทธ๋จ
- ์ํ์ค ๋ค์ด์ด๊ทธ๋จ
- ์ปค๋ฎค๋์ผ์ด์ ๋ค์ด์ด๊ทธ๋จ
- ์ํ ๋ค์ด์ด๊ทธ๋จ
- ํ๋ ๋ค์ด์ด๊ทธ๋จ
- ํ์ด๋ฐ ๋ค์ด์ด๊ทธ๋จ
- ์ํธ์์ฉ ๋ค์ด์ด๊ทธ๋จ
20. ์บก์ํ vs ์ ๋ณด ์๋
- ์บก์ํ: ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋์๊ณผ ๋ฐ์ดํฐ๋ฅผ ๋ฌถ์ด ๊ฐ์ฒด๋ฅผ ํ๋์ ๋ ๋ฆฝ๋ ๋จ์๋ก ๋ง๋๋ ๋ฐ ์ด์ ์ด ์๋ค.
- ์ ๋ณด ์๋: ๋ฐ์ดํฐ์ ๊ตฌํ์ ์ธ๋ถ ์ฌํญ์ ์ธ๋ถ์์ ์ง์ ์ ๊ทผํ์ง ๋ชปํ๋๋ก ๋ณด๋กํ๋๋ฐ ์ค์ ์ ๋๋ค.
28. ๋ฒ๋ธ ์ ๋ ฌ
์ธ์ ํ ๋ ๊ฐ์ ์์๋ฅผ ๋น๊ตํ์ฌ, ํ์์ ๋ฐ๋ผ ์์น๋ฅผ ๋ฐ๊พธ๋ฉฐ ์ ๋ ฌํ๋ ์๊ณ ๋ฆฌ์ฆ
๊ฐ Pass๋ ๋ฐฐ์ด์ ํ ๋ฒ ์ ์ฒด์ ์ผ๋ก ์ํํ๋ฉฐ, ํฐ ๊ฐ์ ๋ค๋ก ์ด๋์ํจ๋ค.
์) ์ฃผ์ด์ง ๋ฐฐ์ด: 9, 6, 7, 3, 5
(1) Pass 1
- 9์ 6 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 9, 7, 3, 5
- 9์ 7 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 7, 9, 3, 5
- 9์ 3 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 7, 3, 9, 5
- 9์ 5 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 7, 3, 5, 9
Pass 1 ๊ฒฐ๊ณผ: 6, 7, 3, 5, 9
(1) Pass 2
- 6๊ณผ 7 ๋น๊ต → ์๋ฆฌ ๊ตํ ์์ → 6, 7, 3, 5, 9
- 7๊ณผ 3 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 3, 7, 5, 9
- 7๊ณผ 5 ๋น๊ต → ์๋ฆฌ ๊ตํ → 6, 3, 5, 7, 9
- 7๊ณผ 9 ๋น๊ต → ์๋ฆฌ ๊ตํ ์์ → 6, 3, 5, 7, 9
Pass 2 ๊ฒฐ๊ณผ: 6, 3, 5, 7, 9
31. ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋
์๊ณ ๋ฆฌ์ฆ | ์ต์ (Best Case) | ํ๊ท (Average Case) | ์ต์ (Worst Case) | ๊ณต๊ฐ ๋ณต์ก๋ | ํน์ง |
๋ฒ๋ธ ์ ๋ ฌ | O(N) | O(N²) | O(N²) | O(1) | ๋จ์ํ์ง๋ง ๋นํจ์จ์ , ์์ ๋ฐ์ดํฐ์ ์ ํฉ |
์ ํ ์ ๋ ฌ | O(N²) | O(N²) | O(N²) | O(1) | ๊ตํ ํ์๊ฐ ์ ์, ์์ ์ ๋ ฌ ์๋ |
์ฝ์ ์ ๋ ฌ | O(N) | O(N²) | O(N²) | O(1) | ๋ฐ์ดํฐ๊ฐ ๊ฑฐ์ ์ ๋ ฌ๋ ๊ฒฝ์ฐ ํจ์จ์ , ์์ ์ ๋ ฌ |
ํต ์ ๋ ฌ | O(N log N) | O(N log N) | O(N²) | O(log N) | ํ๊ท ์ ์ผ๋ก ๋งค์ฐ ๋น ๋ฆ, ๋ถ์์ ์ ๋ ฌ |
๋ณํฉ ์ ๋ ฌ | O(N log N) | O(N log N) | O(N log N) | O(N) | ์์ ์ ๋ ฌ, ์ถ๊ฐ ๋ฉ๋ชจ๋ฆฌ ํ์ |
ํ ์ ๋ ฌ | O(N log N) | O(N log N) | O(N log N) | O(1) | ๋ถ์์ ์ ๋ ฌ, ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ |
๊ณ์ ์ ๋ ฌ | O(N + K) | O(N + K) | O(N + K) | O(N + K) | ๋ฐ์ดํฐ ๋ฒ์๊ฐ ์๊ณ ์ ์ํ์ผ ๋ ๋งค์ฐ ํจ์จ์ |
๊ธฐ์ ์ ๋ ฌ | O(N × d) | O(N × d) | O(N × d) | O(N + K) | ์์ ์ ๋ ฌ, ์ซ์๋ ๋ฌธ์์ด์ ์ ํฉ |
์ ์ ๋ ฌ | O(N log N) | O(N^(3/2)) | O(N²) | O(1) | ์ฝ์ ์ ๋ ฌ ๊ธฐ๋ฐ, ๊ฐ๊ฒฉ์ ์ค์ฌ๊ฐ๋ฉฐ ์ ๋ ฌ |
46. ๋ณํ์ ์ด ๊ธฐ๋ฒ
๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์์ ๋์์ฑ์ ๊ด๋ฆฌํ๊ณ , ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๊ธฐ๋ฒ
- ๋กํน ๊ธฐ๋ฒ: ํธ๋์ญ์ ์ด ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฑฐ๋ ์ฝ๊ธฐ ์ ์ ํด๋น ๋ฐ์ดํฐ์ ๋ํด Lock์ ์ค์ ํ์ฌ ๋ค๋ฅธ ํธ๋์ญ์ ์ด ๋์์ ์ ๊ทผํ์ง ๋ชปํ๋๋ก ์ ์ด
- ํ์ ์คํฌํ ๊ธฐ๋ฒ: ๊ฐ ํธ๋์ญ์ ์ ํ์์คํฌํ(๊ณ ์ ์๊ฐ๊ฐ)๋ฅผ ๋ถ์ฌํ์ฌ ํธ๋์ญ์ ์ ์์๋ฅผ ๊ฒฐ์ , ํธ๋์ญ์ ๊ฐ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ ์ผ๊ด์ฑ ์ ์ง, ํธ๋์ญ์ ์คํ ์์๋ฅผ ๋ฏธ๋ฆฌ ์ง์ ํ๋ฏ๋ก ๊ต์ฐฉ ์ํ(Deadlock)๊ฐ ๋ฐ์ํ์ง ์์
- ๋ค์ค ๋ฒ์ ๊ธฐ๋ฒ: ๋ฐ์ดํฐ์ ์ฌ๋ฌ ๋ฒ์ ์ ์ ์งํ์ฌ ํธ๋์ญ์ ์ด ๋์์ ๋ค๋ฅธ ๋ฒ์ ์ ์ ๊ทผํ ์ ์๋๋ก ํ์ฉ
โ ์๋ถํ ๊ธฐ๋ฒ: CPU๋ฅผ ์ฌ๋ฌ ์ฌ์ฉ์๋ ํ๋ก์ธ์ค๊ฐ ์๊ฐ ๋จ์๋ก ๋๋์ด ์ฌ์ฉํ๋ ์ด์ ์ฒด์ ์ ์ฒ๋ฆฌ ๋ฐฉ์ → ์ด๋ ๋ณํ์ ์ด ๊ธฐ๋ฒ์ด ์๋๋ผ ์ด์ ์ฒด์ ์ ํ๋ก์ธ์ค ์ค์ผ์ค๋ง ๊ธฐ๋ฒ์ ํด๋น
56. ๋ณ๋ ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๊ฒฝ ์ค ์ํ ๋ถํ ์ ํ์ฉ๋๋ ๋ถํ ๊ธฐ๋ฒ
: ๋ฒ์ ๋ถํ , ํด์ ๋ถํ , ๋ฆฌ์คํธ ๋ถํ , ์กฐํฉ ๋ถํ , ๋ผ์ด๋-๋ก๋น ๋ถํ , ํค ๋ถํ
61. ํ์ด์ง ๊ธฐ๋ฒ์์ ํ์ด์ง ํฌ๊ธฐ๊ฐ ์์์ง์๋ก ๋ฐ์ํ๋ ํ์
- ํ์ด์ง ์ ์ฆ๊ฐ
- ํ์ด์ง ํ ์ด๋ธ ํฌ๊ธฐ ์ฆ๊ฐ: ํ์ด์ง ํ ์ด๋ธ์ ๊ฐ ํ์ด์ง์ ๋งคํ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ค. ํ์ด์ง ์๊ฐ ์ฆ๊ฐํ๋ฉด ํ์ด์ง ํ ์ด๋ธ ํญ๋ชฉ๋ ์ฆ๊ฐํ๋ฉฐ, ํ์ด์ง ํ ์ด๋ธ์ ํฌ๊ธฐ๊ฐ ์ปค์ง๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ ๋ง์ด ์ฌ์ฉํ๊ฒ ๋๋ค.
- ๋ด๋ถ ๋จํธํ ๊ฐ์
- I/O ์์ ์ฆ๊ฐ
67. ์์ง๋
(๋ฎ) ์ฐ์ฐ์ → ๋ ผ๋ฆฌ์ → ์๊ฐ์ → ์ ์ฐจ์ → ํต์ ์ → ์์ฐจ์ → ๊ธฐ๋ฅ์ (๋)
* ๊ฒฐํฉ๋
(๋) ๋ด์ฉ Content → ๊ณตํต Common → ์ธ๋ถ External → ์ ์ด Control → ์คํฌํ Stamp → ์๋ฃ Data (๋ฎ)
69. JAVA
public class Operator {
public static void main(String[] args) {
int x = 5, y = 0, z = 0;
y = x++; // ํ์ ์ฆ๊ฐ ์ฐ์ฐ: x์ ํ์ฌ ๊ฐ์ y์ ๋์
ํ ํ x๋ฅผ 1 ์ฆ๊ฐ
z = --x; // ์ ์ ๊ฐ์ ์ฐ์ฐ: x๋ฅผ 1 ๊ฐ์ํ ํ ๊ทธ ๊ฐ์ z์ ๋์
System.out.print(x + ", " + y + ", " + z);
}
}
(1) ์ด๊ธฐ๊ฐ
x = 5, y = 0, z = 0
(2) y = x++;
- x์ ํ์ฌ ๊ฐ(5)์ y์ ๋์ → y = 5
- x๋ฅผ 1 ์ฆ๊ฐ → x = 6
๊ฒฐ๊ณผ: x = 6, y = 5
(3) z = --x;
- x๋ฅผ 1 ๊ฐ์ → x = 5
- ๊ฐ์๋ ๊ฐ์ z์ ๋์ → z = 5
๊ฒฐ๊ณผ: x = 5, z = 5
โจ ์ต์ข ๊ฐ x = 5, y = 5, z = 5
79. TCP
Transmission Control Protocol
์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ ์ ์ก์ ์ ๊ณตํ๋ ํ๋กํ ์ฝ
์ฃผ๋ก ๋ฐ์ดํฐ์ ์์ ๋ณด์ฅ, ํ๋ฆ ์ ์ด, ์ค๋ฅ ์ ์ด ๋ฑ์ ์ํํ๋ค.
- ์ข ๋จ ๊ฐ(end-to-end) ์ฐ๊ฒฐ์ ์ ๊ณตํ๋ฉฐ, ๋คํธ์ํฌ ๊ณ์ธต ์์์ ๋์ (์ธ์ ํ ๋ ธ๋ ์ฌ์ด์ ํ๋ ์ ์ ์ก → ๋ฐ์ดํฐ ๋งํฌ ๊ณ์ธต์ ์ญํ , ์ธ๊ทธ๋จผํธ ๋จ์)
- ํ๋ฆ ์ ์ด(Flow Control)์ ๊ธฐ๋ฅ์ ์ํํ๋ค.
- ์ ์ด์ค(Full Duplex) ๋ฐฉ์์ ์๋ฐฉํฅ ๊ฐ์ํ์ ์ ์ ๊ณต
- ์ ์ก ๋ฐ์ดํฐ์ ์๋ต ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ์ ์กํ ์ ์๋ค. (๋ฐ์ดํฐ ํจํท์ ACK(์๋ต)๋ฅผ ํฌํจ์ํฌ ์ ์์ผ๋ฉฐ, ์ ์ก ๋ฐ์ดํฐ์ ACK๋ฅผ ํจ๊ป ์ ์กํ ์ ์๋ค. ์ด๋ฅผ Piggybacking ์ด๋ผ๊ณ ํ๋ค.)
80. CSMA/CA ์ CSMA/CD
ํน์ง | CSMA/CA | CSMA/CD |
์๋ฏธ | ์ถฉ๋ ํํผ (Collision Avoidance) | ์ถฉ๋ ๊ฐ์ง (Collision Detection) |
์ฌ์ฉ ํ๊ฒฝ | ๋ฌด์ ๋คํธ์ํฌ (Wi-Fi) | ์ ์ ๋คํธ์ํฌ (Ethernet) |
์ถฉ๋ ์ฒ๋ฆฌ ๋ฐฉ์ | ์ถฉ๋์ด ๋ฐ์ํ๊ธฐ ์ ์ ํํผ | ์ถฉ๋ ๋ฐ์ ํ ๊ฐ์งํ์ฌ ์ฒ๋ฆฌ |
์๋ ๋ฐฉ์ | ๋งค์ฒด๊ฐ ๋น์ด ์๋์ง ํ์ธ ํ ๋๊ธฐ ๋ฐ ์ ์ก | ๋งค์ฒด๊ฐ ๋น์ด ์๋ ์ง ํ์ธ ํ ์ ์ก, ์ถฉ๋ ๋ฐ์ ์ ๊ฐ์ง |
82. ์นจ์ ์ฐจ๋จ ์์คํ (๋ฐฉํ๋ฒฝ)
→ Screened Subnet ์คํฌ๋ฆฐ๋ ์๋ธ๋ท
: ์ธ๋ถ ๋คํธ์ํฌ(์ธํฐ๋ท)์ ๋ด๋ถ ๋คํธ์ํฌ ์ฌ์ด์ ๋ ๊ฐ์ ๋ผ์ฐํฐ์ ์ค๊ฐ ๋คํธ์ํฌ๋ฅผ ๋๋ ๋ฐฉ์
: DMZ๋ ์ธ๋ถ์ ๋ด๋ถ์ ์ค๊ฐ ์ง์ ์ผ๋ก ์ธ๋ถ์์ ์ ๊ทผ ๊ฐ๋ฅํ ์๋ฒ๋ฅผ ๋ฐฐ์นํ์ฌ ๋ด๋ถ ๋คํธ์ํฌ๋ฅผ ๋ณดํธ
89. OSPF (Open Shortest Path First)
๋งํฌ ์ํ ๋ผ์ฐํ ํ๋กํ ์ฝ, IP ๋คํธ์ํฌ์์ ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
- ๋คํธ์ํฌ ๋ณํ์ ์ ์ํ๊ฒ ๋์ฒ
- ๋ฉํฐ์บ์คํ ์ง์
- ์ต๋จ ๊ฒฝ๋ก ํ์์ Dijkstra ์๊ณ ๋ฆฌ์ฆ ์ฌ์ฉ
90. SAN (Storage Area Network)
- ๋คํธ์ํฌ ์์ ๊ด์ฑ๋ ์ค์์น์ ์ด์ ์ธ ๊ณ ์ ์ ์ก๊ณผ ์ฅ๊ฑฐ๋ฆฌ ์ฐ๊ฒฐ ๋ฐ ๋ฉํฐ ํ๋กํ ์ฝ ๊ธฐ๋ฅ์ ํ์ฉ
- ๊ฐ๊ธฐ ๋ค๋ฅธ ์ด์์ฒด์ ๋ฅผ ๊ฐ์ง ์ฌ๋ฌ ๊ธฐ์ข ๋ค์ด ๋คํธ์ํฌ์์์ ๋์ผ ์ ์ฅ์ฅ์น์ ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ๊ฒ ํจ์ผ๋ก์จ, ์ฌ๋ฌ ๊ฐ์ ์ ์ฅ์ฅ์น๋ ๋ฐฑ์ ์ฅ๋น๋ฅผ ๋จ์ผํ์ํจ ์์คํ
+ MBR (Master Boot Record): ํ๋๋์คํฌ์ ๋ถํธ ์นํฐ์ ์ ์ฅ๋ ๋ฐ์ดํฐ, ์ด์ ์ฒด์ ๋ฅผ ๋ถํ ํ๊ธฐ ์ํ ์ ๋ณด๋ฅผ ์ดํจ
+ NAC (Network Access Control): ๋คํธ์ํฌ ์ ๊ทผ ์ ์ด ๊ธฐ์ , ์ฌ์ฉ์๋ ๋๋ฐ์ด์ค๊ฐ ๋คํธ์ํฌ์ ์ ๊ทผํ ๋ ์ธ์ฆ ๋ฐ ๊ถํ์ ๊ด๋ฆฌ
+ NIC (Network Interface Card): ์ปดํจํฐ์ ๋คํธ์ํฌ์ ์ฐ๊ฒฐํ๋ ํ๋์จ์ด ์ฅ์น, ๋คํธ์ํฌ ์ธํฐํ์ด์ค ์ญํ ์ ํ๋ค.
92. ์ํํธ์จ์ด ๋น์ฉ ์ฐ์ ๋ชจ๋ธ
(1) PUTNAM: Rayleigh ๊ณก์ ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ก์ ํธ์ ํ์ํ ์ธ๋ ฅ๊ณผ ๊ฐ๋ฐ ๊ธฐ๊ฐ์ ์์ธกํ๋ ๋น์ฉ ์ฐ์ ๋ชจ๋ธ
(2) COCOMO (Constructive Cost Model): ํ๋ก์ ํธ๋ฅผ Organic, Semi-Detached, Embedded์ ์ธ ๊ฐ์ง ๊ฐ๋ฐ ์ ํ์ผ๋ก ๊ตฌ๋ถ
- Organic: ์๊ท๋ชจ, ๋จ์ํ ํ๋ก์ ํธ (๊ฒฝํ์ด ๋ง์ ํ)
- Semi-Detached: ์ค๊ฐ ๊ท๋ชจ, ๋ณต์ก๋๊ฐ ์ค๊ฐ์ธ ํ๋ก์ ํธ
- Embedded: ๋๊ท๋ชจ, ๊ณ ๋์ ์ ์ฝ ์กฐ๊ฑด์ด ์๋ ํ๋ก์ ํธ
(3) FP (Function Point): ์ํํธ์จ์ด ๊ธฐ๋ฅ(์ ๋ ฅ, ์ถ๋ ฅ, ํ์ผ, ์ธํฐํ์ด์ค ๋ฑ)์ ๊ธฐ๋ฐ์ผ๋ก ํฌ๊ธฐ๋ฅผ ์ธก์ ํ์ฌ ๋น์ฉ์ ์ฐ์ ํ๋ ๋ชจ๋ธ
(4) SLIM (Software Life Cycle Management): ํ๋ก์ ํธ ๊ธฐ๊ฐ, ๋ ธ๋ ฅ, ํ์ง ๋ฑ์ ์์ธกํ๊ธฐ ์ํด ๊ฒฝํ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ ๋น์ฉ ์ฐ์ ๋ชจ๋ธ
'๐ ์๊ฒฉ์ฆ > ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2022๋ 1ํ์ฐจ ํ๊ธฐ ๊ธฐ์ถ๋ฌธ์ ํ์ด (0) | 2025.02.05 |
---|---|
2021๋ 3ํ์ฐจ ํ๊ธฐ ๊ธฐ์ถ๋ฌธ์ ํ์ด (0) | 2025.01.26 |
2021๋ 1ํ์ฐจ ํ๊ธฐ ๊ธฐ์ถ๋ฌธ์ ํ์ด (0) | 2025.01.17 |
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ํ๊ธฐ ํต์ฌ ์์ฝ | 5๊ณผ๋ชฉ : ์ ๋ณด์์คํ ๊ตฌ์ถ ๊ด๋ฆฌ (0) | 2025.01.15 |
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ํ๊ธฐ ํต์ฌ ์์ฝ | 4๊ณผ๋ชฉ : ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํ์ฉ (0) | 2025.01.15 |