Asynchronous vs Synchronous Programming
Sering dari kita mendengar istilah Asynchronous dan Synchronous pada ranah pemrograman. Istilah ini cukup akrab dalam Bahasa pemrograman Javascript. Dua nama tersebut merupakan sebuah Teknik atau style programming dengan keunggulan dan kekurangannya masing-masing.
Mari kita mulai dari asynchronous programming. Asynchronous programming merupakan sebuah pendekatan pemrograman yang tidak terikat pada input output (I/O) protocol. Ini menandakan bahwa pemrograman asynchronous tidak melakukan pekerjaannya secara old style / cara lama yaitu dengan eksekusi baris program satu persatu secara hirarki. Asynchronous programming melakukan pekerjaannya tanpa harus terikat dengan proses lain atau dapat kita sebut secara Independent. Untuk lebih jelasnya, mari kita perhatikan Gambar di bawah ini:
Dari gambar diatas terlihat bahwa pendekatan model pemrograman Asynchronous memiliki waktu eksekusi yang lebih cepat 25 detik dibandingkan dengan pendekatan metode pemrograman Synchronous. Terlihat pula, pada asynchronous tiap modul atau task tidak perlu menunggu task lainnya selesai untuk berjalan. Dengan begitu, waktu eksekusi juga dapat menjadi lebih singkat dan cepat.
Berbeda dengan asynchronous, synchronous programming memiliki pendekatan yang lebih old style. Task akan dieksekusi satu persatu sesuai dengan urutan dan prioritas task. Hal ini memiliki kekurangan pada lama waktu eksekusi karena masing-masing task harus menunggu task lain selesai untuk diproses terlebih dahulu.
Namun, bukan berarti Synchronous programming jauh lebih jelek dibandingkan dengan asynchronous programming. Terdapat beberapa hal yang menjadi synchronous programming memiliki keunggulan dibandingkan dengan asynchronous programming. Beberapa diantaranya adalah kemudahan yang ditawarkan oleh synchronous programming dibandingkan dengan asynchronous programming.
Kedepannya, 2 pendekatan programming ini akan semakin banyak diadopsi dan berada pada 1 fungsi dan tujuan yang sama. Terlebih dengan semakin berkembangnnya Rest API dan teknologi pemrograman. Menarik kan, Yuk Belajar lebih banyak!
Comments :