특정 영역의 문제를 해결하는 연관된 패턴을 한데 묶어 명시적으로 기술하면 어떻게 문제를 해결할 수 있는지 효과적으로 나타낼 수 있습니다(그림 1-9).
▲ 그림 1-9 패턴 사이의 다양한 유형의 관계를 시각화한 그림. 선행자 패턴을 적용하여 야기된 문제는 후행자 패턴으로 해결한다. 동일한 문제도 둘 이상의 패턴이 대체 솔루션이 될 수 있다. 즉, 한 패턴은 다른 패턴을 구체화한 형태일 수 있고, 동일한 영역의 문제 해결 패턴은 한데 묶거나 일반화할 수 있다
패턴 간 관계 역시 몇 가지 유형이 있습니다.
• 선행자 -후행자 관계를 표현
• 같은 문제를 다른 방법으로 해결하는 패턴
• 한 패턴이 다른 패턴을 구체화한 패턴임을 표시
• 특정 영역의 문제에 적용되는 패턴
이렇게 여러 패턴을 연관 지어 패턴 언어라는 포맷으로 도출하고, 이 패턴 언어의 패턴을 사용하여 특정 영역의 문제를 해결하는 것입니다. 그중 필자가 만든 마이크로서비스 아키텍처 패턴 언어는 마이크로서비스를 중심으로 서로 관련된 소프트웨어 아키텍처와 디자인 패턴을 취합한 것입니다.