Apa itu Pemrograman Berbasis Aliran?

Pemrograman berbasis aliran adalah metode perancangan aplikasi komputer dan arsitektur yang tidak seperti metode desain aplikasi terstruktur tradisional di mana data dimaksudkan untuk diproses dalam aliran oleh komponen yang tidak terhubung satu sama lain dan menggunakan sistem pesan eksternal untuk berkomunikasi . Di bawah pemrograman berbasis aliran, fokus ditempatkan pada transformasi data dengan menggunakan komponen yang berbeda, yang pada dasarnya adalah modul atau fungsi yang dienkapsulasi yang tidak memiliki koneksi langsung ke komponen lain dalam program. Setiap aliran data dan peristiwa lainnya dikelola oleh sistem eksternal pengiriman pesan yang tidak berbeda dengan beberapa jenis protokol jaringan, di mana paket informasi (IP) dikirimkan ke modul melalui penggunaan port abstrak. Tampilan desain berbasis komponen ini memungkinkan aplikasi memiliki modul kode yang dikembangkan secara terpisah yang hanya perlu merespons pesan sistem, memproses IP, dan kemudian melepaskan IP kembali ke sistem. Pendekatan ini berguna pada sistem terdistribusi, jaringan dan dengan Internet dan arsitektur program berbasis web seperti server e-commerce.

Pria memegang komputer

Salah satu blok bangunan mendasar dari pemrograman berbasis aliran adalah gagasan tentang simpul, proses, atau modul yang terisolasi. Ini dapat dianggap sebagai bagian dari kode sumber program yang tidak memiliki ketergantungan langsung pada modul lain, hampir membuat modul menjadi bagian aplikasi yang berdiri sendiri yang dapat dipanggil kapan pun dibutuhkan. Setiap komponen tidak bergantung untuk dipanggil secara berurutan dengan komponen lain, sehingga komponen aplikasi dapat diatur dan digunakan dalam urutan apa pun, memungkinkan beberapa aliran data unik ada saat informasi bergerak melalui sistem.

Masing-masing modul individu dalam pemrograman berbasis aliran menerima data melalui antarmuka abstrak yang dikenal sebagai port, yang beroperasi seperti port data dalam jaringan komputer. Data dikirim ke port melalui buffer yang ukurannya terbatas tetapi mengubah beberapa IP menjadi aliran yang terus-menerus diumpankan ke port. Satu port dapat berhubungan dengan beberapa instance dari satu komponen, membuat struktur mudah digunakan pada sistem terdistribusi atau untuk pemrosesan paralel.

Data yang terkandung dalam paket informasi dimanuver melalui modul oleh sistem pesan eksternal. Dalam pemrograman berbasis aliran, sistem pesan ini terpisah dari modul dan IP dan hanya mengelola aliran program melalui penggunaan buffer yang terikat pada port. Sistem pesan pada dasarnya tidak memiliki pengetahuan tentang apa yang sedang atau sedang dilakukan modul dan tidak ada perhatian nyata tentang data apa yang terkandung dalam IP yang sedang diproses oleh modul.

Pembagian dan modularitas masing-masing komponen yang membentuk aplikasi pemrograman berbasis aliran cocok untuk proses seperti debugging dan pengembangan berorientasi tim. Sebagian besar kode dienkapsulasi, sehingga kode sumber memiliki potensi penggunaan kembali yang tinggi. Ini juga berarti bahwa peningkatan atau penskalaan aplikasi yang menggunakan pemrograman berbasis aliran dapat lebih mudah daripada dengan aplikasi yang lebih terintegrasi, karena sistem pesan, modul, dan sistem port masing-masing dapat diubah secara independen tanpa mempengaruhi program yang lebih besar.