디자인 패턴 2

전략 패턴(Strategy Pattern)

개요 전략 패턴은 객체 지향 디자인 패턴 중 하나로 알고리즘군을 정의하고 각각을 캡슐화하여 사용할 수 있게 만드는 디자인 패턴입니다. 전략 패턴의 핵심 아이디어는 문제를 해결하는 다양한 전략(알고리즘)을 만들고 이를 동적으로 교환하여 사용할 수 있도록 하는 것입니다. 📌 헤드 퍼스트 디자인 패턴 알고리즘군을 정의하고 캡슐화해서 각각의 알고리즘군을 수정해서 쓸 수 있게 해줍니다. 전략 패턴을 사용하면 클라이언트로부터 알고리즘을 분리해서 독립적으로 변경할 수 있습니다. 주요 구성 요소 1. 전략 인터페이스(Strategy) 전략 인터페이스는 상황에 따라 다르게 사용될 여러 알고리즘을 나타내는 인터페이스나 추상 클래스입니다. 2. 전략 인터페이스를 상속 받는 구체적인 전략 클래스(Concrete Strateg..

[디자인 패턴] 싱글톤 패턴

우리는 코드를 짜면서 항상 문제를 직면하게 된다. 이러한 문제를 해결하는데에 각자의 해결 방법이 존재하지만, 많은 프로그래머들이 해결을 하면서 가장 효율적으로 만들어낸 패턴들이 존재한다. 이를 디자인 패턴이라고 한다. 디자인 패턴 소프트웨어 공학의 소프트웨어 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴 디자인 패턴에서 많이 쓰이는 패턴 중 하나가 있는데 그게 바로 싱글톤 패턴이다. 오늘은 싱글톤 패턴에 대해 정리하려한다. 굉장히 중요한 패턴이기 때문에 확실하게 짚고 넘어가자. 싱글톤 패턴 코드를 작성할 때 하나의 클래스를 여러 클래스에서 인스턴스 객체로 만들어 참조해야할 일이 생긴다. 그럴 때마다 인스턴스를 생성하면 좋지 못한 성능을 보여준다. 이러한 경우에 대해 만들어진..