Skip to content

3. Client Side

양유성 (Yang Yoo Seong) edited this page Dec 7, 2016 · 4 revisions

3.1 Outline of Client Side system

3.1 - 1. Client System

  • Device and environment :
    Eclipse Neon under MacOS (Sierra, 10.12) and WindowsOS(10)
  • Features :
    It will communicates with Server-side system with TCP based Sockets and I/O Streams.
    Also, run and play the word relay game by chatting with opposite user.
  • In-Game Jobs :
    With Client, users can join the game server(projected uploaded with DeathWordRelaySERVER), and DB(Users' data and Rank)Server that implemented by my own NAS.
    By making a room, users can join to each others room to play the word-relay game. Of course, if you lose, your file will be deleted randomly. Watch out for it!

3.2 Instruction of Classes in Client Project

  • Data package

  • GUI Package

    • GamaRoom.java
      This class will be works when you make a room or enter to a room. It draw all of design of game room which the death word relay will be run.
    • Login.java
      This class will be shown after a user open client program with successful login. You can also pop a register.java frame in this frame with pressing a register button.
    • Register.java
      You can register to the death work relay game by user. This class will use other class that access to DB Server(You can check dose classes in Loginout package).
    • Waiting.java
      When a your login is success with no error, you will join to waiting room first, which that you can make a new room or have a chats with others.
  • GameSystem Package

    • RandomFileDeleter.java Our main class that find a random file and return a file object that selected. You can modify this class for changing a type of files that will be deleted.
    • SearchNaverDic.java To finds the word that entered is available or not, we will check your word in Naver Korean dictionary with this.
    • WordGame.java All of rules and game systems are implemented in this class. There are 3 checking funtions, Online Checking(With Naver dictionary), Length-based Offline Checking(Check word's length), Word-based Offline Checking(Check word correctable).
    • WordTimerTask.java This class will check if 10 seconds is run out or not after user's turn is came.
  • Loginout Package

    • MemberInfo.java
      This class for saving user's information temporally to send it's data to DB server, when user request a registering.
    • MemberProc.java This class will send SQL queries that request login or register, with data of MemberInfo().
  • RoomClient Package

    • Client.java
      This class is a main class that making all of sockets or streams and communicating with server-side. With these jobs, the client will run correctly.
  • RoomClient Package

    • WinddowHandler.java This class is sub class that modify a closing button of gameroom to normal button that user can't press and close.

Clone this wiki locally