본문 바로가기

유니티5 독학 & 게임 제작947

디자인 패턴 공부 - 프로토 타입 패턴의 학습 -1- 안녕하세요? 이번에는 프로토 타입이라고 해서 진짜로 데이터를 가진 몬스터를 대량으로 복사할 때 사용되는 디자인 패턴이 있습니다. 다만 먼저 들어가기에 앞서서 이 프로토타입 패턴이 어디를 봐서 경량패턴과 차이가 있는지는 몰랐습니다만, 나중에 알아 보니까, 경량 패턴의 경우에는 메모리를 줄이고 크게 데이터가 의미 없을 배경에만 사용하는 것이라면.... 이 프로토 타입 패턴은 하나하나 데이터를 일일히 입력하지 않고 공통된 데이터를 보유한 상태에서 가지가지 스탯이 다른 몬스터를 생성할 때 필요한 패턴이라고 이해를 하였습니다. 먼저 프로토타입이 될 클래스를 지정해 주고 나서, 여기다가 데이터가 변하면 안되기 때문에, 클래스를 선언하는 문자열 앞에 abstract를 붙여 주도록 합니다. 그리고 나서 이후 이 몬스터.. 2024. 2. 27.
디자인 패턴 공부 - 관찰자 패턴의 학습 - 안녕하세요? 어떻게 보면 이 관찰자 패턴이라고 영어로는 옵져버 패턴 (Observer Pattern)이라고 불리는 이 패턴은 상당히 복잡할 수도 있겠다는 생각이 듭니다만, 실제로는 핵심이 되는 코드는 의외로 간단하다고 합니다. 원래는 유투브에서 파이썬으로 구현이 되어 있는 코드를 일단 C#으로 간단하게 구현해 보았습니다. 먼저 여기서는 관찰자가 될 클래스를 2개 만들어 놓고서, 여기다가 inferface를 붙여 주도록 합니다. 물론 각각의 관찰자인 옵져버 안에서는 Update라는 메서드가 작동될 것을 상정하고 만들어 주도록 합니다. 그리고 나서 여기가 핵심인데, 이 관찰자가 된 클래스를 리스트 형태로 일단 저장시켜 주도록 합니다. 이 작업을 하기 위해서 interface를 붙여 준 것이고, 이제 여기서 .. 2024. 2. 21.
디자인 패턴 공부 - 경량패턴의 학습 -5- 안녕하세요? 마지막으로 이 경량패턴에 대해서 다른 데이터 - 여기서는 몬스터라고 했으니 각각 다른 HP나 이런 스탯을 가지고 나서 여러가지 복사본을 만들어 내는 방법을 만들어 보고자 합니다. 일단 이렇게 해서 아제 경량 패턴에 대한 실습을 마무리를 지어 보고자 합니다. 먼저 몬스터 데이터라는 이 클래스를 만들어 낸 다음에, 여기다가 일단 추가할 스택에 대해서 먼저 선언을 해 주도록 합니다. 일단 이것 만으로는 좀 부족한데.......... 여기다가 기본값을 포함시켜 주도록 하고, 그리고 나서 출력이 되는 문구에는 위 스크린샷에서 볼 수 있는 것처럼 저 몬스터의 스탯이 표기될 수 있도록 만들어 주도록 합니다. 그렇게 해서 실행을 시켰더니, 위 스크린샷에서 볼 수 있는 것처럼 일단 제대로 나오기는 나왔습니다.. 2024. 2. 21.
디자인 패턴 공부 - 경량패턴의 학습 -4- 안녕하세요? 드디어 이 경량 패턴도 마지막이 다가오려고 합니다. 일단 지난번에 ???로 표기된 문제부터, 이게 진짜로 한번만 어떻게 되는지에 대해서 한번 이야기를 해야 하기에, 이번에도 포스팅을 올려 보고자 합니다. 일단 어떻게 하루 집중해서 일을 하고 나면, 다음날은 영 컨디션이 나오지 않는 현상이 계속해서 벌어지고는 합니다. 그래도 공부했는 내용을 그냥 버릴 수는 없고 어떻게 나중이라도 써먹기 위해서는 이 포스팅으로 정리를 해 놓아야 합니다. 혹시나 싶어서 일단 한글로 된 몬스터의 이름을 일단 전부 영어로 바꾸어 보는 작업을 실행하였습니다. 이 작업을 하고나서는 어떻게 바뀌는 것인가 하고 봤더니........ 어떻게 해서 제대로 이름이 ???가 아니라 뜨는 것을 확인할 수 있기는 있었습니다. 이제 다.. 2024. 2. 21.