본문 바로가기

게임개발339

디자인 패턴 공부 - 상태 패턴의 공부 - 안녕하세요? 정말로 오랫만에 디자인 패턴을 공부하다 보니, 클래스의 상속에 대해서 잠시 잊어버려서 조금 헤메이게 되기도 했었습니다. 그렇지만, 이 상태(state) 패턴이라는 것을 언제 쓰는가 봤더니, 제 경우라면 윳쿠리의 부스터를 쓸 경우 많은 if문을 생성해서 일일히 조건처리를 해야 했습니다만, 그럴 필요도 없이 바로 상태 - 부스터로 처리하면 간단하게 처리가 되었던 것 이었습니다. 먼저 상속을 주기 위해서 가장 근본이 되는 비정상이라고 이름을 붙인 클래스를 하나 만듧니다. 정말 일주일 이상 안 잡았다고 좀 감이 않 좋아져서 abstract를 붙여서 부모 클래스를 만든다는 것도 겨우 생각해 내고, 메서드도 이 abstract를 붙여야 한다는 것을 겨우겨우 알아내서 했습니다. 먼저 노멀한 상태일 때를 .. 2024. 3. 20.
디자인 패턴 공부 - 싱글톤 패턴의 학습 - 안녕하세요? 디자인 패턴을 공부한 지도 약간의 시간이 지났는데, 이 싱글톤 패턴은 주로 게임 매니저와 같이 무언가를 공유하면서도 동시에 여러번 new를 붙여서 새로운 것을 만들지 않아도 되는 패턴이라고 할 수 있습니다. 이걸 전에 저는 파이썬으로 주식 자동거래 시스템을 만들때는 어떻게 자본금을 공유하는 것으로 해서 만들기 위해서 사용한 적이 있어서 이해는 아주 쉽게 되었습니다. 가장 먼저 싱글톤 패턴으로 구현하게 될 클래스를 만들어야 하는데, 우선 조심해야 하는 것은 위 스크린샷에서 private로 시작하는 것은 바로 클래스의 변수를 선언하는 과정이라고 할 수 있습니다. 여기서 반드시 static을 붙여야만 에러가 나지 않았으며, 녹색선은 클래스안의 전역 변수를 선언하는 과정에서 그 변수의 타입이며, 붉.. 2024. 3. 6.
디자인 패턴 공부 - 프로토 타입 패턴의 학습 -2- 안녕하세요? 지난번에 디자인 패턴 중에서 원형 패턴이라고 불리는 프로토타입 패턴에 대해서 한번 실습을 해 보기는 했습니다만, 문제는 항상 남아 있습니다. 우선 가장 큰 것이라고 하면, 역시나 경량 패턴은 같은 오브젝트를 위치만 다르게 해서 복제하는 것이라면, 프로토타입 패턴이라는 원형 패턴은 '비슷한' 오브젝트를 복제해서 만들어 낸다는 큰 차이점이 있다는 것 입니다. 먼저 부모 클래스에서 변수를 물려주기 위해서는 위 스크린샷에서 볼 수 있는 것처럼 일단 하나하나 변수를 선언해 주도록 합니다. 그리고 나서 이 물려받은 변수를 제대로 표현할 수 있도록 출력이 나올 수 있게 어떻게 만들어 주도록 합니다. 이렇게 하는 것으로 일단 작업을 하나 했으며........ 이제 몬스터 1과 2를 생성해 보도록 하는데, .. 2024. 2. 28.
디자인 패턴 공부 - 프로토 타입 패턴의 학습 -1- 안녕하세요? 이번에는 프로토 타입이라고 해서 진짜로 데이터를 가진 몬스터를 대량으로 복사할 때 사용되는 디자인 패턴이 있습니다. 다만 먼저 들어가기에 앞서서 이 프로토타입 패턴이 어디를 봐서 경량패턴과 차이가 있는지는 몰랐습니다만, 나중에 알아 보니까, 경량 패턴의 경우에는 메모리를 줄이고 크게 데이터가 의미 없을 배경에만 사용하는 것이라면.... 이 프로토 타입 패턴은 하나하나 데이터를 일일히 입력하지 않고 공통된 데이터를 보유한 상태에서 가지가지 스탯이 다른 몬스터를 생성할 때 필요한 패턴이라고 이해를 하였습니다. 먼저 프로토타입이 될 클래스를 지정해 주고 나서, 여기다가 데이터가 변하면 안되기 때문에, 클래스를 선언하는 문자열 앞에 abstract를 붙여 주도록 합니다. 그리고 나서 이후 이 몬스터.. 2024. 2. 27.