다양한 디자인 패턴
디자인 패턴 공부중이기 때문에 눈치챘을 때 추가하고 싶습니다.
전략 패턴
알고리즘이 변경되는 부분을 클래스화하고 교환할 수 있도록 하는 패턴
예를 들어, switch문으로, 거동을 전환할 때, 코드량이 많을 때, 간단하게 할 수 있다.
이미지로서는, 게임으로 말하면 [호출하는 측]은, 어려운·간단 모드 선택 화면, 아르고 A, 아르고 B가 각각, 어려운·간단의 처리.
템플릿 방법 패턴
공통 부분을 꺼내서 템플릿(형)으로 한다. 어쩌면 이전에 투고한 것 같은 생각이 든다.
공통 부분을 추상 클래스로 하고, 다른 부분은 다른 인스턴스를 생성해 거동을 바꾼다.
야키토리로 표현하면, 시미 맛의 모모와 양념의 모모가 있었을 때, 공통의 닭고기[모모]나 굽는 동작을 추상 클래스로 해
마지막 찢어질 때, '소금' 또는 '양념' 또는 양념의 처리를 건너는 것과 같은 구현의 패턴.
디자인 패턴이라고 하는 대대적인 것이 아니고, 일반적인 오브젝트 지향에서는 반드시 사용되고 있는 것이라고 생각합니다.
싱글톤 패턴
아마 가장 먼저 듣는 유명한 녀석. 객체의 인스턴스화를 하나로 한정하여 복수를 만들 수 없게 한다. 구현 방법은 여러 가지가 있다.
(복수 할 수있는 것처럼 보이더라도 결국에는 같은 곳을 참조하는 것을 포함)
싱글톤 클래스
- 멤버 변수
+ 인스턴스 획득
- 처리
가장 기본적인 구현 방법
//직접 Qiita의 에디터에 쓸 수 있으므로 나중에 확인합니다. . .
public class Singleton {
public:
//staticによってクラス初期化時に唯一のインスタンスが生成
static Singleton& getInstance(){
static Singleton myself;
return myself;
}
//外部からは生成できないようにprivate
private:
Singleton(){}
}
Reference
이 문제에 관하여(다양한 디자인 패턴), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ta2roo/items/0eaf74b8c10ec78043ca텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)