개발기초
-
RxJs Map Opertator 정리개발기초 2021. 11. 30. 17:49
쓸때마다 햇갈려서 정리하는 Rxjs Map관련 Operator mergeMap / flatMap - 소스 observable에서 값이 방출되면 mergeMap의 맵핑 observable이 구독되어 값이 방출된다. - 이 때, 소스 observable에서 값이 또 방출되면 새로운 맵핑 observable이 구독되고 기존 맵핑 observable과 함께 값을 방출한다. - 유실되는 데이터는 없다.( source * mapping 개 데이터) - Observable 생성자 operator인 merge() 와 같은 역할을 한다. concatMap - 소스 observable에서 값이 방출되면, 이를 트리거로 concatMap의 observable에서 값이 방출되고, complete되면 앞의 observable의..
-
[Design Patterns] Bridge 패턴개발기초/Design Patterns 2020. 9. 30. 16:56
Structrural Patterns 중 Bridge 패턴에 대해 다뤄보겠습니다. Bridge 패턴은 abstraction(추상부)와 implementation(구현부)를 Bridge를 이용해 decouple(분리)하는 구조패턴입니다. 이를 통해서 추상클래스와 구현클래스간 결합을 느슨하게 하여 서로 영향을 끼치지 못하게 합니다. 기본적인 구조에 대해 살펴보겠습니다. Abstraction 클래스는 Bridge 인터페이스에 대한 참조를 가지고 있습니다. 이 Bridge 인터페이스는 구현해야 할 기능에 대한 추상화를 제공하고 이를 ImpelementationA,B.. 가 구현하게 됩니다. 바로 이 부분이 implementation(구현부)입니다. 그리고 Abstraction 클래스를 상속하는, 그래서 기본적인..
-
[Design Patterns] Adapter 패턴개발기초/Design Patterns 2020. 9. 29. 16:04
디자인 패턴 중 구조패턴인 Adapter패턴입니다. 어댑터라는 말은 호환성을 맞춰준다는 말입니다. 가령 우리가 가진 220v의 전압을 사용하는 전자기기는 일본의 110v 환경과 호환성이 맞지 않고 이 기기를 사용하기 위해서는 220v -> 110v로 맞춰주는 어댑터가 필요합니다. 이 말 그대로 Adapter패턴은 우리가 사용하는 객체와 다른 객체의 호환성을 맞춰주는 패턴입니다. 이를 좀 더 사전적으로 설명하면, "재사용하려는 클래스가 제공하는 인터페이스와 클라이언트가 사용하는 인터페이스가 다를 경우 어댑터 클래스를 이용하여 인터페이스를 일치시킨 패턴" 이라고 할 수 있습니다. 위와 같이 우리가 참조해 사용하는 Target 인터페이스와 사용하려는 Adaptee 클래스는 형태가 다릅니다. Target의 me..