3
MMORPG 용 소켓 서버를 만들고 있습니다. 작성하기 쉽고 가독성을 위해 명령과 처리기를 구성하는 방법을 잘 모르겠습니다.소켓 게임 서버에서 명령/처리기를 구성하는 방법?
나는 ban, kick, identify 등과 같이 데이터 [0]에서 명령을 받게 될 것입니다. HashMap을 사용할 수 있고 인터페이스 명령을 가지고 있으며 각 처리기/명령을 구현하는 명령. 그런 다음 HashMap을 만들고 거기에서부터 시작합니다. 나는 또한 당신이 반성 할 수 있다는 것을 읽었습니다. 경험 많은 프로그래머가하고자하는 일을하고 싶습니다.
클라이언트 클래스 :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client implements Runnable {
private Socket socket;
private Server server;
private boolean isConnected;
private BufferedReader in;
private PrintWriter out;
public Client(Socket socket, Server server) {
this.socket = socket;
this.server = server;
this.isConnected = true;
this.in = null;
this.out = null;
}
@Override
public void run() {
try {
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream(), true);
while (isConnected) {
String recv = in.readLine().trim();
if (recv != null) {
String[] data = recv.split("%");
}
}
} catch (IOException e) {}
}
public synchronized void send(String data) {
out.println(data);
}
}