TCP 소켓을 사용한 채팅 프로그램의 구현
컴퓨터 네트워크 강의 설계 프로젝트
C++ TCP


본 프로젝트는 TCP 소켓을 이용하여 채팅 프로그램을 구현하는 것이었습니다. 여러개의 채팅방이 제공되어야하고 서로 다른 채팅방에 있는 사용자간 귓속말이 가능해야 합니다.
클라이언트가 서버에 연결되면 서버는 소켓을 들고 있는 User
를 만듭니다.
클라이언트에서 사용자가 입력한 문자열은 적절한 메시지로 인코드 되어 서버로 전송되며, 서버의 Processor
는 전송받은 메시지에 대응되는 작업을 수행합니다.
Processor
는 작업을 수행하면서 User
와 Room
인스턴스를 조작합니다.
예를 들어 작업이 "전송"이라면 해당 메시지의 내용을 같은 Room
안의 User
들에 전송합니다.
메시지를 전송받은 클라이언트는 메시지를 해석하여 터미널에 표시합니다.