Software developer yang fokus mengembangkan aplikasi di atas platform .NET dan Android. Senang mempelajari teknologi baru terutama di bidang OOP, Design Pattern, ORM, Continuous Integration & Deployment dan arsitektur Microservice.
Aplikasi ini merupakan pengembangan dari sample aplikasi yg sudah pernah saya bahas pada postingan sebelumnya, aplikasi ini terdiri dari 2 project yaitu :
Aplikasi server memanfaatkan array winsock karena akan menghandle minimal 1 koneksi
Untuk aplikasi klien cukup menggunakan winsock standar (non array).
Sekarang akan kita bahas cara pembuatannya.
Aplikasi server
Aplikasi server menggunakan winsock yg dijadikan array karena akan menerima lebih dari 1 koneksi, untuk menjadikan sebuah winsock menjadi array cukup dengan mengeset properties index = 0
Selain itu agar sebuah winsock bisa menerima koneksi yg masuk, maka winsocknya harus dalam mode “Listen”, untuk keperluan ini kita akan menyiapkan sebuah fungsi misal dengan nama startListening
Selanjutnya tinggal kita panggil pada event Form_Load
Selain itu ada beberapa kode yang harus kita lengkapi pada event2x yg dimiliki oleh winsock yaitu event Close, ConnectionRequest, DataArrival dan Error
Event ConnectionRequest berfungsi untuk memfilter koneksi yg masuk, jika ada koneksi yg masuk akan dilakukan pengecekan terlebih dulu apakah ada winsock yg idle (ngangur) jika ada maka koneksi tersebut akan langsung dihandle oleh winsock yg idle tadi, jika tidak maka akan diload terlebih dulu winsock yg baru kemudian langsung menghandle koneksi yg baru masuk tadi.
Teknik ini merupakah salah satu cara untuk melakukan optimasi program jangan sampai aplikasi server meload secara terus menerus objek winsock yg baru untuk setiap koneksi yg masuk.
Event DataArrival berfungsi untuk memproses data yg masuk, untuk kasus aplikasi antrian ini data yang paling valid hanya berupa string “get_no_antrian”, jika datanya valid akan langsung dikirimkan nomor antrian terakhir ke klien yg mengirimkan string “get_no_antrian” dg memanggil prosedur send.
Untuk aplikasi server sy rasa sudah cukup akan kita lanjutkan dg aplikasi klien.
Aplikasi Klien
Untuk aplikasi klien lebih sederhana lagi, yg kita butuhkan cukup sebuah fungsi untuk melakukan koneksi ke server
Contoh pemanggilan fungsi diatas seperti berikut :
Untuk mengetahui data yang dikirim balik oleh server kita bisa memanfaatkan event DataArrival yg dimiliki oleh objek winsock
Selesai :)
Aplikasi diatas belum menggunakan database sama sekali, sehingga jika aplikasi server ditutup maka counter nomor antrian akan dimulai dari 1 lagi, dan sy berharap tidak ada pertanyaan bagaimana menyimpan counter nomor antriannya ke database atw bagaimana cara menampilkan nomor atrian terakhir klo servernya error .
Beberapa waktu yang lalu saya merilis sebuah library dengan nama WhatsApp NET Client. Library ini merupakan hadiah dari saya untuk teman-teman .NET De...
WhatsApp NET Client adalah library untuk .NET Developer yang digunakan untuk mengembangkan aplikasi WhatsApp klien berbasis desktop. Library ini dikembangkan...
Comments