박대준
가입: 2005년 10월 7일 올린 글: 245
|
올려짐: 2006년6월5일 13:56 주제: |
|
|
황창호 씀: | 1. move : PBoard -> (Pos X Dir X Dir) list
우선 확보된 시야가 PBoard를 통해 알 수 있을 텐데요.
PBoard = Pos X State 라고 하면 하나의 유닛 상태만 가지고 있는 거 아닌가요?
PBoard list가 되야 되지 않나 싶은데요. |
지난번에 프로젝트 설명할 때도 동일한 질문에 대해 답변을 해드렸는데요.
직관적으로 이해하는데 약간 무리가 있나 보네요.
거기에 쓰여 있는 것은 집합 정보이고,
구현은 말씀하신대로 list 형식으로 하시면 됩니다.
올바르게 이해하시고 있으신것 같으니, 원하시는 대로 구현하시길 바랍니다.
황창호 씀: | (Pos X Dir X Dir)는 각각 (어느 위치의 유닛을) X (어느 방향으로 한 칸 움직이고) X (그 후에 어느 방향을 보게 하겠냐) 를 의미하는 건가요?
|
네 맞습니다.
황창호 씀: | 만약 위의 말이 맞다면 list가 아니라 그냥 하나의 튜플 같이 되야 할 꺼 같은데요. |
한 턴에 여러개의 유닛을 동시에 움직일 수 있습니다.
단지, 한 유닛을 여러번 움직이는 것을 제한한 것 뿐입니다.
따라서 list가 맞습니다.
황창호 씀: | 근데 이에 대해 pos를 저희가 지정할 수 있다면 전체 보드판의 어느 위치에건 우리 편 유닛을 위치시킬 수 있다는 건가요? 위치의 제한이 있어야 될 꺼 같은데요.
그리고 Info 정보에 Dir 정보가 빠진 거 같은데요. 어느 방향을 보고 있다는 정보가 있어야 하지 않나요?
|
곧 제공될 구체적인 명세에서 그러한 조건이 추가될 것 입니다.
지금 제공드린 것은 초벌명세임을 상기하시기 바랍니다.
구현할 때는 그러한 조건이 추가될 것임을 미리 가정하고,
그러한 조건의 추가에 유연하게 대처할 수 있도록 구성하시면 됩니다.
황창호 씀: | 2. init : unit -> Info list
unit이라는 정보가 어떻게 넘어오는지는 말씀해 주실 수 없는거죠? |
폰트를 잘못써서 오해하신 것 같군요.
unit은 기본타입입니다. C에서 void와 같은 것이라고 보시면 됩니다.
즉, init이라는 함수는 아무런 인자를 받지 않는다는 뜻입니다.
수행 시, 이런 식으로 실행시키겠지요.
덧붙여, 당부드릴 것은..
이번 프로젝트는 data abstraction을 잘 구성하는데 목적이 있습니다.
이것을 강요하기 위해, 명세를 부분적으로 혹은 전반적으로 변경시킬 것입니다.
따라서 지금 현재 제공해 드린 명세는 완벽하지도 않고, 고정적이지도 않습니다.
적절한 가정 하에서 추후의 변화에 능동적으로 대처할 수 있도록 구현하시는 것이 가장 중요합니다. |
|