ChitChat - Let's explore programming
This project aimed to develop a chatting application from very basic, by exploring the fundamentals of programming and APIs those are listed below,
- Java Socket programming
- Java I/O Streams
- OOPs concepts
- Core java
Without any external libraries I just used JDK it provides hundreds of classes and number of APIs. The working principle is very simple and easy to understand, and it needs to having basic knowledge on Java networking, streams and fundamentals of Java programming. Initially it started by implementing the socket programming, and it follows these steps
- Initialize ServerSocket and accept client.
- get input message from the user.
- Write some message to client through OutputStream.
- Retrieve data from InputStream.
- write message for user output.
- that's it.
- but same thing also happens on client side. Writing into OutputStream and Reading from InputStream.
For this reason ChatRoom class is used to centralize the io operations, and the below illustration gives the idea about ChatRoom class logic.
Java version 8 or higher.
- Press the Fork button (top right the page) to save copy of this project on your account.
- Download the repository files (project) from the download section or clone this project.
- Imported it in Intellij IDEA or any other Java IDE.
- Compile and run Server.java. Server must be run before Client.
- Compile and run Client.java
To exit from the chat write STOP from both.
If you want to contribute to this project and make it better with new ideas, your pull request is very welcomed. If you find any issue just put it in the repository issue section, thank you.