며칠 전, 토이프로젝트를 만들기 위해 필요한 기능들을 테스트하기 위한 토이토이프로젝트(?)를 완성했다. 아주 간단한 스토리를 가진 게임을 만들어서 본 프로젝트에서 필요한 기능들을 미리 테스트해 본 것. 결과는 낫배드였다.
그러나 토이-토이프로젝트를 진행하면서 만난 3가지의 장애물이 있었는데 그것은 바로
- 기능을 구현하기 위해 필요한 JS 코드가 너무 길다. 전투를 진행하는 작은 기능임에도 불구하고 코드가 160줄을 넘어가는데, 작은 규모의 스토리이니 망정이지 본 프로젝트를 할때는 난리나겠다 싶더라.
- 웹페이지의 뼈대라고 할 수 있는 HTML 문서가 작은 스토리임에도 불구하고 너무 많고, 각 HTML 문서마다 임포트해야 하는 JS문서가 다 다르다보니 전체적인 문서의 가독성이 최악일만큼 떨어진다.
- 완전히 동일하지 않고 조금씩 조금씩 수정되는 내용을 포함하는 JS 코드가 많았기 때문에 중복되는 코드가 어마어마어마어마하게 많았다.
결국에는 작은 버젼의 프로젝트를 만들어내기는 했지만 결과가 마치 정말 아무 생각없이 짠 전기배선처럼 지저분하고 복잡해져서, 나중에 문제가 터지면 손을 댈수 없겠구나 하는 생각이 들었다. 내가 진행하려 생각했었던 프로젝트는 (비교적 작은 규모의) 초기 버젼을 배포하고 계속 피드백을 받아서 수정하면서 게임을 키워나가는 형식의 프로젝트였던지라 코드를 유지보수하는 일이 굉장히 중요했는데, 그 부분에서 치명적일 것 같은 판단이 든 것.
결국, 프로젝트 시작 초기에 어느정도 만들었던 본프로젝트를 완전히 포기하기로 결심했다. 조금은 전략적인 접근이 필요할 것 같아서 프로젝트 진행 과정에 대한 계획을 만들었다. 그 계획은 다음과 같다.
- 콘텐츠를 제작한다. (머릿속에 있는 스토리를 텍스트로 만들고, 아이템, 몬스터 정보를 문서화하자.)
- 1번에서 완성된 콘텐츠를 바탕으로 HTML 문서를 작성한다. (단, 이야기조각들을 관리하기 쉽게 잘 정리해서 작성할 것)
- 2번이 완성되는 시간동안 기능구현에 필요한 기능들을 숙지한다. (ex. 자바스크립트 문서를 효율적으로 구성하는 법. HTML 문서를 효율적으로 관리하는 법 등)
- 자바스크립트로 이야기조각을 연결하고 문서를 게임으로 만든다 + CSS로 이야기책(HTML + JS)을 꾸민다.
- 테스트 -> 버그 수정
- 서버를 구축한다. (공부해야 한다. 아직은 못한다.)
- 배포
- 피드백을 수용해서 리펙토링을 하고, 추가적인 콘텐츠가 있으면 업데이트한다.
- 7번과 8번을 만족할 때까지 반복한다.
그래서 지금 하고 있는 과정은 1번. 생각보다 1번에 대한 관심이 적었었는데 콘텐츠가 문서로 깔끔하게 정리되지 않았기 때문에 HTML 문서가 지저분했을 것 같기도 하다.
아무튼, 지금은 콘텐츠를 텍스트로 정리하는 한편 자바스크립트와 HTML을 공부해야할 때. (서버를 구축하는 부분은 5번이 끝나고 진행한다. 국비지원 수업도 듣고 있기 때문에 지금 서버 부분까지 같이 공부하면 과부화 와서 백퍼센트 퍼진다. 확실함...)
1번의 완성기한은 1주일로 두고 있다. 엄청나게 빡빡한 일정이기는 하지만, 혼자 하는 프로젝트인만큼 빡빡하게 스케줄을 주지 않으면 무한히 늘어질 것 같아서 이렇게 진행하기로 했다.
계획대로 될지 솔직히 잘 모르겠지만, 한번 가보자!
'[토이프로젝트] 웹게임 개발일기' 카테고리의 다른 글
노드JS.... (0) | 2021.10.12 |
---|---|
nodeJS를 이용한 로컬서버 구동 | module 문제 해결 (0) | 2021.10.03 |
[토이프로젝트] 프로젝트 재시작, 1주일 진행 상황 (0) | 2021.09.26 |
[토이프로젝트 - 웹게임] 전투시스템 구현 | 알고리즘 (0) | 2021.09.01 |
토이프로젝트 (0) | 2021.07.28 |