전체 글6 [면접을 위한 CS 전공지식 노트] 1장. 디자인 패턴과 프로그래밍 패러다임 1. 1. 4 옵저버 패턴 옵저버 패턴이란 ? 주체가 어떤 객체의 상태 변화를 관찰하다가 상태 변화가 있을 때마다 메서드 등을 통해 옵저버 목록에 있는 옵저버들에게 변화를 알려주는 디자인 패턴 주체 : 객체의 상태 변화를 보고 있는 관찰자 옵저버 : 객체의 상태 변화에 따라 전달되는 메서드 등을 기반으로 추가 변화 사항이 생기는 객체 * 주체와 객체를 따로 두지 않고 상태가 변경되는 객체를 기반으로 구축하기도 함 # 옵저버 패턴을 활용한 서비스 _ 트위터 어떠한 주체를 팔로우했을 때 그 주체가 포스팅을 올리게 되면 옵저버들에게 새로운 트윗이 알람이 가게 된다. 옵저버 패턴은 주로 이벤트 기반 시스템에 사용하며 MVC (Model - View - Controller) 패턴에도 사용된다. 위의 사진을 예시로.. 2022. 10. 8. [면접을 위한 CS 전공지식 노트] 1장. 디자인 패턴과 프로그래밍 패러다임 1.1 디자인 패턴 디자인 패턴이란 ? 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 규약 형태로 만들어 놓은 것 1.1.1 싱글톤 패턴 하나의 클래스에 오직 하나의 인스터스만 가지는 패턴 (데이터베이스 연결 모듈에 많이 사용) 하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용하기 때문에 인스턴스를 생성할 때 비용이 줄어든다. 싱글톤 패턴의 단점 TDD (Test Driven Development) 할 때 단위 테스트를 주로 한다.단위 테스트는 서로 독립적이어야 하고 테스트를 어떤 순서로든 실행할 수 있어야 한다. 하지만 싱글톤 패턴은 미리 생성된 하나의 인스턴스를 기반으로 구현하는 패턴이기에 각 테스트마다 독립적인 인스턴스.. 2022. 10. 1. 이전 1 2 다음