일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- spring-web
- mongo
- armeria
- Kotlin
- springcloud
- Spring
- Redis
- 신입
- Pay
- IDDD
- ifkakao
- Conference
- kakao
- spring6
- spring caching
- 개발자
- springboot
- springboot3
- MSA
- spring scheduler
- ddd
- 바운디드컨텍스트
- MongoDB
- docker
- 값객체
- 반버논
- java17
- zuul
- 애그리거트
- webframework
- Today
- Total
목록2022/05 (11)
Easy Understanding
옵저버 패턴을 들어가면서 스타크래프트의 옵저버나 언급해야겠다고 생각했는데, 다들 하는 생각이 비슷비슷한 것 같다. 이미 많이들 사용하고 있어서 생각을 접었다. 게다가 난 이 패턴에 옵저버라는 단어가 들어간 순간부터 이해에 방해가 되어 왔다. 대충 개념만 보면 쉬운데 이 옵저버라는 단어 때문에 더 헷갈리는 느낌이다. - 필요 개념: 상속 - 활용도: 부담없이 사용해볼만 함 - 난이도: 간단 - 패턴이 필요한 상황: 일대다 상황 일대다 상황이라 함은, 1개의 원인과 그로 인해 n개의 동작이 수행되어야 하는 상황이다. 예를 들면 다음과 같은 상황이다. - 모니터링 시스템에서 특정 지표가 넘어가면(1) 메시지/메일/카톡 등의 채널로 알림이 발송(n)된다. - 어떤 API를 통해서 요청이 들어왔을 때(1), 동시..
앞으로 패턴들에 대해서 어떻게 백엔드의 관점에서 사용할 것이며, 얼마나 유용할지 평가를 해보려고 한다. 애초에 패턴들을 실용적인 관점에서 검토하지 않으면 의미가 없다는 생각이다. 이 공부가 나의 실무 코드에 도움이 되어야하니 그런 점들을 위해서 정리해두려고 한다. 그러나 딱 내 학습 수준에 맞는 평가가 나올 것 같아서 그 점은 참고해야 한다. 추가로 디자인 패턴의 개념에 대한 기초 설명은 패스하려고 한다. 전략 패턴 - 필요 개념: 컴포지션 - 활용도: 부담없이 사용해볼만 함 - 난이도: 간단 - 패턴이 필요한 상황: 상속 상황에서 내부 코드의 빈번한 중복 보통 이 패턴에 가장 많이 나오는 예제는 Duck에 대한 예제이다. quack, fly 메서드가 나오고 여러 오리종류가 나오는 그 예제다. 헤드퍼스트..
헤드퍼스트 디자인 패턴에서는 다음과 같은 13가지 패턴을 다루고 있다. 1. 전략 패턴 2. 옵저버 패턴 3. 데코레이터 패턴 4. 팩토리 패턴(팩토리 메서드, 추상 팩토리) 5. 싱글턴 패턴 6. 커맨드 패턴 7. 어댑터 패턴 8. 파사드 패턴 9. 템플릿 메서드 패턴 10. 반복자 패턴 11. 컴포지트 패턴 12. 상태 패턴 13. 프록시 패턴 디자인 패턴은 이외에도 다양하며, 다음의 링크에서 대부분의 패턴들을 확인할 수가 있다. 해당 링크가 가장 잘 정리되어 있는 것 같아서 종종 참고하고는 한다. https://refactoring.guru/design-patterns/catalog The Catalog of Design Patterns refactoring.guru 디자인 패턴은 크게 다음과 같이..