본문으로 건너뛰기
객체지향 설계 · 디자인 패턴LESSON 19

Singleton과 Manager 남용

난이도중급 → 심화
예상 시간65분
선수지식이전 강의

19강. Singleton과 Manager 남용

1. 이번 강의에서 해결할 문제​

Manager::instance()는 시그니처에 없는 의존성과 테스트 간 공유 상태를 만듭니다.

2. 학습 목표​

3. 핵심 개념​

프로세스에 하나라는 요구와 어디서나 접근은 다릅니다. main이 한 인스턴스를 소유해 필요한 객체에 전달할 수 있습니다.

4. 구현​

main.cpp
FileTaskRepository repo{"tasks.db"}; ConsoleNotifier notifier; SystemClock clock;
TaskService service{repo, notifier, clock}; ConsoleUi ui{service};

5. 코드가 동작하는 이유​

생성 순서와 수명이 조립 지점에 보이고 테스트는 독립 Fake를 받습니다.

6. 자주 하는 실수와 해결법​

7. 직접 실습​

8. 이해 점검 질문 3개​

9. 핵심 요약​

MINI QUIZ

Singleton과 Manager 남용 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“Singleton과 Manager 남용” 기능을 확장하기 좋은 구조로 설명한 것은 무엇인가요?
  2. 문제 2다음 중 “Singleton과 Manager 남용”의 핵심 개념을 올바르게 연결한 설명은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

19강. Singleton과 Manager 남용 미완료 상태