본문 바로가기

OCP2

[GoF Design Pattern] 2. 옵저버(Obsever) 패턴 [GoF Design Pattern] 2. 옵저버(Obserer) 패턴 주제(Subject)를 구독하는 관찰자(Observer) 패턴. 여러 컴포넌트가 같은 주제를 구독하고 주제의 정보가 변경될 때, 각 컴포넌트는 즉각 업데이트를 받도록 한다. 주제(Subject)는 자신을 구독하고 있는 옵저버(Observer)들을 관리하고 옵저버는 주제에 의존적이다. 예를 들어 하나의 데이터 소스(날씨 서버)가 있고 여러 종류의 UI 화면이 날씨 정보를 갱신받아 업데이트한다고 할 때, 옵저버 패턴을 적용할 수 있겠다. 옵저버 패턴은 구조가 매우 간단하고 이해하기도 편한 패턴이다. 쉽지만 여러 가지 중요한 디자인 원칙을 내포하고 있기 때문에 잘 공부해 두면 좋다. -> 개방-폐쇄 원칙(OCP) , 느슨한 결합(Loose.. 2023. 5. 29.
[Clean Code] 4. 오류 처리 [Clean Code] 오류 처리 오류 처리는 매우 중요한데, 이것으로 인해 코드 논리의 이해가 방해받으면 안 된다. 따라서 깔끔하게 오류처리를 하는 기법을 알아보는 [Chapter 7. 오류처리]이다. [Chapter 7 오류 처리 요약] 오류 코드 보다는 예외를 사용하라 : 오류 코드는 Caller의 논리가 잘 안 보이게 만든다. try-catch 문 부터 사용하여 트랜잭션 처럼 활용하라 : try 문의 범위 정의 미확인 예외를 사용하라 : 추상화된 예외 클래스를 이용해 OCP를 준수하라 예외에 의미를 제공 : 전후 사정을 설명하는 Message 호출자를 고려한 예외 클래스를 정의 하라 : Wrapper Class를 이용할 것. 정상흐름을 정의하라 : 특수 사례 패턴(Special Case Patte.. 2023. 4. 2.