LAPORAN APLIKASI CHATTING
DI SUSUN OLEH :
Nama : Nadia Febianti
NIM : 2022903430027
Kelas : TRKJ 2.C
Program Studi : Teknologi Rekayasa Komputer Jaringan
Dosen Pengajar : Umri Erdiansyah, S.Kom., M.Kom.
JURUSAN TEKNOLOGI INFORMASI DAN KOMPUTER
PRODI TEKNOLOGI REKAYASA KOMPUTER DAN JARINGAN
POLITEKNIK NEGERI LHOKSEUMAWE
TAHUN AJARAN 2022/2023
LEMBAR PENGESAHAN
1
No. Praktikum : 08 /TIK/TRKJ 2C/ APLIKASI CHATTING
Tanggal Praktikum : 11 DESEMBER 2023
Tanggal Penyerahan : 19 DESEMBER 2023
Tabel Penilain :
Mengetahui,
Dosen Pembimbing, Penyusun
Umri Erdiansyah, S.Kom., M.Kom. Nadia febianti
NIP. 19921013 202203 1 003 NIM.2022903430027
2
I. Teori
Aplikasi chatting yang dibangun dengan pemrograman java berbasis object
oriented program (OOP). Selain OOP ada beberapa konsep yang diterapkan yaitu
serializable, dan multithreading. Bahasa pemrograman java menyediakan kelas
kelas yang mendukung object oriented, serializable dan multithreading.
Selanjutnya akan dibahas ketiga konsep tersebut. Dalam pemrograman java
di sediakan kelas yang Bernama ObjectInputStream dan ObjectOuputStream
untuk membaca dan menulis suatu object. Kelas ObjectInputStream menerapkan
interface ObjectInput untuk dapat menentukan sebuah metode dalam membaca
sebuah object dari input stream. Kelas ObjectOutputStream menerapkan inteface
object output untuk menentukan metode tulis sebuah object ke dalam sebuah
outputstream. Proses menulis sebuah object ke dalam output stream di sebut
serializable sedangkan proses untuk membaca sebuah object dari input stream
disebut dengan deserializable.
Dalam job ini juga diimplementasikan multi threading yang berarti bahwa
terdapat beberapa methode (fungsi) program yang dapat berjalan secara
concurrent (bersamaan) dan masing-masing methode dapat menangani tugas yang
berbeda pada saat yang sama. Dengan multi threading memungkinkan menulis
program dengan banyak aktivitas dapat di proses dalam waktu bersamaan dalam
program yang sama.
II. Alat/Bahan
Alat dan bahan yang diperlukan dalam praktikum ini adalah perangkat hardware
dan sofware yaitu:
1. Komputer/Labtop
2. NetBeans IDE (Integrated Development Environment
3. Java SE Development Kit 13
3
III. Prosedur Praktikum
1) Buatlah package baru dengan nama AppChat didalam project Job
2) Buatlah dua buah Jframe Form dan satu kelas java. Berilah nama Jframe
server, Jframe Form client dan Packet.java
3) Buatlah desain layout server seperti pada Gambar dibawah. Desain Layout
Server berikut
4) Tulislah code server seperti berikut ini
4
5) Tulislah code untuk Packet.java
5
6) Buatlah desain layout untuk client yang terdiri dari dua text field, satu text
area dan satu jButton. Pada bagian text field1 ganti nama variabelnya
menjadi txtSento selanjutnya text field2 ganti nama variabelnya menjadi
txtMessage. Pada bagian text area ganti nama variabelnya menjadi txtChat.
Pada bagian jButton ganti nama variabelnya menjadi cmdSend.
7) Tuliskan code client seperti berikut ini.
6
8) Codingan untuk button send >> action performed
9) Codingan untuk text field yang nama variabelnya textMessage >> key
pressed
7
IV. DATA PERCOBAAN
a. Jalankan aplikasi server dan masukkan nomor port 1214.
b. Jalankan aplikasi clien dan masukkan nama user, alamat ip server,
dan nomor port server.
V. ANALISA DAN KESIMPULAN
Dalam aplikasi yang dibangun memanfaatkan konsep multithread dalam
menerima koneksi dan melewatkan data ke suatu tujuan. Dalam aplikasi
server ada dua thread yang dijalankan dalam waktu bersamaan yaitu thread
handleclient dan thread startlistening. Kedua thread tersebut berjalan
bersamaan yaitu thread startlistening bertugas untuk menerima client yang
baru masuk ke server dan thread handle client bertugas utnuk menangani
pertukaran data diantara client. Dalam aplikasi clien ada thread listen yang
berfungsi untuk membaca paket data yang masuk. Methode konekToServer
8
yaitu methode untuk mengelola tugas terkait koneksi ke server sedangkan
methode kirimpesan berfungsi untuk mengirimkan pesan ke tujuan. Aplikasi
chatting pada job ini terdiri dari beberapa thread (multi thread) yang
dikompbinasikan untuk menjalankan beberapa tugas(fungsi) tertentu dalam
waktu yang bersamaan (concurrent). Pengiriman pesan didasari pada object
oriented yaitu pengiriman dilakukan dalam sebuah object. Object dalam kelas
clien ini terdiri dari pesan, pengirim pesan dan tujuan pesan. Pengiriman
object memanfaatkan serializable pada kelas objectinputstream dan
desesializable pada kelas objectoutputstream.