Selasa, 21 September 2021

Multi Chat Network Programming💻

 Multi Chat Network Programming💻

Assalamualaikum, wr.wb 
    Hallo sahabat ngoding, Artikel kali ini membahas mengenai komunikasi client server lebih dari satu client atau multi client, Salah satu model umum yang diterapkan untuk pemrograman jaringan adalah model client atau server. Sehingga secara umum jika ingin mengembangkan suatu aplikasi jaringan, maka aplikasi tersebut dikenal juga dengan aplikasi client atau server. Sebagai contoh salah satu aplikasi yang menggunakan model client atau server adalah chatting. Aplikasi chatting ini menggunakan prinsip dimana client atau user melakukan permintaan untuk terkoneksi dengan server dan memanfaatkan fasilitas-fasilitas yang disediakan oleh server. Setelah melalui pengujian dan analisa, dapat diketahui bahwa sistem tersebut secara keseluruhan telah berjalan sesuai dengan yang diharapkan, dan mempunyai kelebihan yaitu dengan banyaknya client yang dapat terhubung ke jaringan dan dapat berkomunikasi satu sama lain melalui chatting. Selain itu aplikasi chatting ini dapat berjalan di setiap sistem operasi karena dibuat dengan bahasa pemrograman Java yang bersifat multi platform.

Langkah-langkah yang dilakukan 
1. Buka Netbeans,  bisa menggunakan aplikasi seperti sublime text, visual studio code atau yang lainnya.
    
2. Selanjutnya membuat Chat Server Multi, untuk membuatnya menggunakan source code seperti dibawah ini :
    
Berikut penjelasan source code :

import java.io.*;  // merupakan fungsi yang memasukkan data dan mengeluarkan data//

import java.net.*; //Merupakan perintah Program Java berisi kelas-kelas  yang memperbolehkan program berkomunikasi melewati jaringan//

public class ChatServerMulti{ // Merupakan nama kelas dari program yaitu, ChatServerMulti //

private static ServerSocket servSock; // ServerSocket, class ini merupakan ciri khas bahwa class tersebut diterapkan untuk server. Ketika client tidak membutuhkan kelas tersebut. //

private static final int PORT = 1234 ; // ini adalah nomor port dari ServerSocket//

public static void main(String args[]) // fungsi dalam program// throws IOException{

 System.out.println("Opening Port.....\n"); // sistem yg akan menampilkan hasil//

 try{ // ulangi//

 servSock = new ServerSocket(PORT); // instruksi untuk memasukkan nomor port//

 }catch(IOException e){

 System.out.println("Unable to attach to port"); // menampilkan keluaran//

 System.exit(1); // sistem untuk keluar//

 }

 do{

 Socket client = servSock.accept();// Client akan menerima dari server//

ClientHandler handler = new ClientHandler(client);

 handler.start();

 }while(true);

}

}

class ClientHandler extends Thread{

private Socket client ;

private BufferedReader in ;

private PrintWriter out ;

public ClientHandler(Socket socket){

 client = socket ;

 try{

 in = new BufferedReader(new

 InputStreamReader(client.getInputStream()));

 out = new PrintWriter(client.getOutputStream(),true);

 }catch(IOException e){

 e.printStackTrace();

 }

}

public void run(){ // suatu fungsi untuk menjalankan program//

try{ // jika gagal ulangi//

 String received ; // untuk penerimaan pesan menggunakan tipe data string//

 do{

 received = in.readLine();

 System.out.println(received); // tampilan ketika pesan sukses dikirim//

 out.println("ECHO : " + received); // telah sukses atau diterima//

 }while(!received.equals("QUIT")); /) sudah diterima dan keluar//

}catch(IOException e){

 e.printStackTrace();

}

finally{ /)

 try{ // ulangi//

 if (client != null){

 System.out.println("Closing down connection"); // sistem yg menampilkan penutupan dari koneksi//

 client.close(); // Penutupan dari client//

 }

 }catch(IOException e){

 e.printStackTrace();

 }

}

}

} // Setiap kodingan selesai akhiri dengan tanda kurung kurawal//

3. Selanjutnya membuat Chat Client Multi , untuk membuatnya menggunakan source code seperti berikut:

Berikut Penjelasan source code

import java.io.*; // merupakan fungsi input output atau masukan data dan keluaran dari data //

import java.net.*; // fungsi yang memperoleh kan data terkoneksi //

public class ChatClientMulti{ // merupakan nama kelas dari program yaitu ChatClientMulti//

private static InetAddress host ; // merupakan alamat dari host//

private static final int PORT = 1234; // merupakan nomor port//

private static Socket link ; // pada tahap ini masukkan alamat dari soket//

private static BufferedReader in ;

private static PrintWriter out ;

private static BufferedReader keyboard ;

public static void main(String args[]){

 try{

 host = InetAddress.getLocalHost();

 link = new Socket(host,PORT);

 in = new BufferedReader(new

InputStreamReader(link.getInputStream()));

 out = new PrintWriter(link.getOutputStream(),true);

 keyboard = new BufferedReader(new InputStreamReader(System.in));

 String message, response; //. Akan menerima sebuah pesan bertipe data string //

 do{

 System.out.print("Enter message(QUIT to exit)"); // sistem yg menampilkan untuk memasukkan sebuah pesan ke server//

 message = keyboard.readLine(); // pesan //

 out.println(message); /) tampilan dari pesan//

 response = in.readLine();

 System.out.println(response);

 }while(!message.equals("QUIT"));

 }catch(UnknownHostException e){

 System.out.println("Host ID not found!");

 }

 catch(IOException e){

 e.printStackTrace();

 }

 finally{ // selesai//

 try{ // ulangi lagi //

 if (link != null){ // jika alamat yg dimasukkan salah atau null//

 System.out.println("Closing down connection"); // sistem yg akan menutup koneksi//

 link.close(); // penutupan alamat //

 }

 }

 catch(IOException e){

 e.printStackTrace();

 }

 }

}

} // Setiap codingan selesai akhiri dengan tanda kurung kurawal tutup//

 4. Setelah selesai Kemudian runningkan program dengan cara masuk ke lokal penyimpanan source code nya kemudian  klik kanan pada file lalu pilih git bush here

5. Selelah itu panggil program server dengan menggunakan syntax, "javac ChatServerMulti.java" >> java ChatServer >>. Setelah selesai memanggil servernya dilanjutkan pemanggilan client dengan membuka tab get bash here baru untuk client dilanjutkan untuk pemanggilan client nya "javac.ChatClientMulti.Java" >> java ChatCLientMulti >> selanjutnya enter maka akan tampil seperti gambar dibawah ini
 
Program chatting antara client dan server sudah berhasil dibuat, cukup sekian pembahasan artikel kali ini semoga dapat membantu dan menambah wawasan, see you👋👋










~SEMOGA BERMANFAAT💓💓💗💖~