본문 바로가기

전체 글3552

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