디자인 패턴은 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 해결하기 위해 사용되는 패턴.
객체를 생성하기 위해 인터페이스를 정의하지만 어떤 클래스의 인스턴스를 생성할지에 대한 결정은 서브 클래스가 내리도록 하게 만드는 패턴
싱글톤 디자인 패턴
디자인 패턴한 객체의 인터페이스를 클라이언트 객체의 인터페이스로 변환하는 패턴입니다. 어댑터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 객체들을 연결해서 사용할 수 있습니다.어댑터 패턴은 어떤 데이터 또는 객체의 인터페이스가 호환되지 않아서 같은 데이터
부모 객체에는 알고리즘의 뼈대만을 정의하고 각 단계에서 수행할 구체적 처리는 서브클래스 쪽으로 미루는 패턴.