Question: You are tasked with developing a simple online chat application using Java. The application should allow multiple users to connect to a central server, send
You are tasked with developing a simple online chat application using Java. The application should allow multiple users to connect to a central server, send messages, and receive messages from other users.
Requirements:
Server Implementation:
a Create a server class,ChatServer using socket programming to manage connections from multiple clients.
b The server should be able to handle incoming connections, assign a unique user ID to each connected client, and maintain a list of connected users.
Client Implementation:
a Implement a client class,ChatClient that connects to the server using sockets.
b Each client should be able to send messages to the server, which will broadcast the messages to all connected clients.
c Clients should also be able to receive messages from other users.
User Interface:
a Include a simple textbased for the client to facilitate message input and display.
Guidelines
Submit wellcommented Java source code.
Screenshot of the Text base User interface.
Include a README file explaining how to run your chat application and providing details about your implementation.
Grading Criteria
Server Implementation: Implementation of socket programming concepts, user management, connection handling.
Client Implementation: Implementation of socket connection, messaging sending, Message broadcasting
User Interface: Creation of a user interface which is usable.
Logic and Computation
Program Flow and Structure
Output.
Code style and readability.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
