디자인패턴(2)
-
[C#, 유니티] factoryMethod와 AbstractFactory의 차이
오늘은 C#문법 가운데 디자인패턴 중 알아두면 좋은 팩토리메소드와 추상팩토리에 대해서 배웠습니다 먼저 팩토리 메소드와 추상 팩토리과 같은 패턴들을 쉽게 분석하는 방법은 클래스UML을 보는 것입니다 팩토리 메서드만 먼저 보게되면 Creator라는 클래스가 product의 형태로 가지고 있고, Product는 인터페이스라서 실체화하여 구현한 클래스이므로 자식클래스는 클래스UML을 점선으로 표시한것입니다 (abstract클래스를 상속받는 자식은 실선으로 표시) 그리고 Creator클래스가 가지고 있던 product에 팩토리메소드라는 함수를 만들어 넣어주었고 Creator라는 클래스를 상속받는 자식클래스들은 각 타입에 맞는 Product를 생성한다고 합니다 그럼 이제 Player라는 Creator Class와 ..
2022.11.03 -
[C#, 유니티] Unity3D_RPG 상태패턴머신 (디자인패턴)
상태패턴(state pattern) 상태패턴의 사전적 의미 객체의 내부 상태에 따라 스스로 행동을 변경할 수 있게 허가하는 패턴으로, 이렇게 하면 객체는 마치 자신의 클래스를 바꾸는 것처럼 보입니다 상태패턴의 장점 장점1. 다른 상태에 대한 내용들을 전혀 고려하지 않아도 프로그램 작성에 영향받지 않음 장점2. 확장성이 용이 (새 기능이 추가되어도) 장점3. 내 상태에 대해서만 파악하면 되기 때문에 공략이 유리 장점4. 불필요한 조건문을 줄일 수 있음 상태패턴의 단점 단점1. 상태를 단 하나만 지정해줄 수 있기때문에 중복처리를 해야하는 상태는 적용하기 어려움 (ex. 점프중에 맞는다) 단점2. 상태가 많아지면 조건문 처리가 복잡해짐 상태패턴은 언제 적용하는게 좋은가? 상태패턴을 적용함으로 앞으로 조건들에 ..
2022.08.24