제가 방황을 겪었습니다.
06월 말 야심차게 프로젝트를 하겠다 선언했지만, 프로젝트를 진행만 할 뿐 아무런 글을 작성하지 않았군요
방황을 한 이유야 여러 가지 있지만,
가장 큰 이유는 C#과 객체지향적 프로그래밍을 제대로 공부하지 않고 Unity에 뛰어들었기 때문이라 생각합니다.
07월부터 08월 말까진 그래도 컴퓨터 앞에는 앉아 있었습니다. 그러나 여름 동안 작성한 코드는 목적이 존재하지 않았습니다. 제가 작성한 클래스는 재사용이 힘든 형태로 클래스의 장점을 활용하지 못하고 함수에 의해 한 가지 행동만을 하고 있었습니다. 클래스의 형태는 존재하지만, 클래스를 절차식 프로그래밍으로 사용하고 있다고 해야할까요?
물론 이러한 클래스의 형태 또한 Side Effect를 줄이기 위해 함수형 프로그래밍을 접목시키겠다는 제 의지도 있었지만, 이는 위험한 생각(미련하다는 표현이 더 맞을지도?)이란걸 08월 말에 깨닫습니다. 하지만 이미 제가 작성한 코드는 엉망이 되어있었죠. 그리고 방황이 시작되었습니다.
09월과 10월은 대학교 재학중 최고로 게으른 시기였습니다. 이 프로젝트를 진행하다가 더이상 제가 작성한 코드를 보기가 싫어졌습니다. 이런 생각을 한 이유는 제가 만드는 게임이 게임이 아니라는 생각이 들었기 때문입니다. 객체의 행동을 함수의 형태로 제작하고, 객체 디자인을 하지 않는 일은 Unity의 MonoBehavior Class를 사용할 뿐인 물리 시뮬레이터가 아닐까요? 제가 만들고 있던 것은 무엇이었을까요? 이런 비판적인 생각을 했습니다. 이 시기에는 연구실에 거의 출석을 하지 않았군요.
10월 말 연구실에 가지 않은지 2달이 다 되어갈 때 이렇게 살면 안될 거 같다는 생각을 했습니다. 너무 늦게 든 생각이 아닐까 싶지만. 취업 때문에 굉장한 위기감이 생기더군요. 이 날이 10월 25일 입니다. 현재 글을 작성하고 있는 11월 23일이니, 얼마 지나지 않은 이야기 같습니다. 연구실에 복귀하고 28일 동안 작성한 코드는 지난 2년동안 배워온 코드의 형태를 갈아엎고, 클래스 모델링에 맞는 그러니까 게임을 게임답게 만드는 클래스를 작성했습니다. 그러나 발전시킨 코드는 제 부끄러운 여름의 코드를 공개한 이후 설명을 할 것입니다.
11월 23일 저는 이제부터 소개하기가 부끄러운 코드도 자랑스럽게 소개할 코드도 모두 설명하려고 합니다. 09월과 10월의 시간을 바닥으로 쏟고 난 후의 생각입니다.
'개발 프로젝트 > Unity - WeaponGameProject' 카테고리의 다른 글
WeaponGameProject - Player 클래스 설계 (3) (bool 타입을 통한 플레이어 상태 구현) (1) | 2023.11.26 |
---|---|
WeaponGameProject - Player 클래스 설계 (2) (Spring Arm Camera 구현) (1) | 2023.11.23 |
WeaponGameProject - Player 클래스 설계 (1) (Key Input을 클래스로 만들자) (1) | 2023.11.23 |
WeaponGameProject - 개발 계획서 (0) | 2023.06.29 |
WeaponGameProject - 0 (0) | 2023.06.23 |