Perbedaan Kunci - Pemrograman Fungsional vs Pemrograman Imperatif
Perbedaan utama antara pemrograman fungsional dan pemrograman imperatif adalah bahwa pemrograman fungsional menganggap komputasi sebagai fungsi matematika dan menghindari perubahan status dan data yang dapat berubah sementara pemrograman imperatif menggunakan pernyataan yang mengubah status program.
Paradigma pemrograman memberikan gaya membangun struktur dan elemen program komputer. Paradigma pemrograman membantu mengklasifikasikan bahasa pemrograman berdasarkan fiturnya. Bahasa pemrograman mungkin mempengaruhi lebih banyak paradigma. Dalam paradigma berorientasi objek, program disusun menggunakan objek, dan objek meneruskan pesan menggunakan metode. Pemrograman logika dapat mengekspresikan komputasi secara eksklusif dalam istilah logika matematika. Dua paradigma pemrograman lainnya adalah pemrograman fungsional dan pemrograman imperatif. Pemrograman fungsional memungkinkan mengungkapkan perhitungan sebagai evaluasi fungsi matematika. Pemrograman imperatif memberikan pernyataan yang secara eksplisit mengubah status memori. Artikel ini membahas perbedaan antara pemrograman fungsional dan pemrograman imperatif.
ISI
1. Gambaran Umum dan Perbedaan Utama
2. Apa itu Pemrograman Fungsional
3. Apa itu Pemrograman Imperatif
4. Persamaan Antara Pemrograman Fungsional dan Pemrograman Imperatif
5. Perbandingan Berdampingan - Pemrograman Fungsional vs Pemrograman Imperatif dalam Bentuk Tabular
6. Ringkasan
Apa itu Pemrograman Fungsional?
Pemrograman Fungsional didasarkan pada Matematika. Prinsip utama di balik pemrograman fungsional adalah bahwa semua komputasi dianggap sebagai kombinasi fungsi matematika yang terpisah. Fungsi matematika memetakan input ke output. Asumsikan ada fungsi yang disebut f (x) = x * x. Nilai x 1 dipetakan ke keluaran 1. Nilai x 2 dipetakan ke keluaran 4. Nilai x 3 dipetakan ke keluaran 9 dan seterusnya.
Gambar 01: Contoh bahasa pemrograman Fungsional - Haskell
Dalam pemrograman fungsional, pola dipertimbangkan. Bahasa pemrograman Fungsional Haskell, menggunakan metode di bawah ini untuk menemukan penjumlahan angka.
Fungsi penjumlahan memiliki nilai integer, dan hasilnya juga berupa integer. Ini dapat ditulis sebagai sum: [int] -> int. Penjumlahan dapat dilakukan dengan mengikuti pola di bawah ini.
jumlah [n] = n, jumlah dari satu bilangan adalah bilangan itu sendiri.
Jika ada daftar nomor, maka dapat dituliskan sebagai berikut. N melambangkan bilangan pertama, dan ns melambangkan bilangan lainnya
jumlah (n, ns) = n + jumlah ns.
Pola di atas dapat diterapkan untuk mencari penjumlahan dari tiga bilangan yaitu 3,4,5.
3 + jumlah [4,5]
3 + (4 + jumlah [5])
3+ 4 + 5 = 12
Suatu fungsi atau ekspresi dikatakan memiliki efek samping jika ia mengubah beberapa status di luar cakupannya atau memiliki interaksi yang dapat diamati dengan fungsi pemanggilnya selain nilai yang dikembalikan. Pemrograman fungsional meminimalkan efek samping ini. Perubahan status tidak bergantung pada input fungsi. Ini berguna saat memahami perilaku program. Salah satu kelemahan dari pemrograman fungsional adalah bahwa mempelajari pemrograman fungsional lebih sulit dibandingkan dengan pemrograman imperatif.
Apa itu Pemrograman Imperatif?
Pemrograman imperatif adalah paradigma pemrograman yang menggunakan pernyataan yang mengubah status program. Ini berfokus pada menggambarkan bagaimana sebuah program beroperasi. Bahasa pemrograman seperti Java, C dan C # adalah bahasa pemrograman penting. Ini memberikan prosedur langkah demi langkah tentang apa yang harus dilakukan. Bahasa pemrograman imperatif berisi struktur seperti if, else, while, untuk loop, kelas, objek, dan fungsi.
Gambar 02: Contoh bahasa pemrograman Imperatif - Java
Penjumlahan sepuluh angka dapat ditemukan di Jawa sebagai berikut. Dalam setiap iterasi, nilai i ditambahkan ke penjumlahan dan ditetapkan ke variabel jumlah. Di setiap iterasi, nilai jumlah terus bertambah ke jumlah yang dihitung sebelumnya.
int jumlah = 0;
untuk (int i = 0; i <= 10; i ++) {
jumlah = jumlah + i;
}
Pemrograman imperatif mudah dipelajari, dipahami, dan di-debug. Sangat mudah untuk menemukan status program karena menggunakan variabel status. Beberapa kekurangannya adalah dapat membuat kode menjadi panjang dan juga dapat meminimalkan skalabilitas.
Apa Persamaan Antara Pemrograman Fungsional dan Pemrograman Imperatif?
Baik Pemrograman Fungsional dan Pemrograman Imperatif adalah paradigma pemrograman
Apa Perbedaan Antara Pemrograman Fungsional dan Pemrograman Imperatif?
Artikel Diff Tengah sebelum Tabel
Pemrograman Fungsional vs Imperatif |
|
Pemrograman Fungsional adalah paradigma pemrograman yang menganggap komputasi sebagai evaluasi fungsi matematika dan menghindari perubahan status dan data yang dapat berubah. | Pemrograman Imperatif adalah paradigma pemrograman yang menggunakan pernyataan, yang mengubah status program. |
Struktur | |
Pemrograman Fungsional berisi pemanggilan fungsi dan fungsi tingkat tinggi. | Pemrograman Imperatif berisi if, else, while, untuk loop, fungsi, kelas, dan objek. |
Bahasa pemrograman | |
Scala, Haskell dan Lisp adalah bahasa pemrograman fungsional. | C, C ++, Java adalah bahasa pemrograman penting. |
Fokus | |
Pemrograman Fungsional berfokus pada hasil akhir. | Pemrograman Imperatif berfokus pada penggambaran bagaimana sebuah program beroperasi. |
Kesederhanaan | |
Pemrograman fungsional itu sulit. | Pemrograman imperatif lebih mudah. |
Ringkasan - Pemrograman Fungsional vs Pemrograman Imperatif
Paradigma pemrograman memberikan gaya membangun struktur dan elemen program komputer. Pemrograman Fungsional dan Pemrograman Imperatif adalah dua di antaranya. Perbedaan antara pemrograman fungsional dan pemrograman imperatif adalah bahwa pemrograman fungsional menganggap komputasi sebagai fungsi matematika dan menghindari perubahan status dan data yang dapat berubah sementara pemrograman imperatif menggunakan pernyataan yang mengubah status program.