辅导Algorithm程序、java编程语言辅导

- 首页 >> Database作业
Algorithm Design and Analysis
Milestone 1: Software Assignment
Submission Instructions
Create a single .zip archive containing the following components:
•For development tasks 1–3, please include .java files in the correct folder format. Please ensure code files do not contain any non-English characters (such as comments in Chinese) because my AUT computer cannot display these characters. Worse, these code files do not compile for me.
•For development task 4, please create a short 2-4 minute video of the demonstration in .mp4 format. Please ensure that the video file size is not more than 30MB.
Development tasks
The purpose of this assignment is to develop a client/server messaging system where clients can connect to the server and use it to send messages to specified clients.
The system should include the following components:
1.Server which maintains a list of clients that are currently connected (each with a unique name) and passes messages from one client to another. It should provide some mechanism for notifying clients when the server will be terminating connections or when a client disconnects. It should also demonstrate at least one design pattern. (15 marks)
2.Client Interface which is a GUI used to connect to the server and obtain a list of other currently connected clients. It should enable a client to send a text message to another chosen client via the server and display the messages received from other clients. The list should update the GUI whenever a new client connects to or disconnects from the server.
(15 marks)
1
3.Two Other Features such as user accounts, sending and receiving images, utilising UDP for some communication, hidden connections via a password whose presence is only known to the other hidden clients, or when the server starts it sends e-mails to a list of addresses notifying them of the
IP address and port of the server. (15 marks)
4.Demonstration of features of the complete system using a screen-cast video. The video should comment on the requirements listed in tasks