PROGRAMMING · OBJECT-ORIENTED DESIGN24강 학습 가능
객체지향 설계 · 디자인 패턴
패턴 이름을 외우지 않고 변경 요구가 구조에 퍼지는 이유를 분석해 책임·경계·의존성을 다시 설계합니다.
강의 수24강
난이도중급 → 심화
최종 결과물확장 가능하고 테스트 가능한 작업·알림 시스템
진행률을 불러오는 중...
과정의 목표
선수 지식과 권장 순서
- 클래스, 함수, 컨테이너와 다형성 기초
- 작은 프로그램을 헤더와 CPP로 나눠 본 경험
- 모던 C++ 심화 수강 권장
Modern C++의 객체 수명·unique_ptr·합성·다형성을 먼저 익힌 뒤 이 과정에서 변경 비용과 테스트 경계로 확장합니다. Python·Java 학습자도 원칙은 적용할 수 있지만 예제 코드는 C++17입니다.
여러 분야에 공통 적용되는 이유
게임 캐릭터 상태와 웹 주문 상태는 도메인은 달라도 “허용된 상태 전이”라는 같은 문제를 가집니다. 공격 정책과 할인 정책은 교체 가능한 계산 규칙이고, UI 갱신과 이메일 알림은 사건 발행자와 후속 동작을 분리해야 합니다. 이 과정은 프레임워크 API보다 이런 변경 축을 찾는 법을 다룹니다.
커리큘럼 구성
| 구간 | 강의 | 핵심 |
|---|---|---|
| 설계 기초 | 1~9 | 책임·캡슐화·합성·경계·SOLID·리팩터링 |
| 핵심 패턴 | 10~18 | 상태·정책·요청·이벤트·생성·외부 경계·확장 |
| 구조와 테스트 | 19~23 | 전역 상태 제거·DI·계층 경계·테스트·분야 비교 |
| 최종 실습 | 24 | 작업 상태·알림·저장 시스템 리팩터링 |
COURSE ORIENTATION
과정 선택 안내
- 학습 대상
- 클래스·다형성 기초를 변경에 강하고 테스트 가능한 책임·의존성 구조로 확장하려는 학습자
- 선수지식
- 클래스·다형성·컨테이너 기초와 작은 프로그램 작성 경험
- 최종 결과물
- State·Observer·Repository와 생성자 주입을 적용한 작업·알림 시스템
- 추천 다음 과정