자바 간단한게임 네트워크구현 질문이요
도손
대학교 2학년 학생입니다. 이번에 자바로 간단한 게임을 팀프로젝트로 맡았습니다.
게임은 펜타고(pentago)라는 게임입니다. (오목과 비슷한 게임입니다.)
스윙이나 버튼등을 이용하여 게임의 구현은 어느정도 다됐는데요.
이제 이걸 네트워크로 다른플레이어의 접속을 받아 1:1로 같이 하는 형식으로 구현하려 합니다.
네트워크쪽은 처음다뤄보는지라전혀 감이 잡히지 않아 질문드립니다.
네트워크쪽 연결에는 tcp와 udp가 있다고 하는데 udp는 자료의 손실이있고 비교적 중요하지않은 정보를
주고받을때 쓴다고 하는데요. 이 중요도의 정도가 감이오지않아
게임은 tcp로 해야하는지 udp로 해야하는지 잘 모르겠습니다.
그리고 구현된 기능을 어떤것을 서버쪽에 담고 어떤것을 클라이언트쪽에 담아야 할지도 긴가민가합니다.
책의 예제에 있는 서버와 클라이언트를 이클립스로 돌려봤습니다.
서버를 실행시킨후 클라이언트를 실행시키면 되더군요. 근데 이걸 제 컴퓨터 한대에서 둘다실행시키는 게 아니고
다른컴퓨터에서 클라이언트 역할을 해야하는거니 소스에 따로 ip를 적어주어야하나요?
그리고 게임의 턴방식은 멀티스레드로 구현해야 한다는데 멀티스레드를 왜 구현하는지 모르겠습니다.
boolean형식의 flag만 하나 만들어서 내차례 상대차례 번갈아주면 될거같다고 생각하는데요.
질문요약
1. 게임을 1:1모드로 네트워크구현을 하려면 tcp로 해야됩니까 udp로 해야됩니까?
2. 구현된 게임의 메소드를 어떤걸 서버쪽에 넣어주고 어떤걸 클라이언트쪽에 넣어줘야됩니까?
3. 한 컴퓨터에서 서버, 클라이언트 둘다 실행시키는게 아닌 다른컴퓨터에서 클라이언트로 접속하려면
서버쪽의 ip를 클라이언트에서 적어주는겁니까?
4. 멀티스레드로 구현해야된다는데 왜 그런지 이유를 잘 모르겠습니다.
수다님들 도움부탁드립니다. ㅠ.ㅠ