객체지향 설계 · 디자인 패턴 전체 커리큘럼
| 강의 | 주제 | 누적 결과 |
|---|---|---|
| 1 | 객체지향 설계가 필요한 이유 | 변경 비용 지도 |
| 2 | 책임·응집도·결합도 | 클래스 책임표 |
| 3 | 캡슐화와 불변 조건 | 유효 상태 경계 |
| 4 | 상속보다 합성 | 조립 가능한 기능 |
| 5 | 추상화와 인터페이스 | 역할 계약 |
| 6 | 의존성 방향과 경계 | 변경 전파 차단 |
| 7 | SRP와 OCP | 변경 축 분리 |
| 8 | LSP·ISP·DIP | 대체 가능한 경계 |
| 9 | 코드 스멜과 리팩터링 | God Object 해체 |
| 10 | State | 허용 상태 전이 |
| 11 | Strategy | 교체 가능한 정책 |
| 12 | Command | 요청·취소 분리 |
| 13 | Observer | 이벤트 구독 수명 |
| 14 | Factory | 생성 책임 경계 |
| 15 | Builder | 복잡한 객체 조립 |
| 16 | Adapter와 Facade | 외부·복잡성 경계 |
| 17 | Decorator와 Proxy | 기능 확장·접근 제어 |
| 18 | Template Method와 Strategy | 흐름과 정책 비교 |
| 19 | Singleton과 Manager 남용 | 전역 의존성 제거 |
| 20 | 의존성 주입 | 생성자 주입 구조 |
| 21 | 계층과 Clean Architecture | UI·도메인·저장 경계 |
| 22 | 테스트 가능한 설계 | Fake·Stub·Mock 선택 |
| 23 | 게임·웹·백엔드 적용 | 분야별 설계 대응표 |
| 24 | 최종 작업·알림 시스템 | 확장·테스트 가능한 결과물 |