Perbezaan Utama - Pengaturcaraan Fungsi vs Pengaturcaraan Imperatif
Perbezaan utama antara pengaturcaraan fungsional dan pengaturcaraan imperatif adalah bahawa pengaturcaraan fungsional menganggap pengiraan sebagai fungsi matematik dan mengelakkan perubahan keadaan dan data yang berubah-ubah sementara pengaturcaraan imperatif menggunakan pernyataan yang mengubah keadaan program.
Paradigma pengaturcaraan menyediakan gaya membina struktur dan elemen program komputer. Paradigma pengaturcaraan membantu mengklasifikasikan bahasa pengaturcaraan berdasarkan ciri-cirinya. Bahasa pengaturcaraan mungkin mempengaruhi lebih banyak paradigma. Dalam paradigma berorientasi objek, program disusun menggunakan objek, dan objek menyampaikan pesan menggunakan kaedah. Pengaturcaraan logik dapat menyatakan pengiraan secara eksklusif dari segi logik matematik. Dua lagi paradigma pengaturcaraan adalah pengaturcaraan fungsional dan pengaturcaraan penting Pengaturcaraan fungsional membolehkan mengekspresikan pengiraan sebagai penilaian fungsi matematik. Pengaturcaraan Imperatif memberikan pernyataan yang secara jelas mengubah keadaan memori. Artikel ini membincangkan perbezaan antara pengaturcaraan fungsional dan pengaturcaraan penting.
KANDUNGAN
1. Gambaran Keseluruhan dan Perbezaan Utama
2. Apa itu Pengaturcaraan Fungsional
3. Apa itu Pengaturcaraan Imperatif
4. Persamaan Antara Pengaturcaraan Fungsional dan Pengaturcaraan Imperatif
5. Perbandingan Berdampingan - Pengaturcaraan Fungsional vs Pengaturcaraan Imperatif dalam Jadual
6. Ringkasan
Apa itu Pengaturcaraan Fungsional?
Pengaturcaraan Fungsional berdasarkan Matematik. Prinsip utama di sebalik pengaturcaraan fungsional adalah bahawa semua pengiraan dianggap sebagai gabungan fungsi matematik yang terpisah. Fungsi matematik memetakan input ke output. Andaikan terdapat fungsi yang disebut f (x) = x * x. Nilai x 1 dipetakan ke output 1. Nilai x 2 dipetakan ke output 4. Nilai x 3 dipetakan ke output 9 dan seterusnya.
Gambar 01: Contoh bahasa pengaturcaraan Berfungsi - Haskell
Dalam pengaturcaraan berfungsi, corak dipertimbangkan. Bahasa pengaturcaraan Fungsional Haskell, menggunakan kaedah di bawah untuk mencari penjumlahan nombor.
Fungsi jumlah mempunyai nilai integer, dan hasilnya juga akan menjadi bilangan bulat. Ia boleh ditulis sebagai jumlah: [int] -> int. Penjumlahan boleh dilakukan dengan mengikuti corak di bawah.
jumlah [n] = n, jumlah satu nombor adalah nombor itu sendiri.
Sekiranya terdapat senarai nombor, ia boleh ditulis seperti berikut. N mewakili nombor pertama, dan ns mewakili nombor yang lain
jumlah (n, ns) = n + jumlah ns.
Corak di atas boleh digunakan untuk mencari penjumlahan tiga nombor iaitu 3,4,5.
3 + jumlah [4,5]
3 + (4 + jumlah [5])
3+ 4 + 5 = 12
Fungsi atau ungkapan dikatakan mempunyai kesan sampingan jika mengubah beberapa keadaan di luar ruang lingkupnya atau mempunyai interaksi yang dapat dilihat dengan fungsi memanggilnya selain nilai kembali. Pengaturcaraan berfungsi mengurangkan kesan sampingan ini. Perubahan keadaan tidak bergantung pada input fungsi. Ia berguna semasa memahami tingkah laku program. Satu kelemahan pengaturcaraan fungsional adalah bahawa pembelajaran pengaturcaraan fungsional lebih sukar dibandingkan dengan pengaturcaraan penting.
Apa itu Pengaturcaraan Imperatif?
Pengaturcaraan Imperatif adalah paradigma pengaturcaraan yang menggunakan pernyataan yang mengubah keadaan program. Ia memberi tumpuan untuk menerangkan bagaimana program beroperasi. Bahasa pengaturcaraan seperti Java, C dan C # adalah bahasa pengaturcaraan penting. Ini menyediakan prosedur langkah demi langkah mengenai apa yang harus dilakukan. Bahasa pengaturcaraan Imperatif mengandungi struktur seperti jika, jika tidak, untuk gelung, kelas, objek dan fungsi.
Gambar 02: Contoh bahasa pengaturcaraan Imperatif - Java
Penjumlahan sepuluh nombor boleh didapati di Jawa seperti berikut. Dalam setiap lelaran, nilai i ditambahkan ke jumlah dan diberikan kepada pembolehubah jumlah. Dalam setiap lelaran, nilai jumlah terus bertambah ke jumlah yang dikira sebelumnya.
int jumlah = 0;
untuk (int i = 0; i <= 10; i ++) {
jumlah = jumlah + i;
}
Pengaturcaraan Imperatif mudah dipelajari, difahami dan disahpijat. Sangat mudah untuk mencari keadaan program kerana menggunakan pemboleh ubah keadaan. Beberapa kekurangannya ialah menjadikan kodnya panjang dan juga dapat mengurangkan skalabilitas.
Apakah Kesamaan Antara Pengaturcaraan Fungsional dan Pengaturcaraan Imperatif?
Pengaturcaraan Fungsional dan Pengaturcaraan Imperatif adalah paradigma pengaturcaraan
Apakah Perbezaan Antara Pengaturcaraan Fungsional dan Pengaturcaraan Imperatif?
Artikel Diff Tengah sebelum Jadual
Pengaturcaraan Fungsional vs Imperatif |
|
Fungsional Programming adalah paradigma pengaturcaraan yang menganggap pengiraan sebagai penilaian fungsi matematik dan mengelakkan perubahan keadaan dan data yang dapat berubah. | Pengaturcaraan Imperatif adalah paradigma pengaturcaraan yang menggunakan pernyataan, yang mengubah keadaan program. |
Struktur | |
Pengaturcaraan Fungsional mengandungi panggilan fungsi dan fungsi pesanan tinggi. | Pengaturcaraan Imperatif mengandungi jika, jika tidak, untuk gelung, fungsi, kelas dan objek. |
Bahasa Pengaturcaraan | |
Scala, Haskell dan Lisp adalah bahasa pengaturcaraan yang berfungsi. | C, C ++, Java adalah bahasa pengaturcaraan penting. |
Fokus | |
Pengaturcaraan Fungsional memberi tumpuan kepada hasil akhir. | Pengaturcaraan Imperatif memberi tumpuan untuk menerangkan bagaimana program beroperasi. |
Kesederhanaan | |
Pengaturcaraan berfungsi sukar. | Pengaturcaraan Imperatif lebih mudah. |
Ringkasan - Pengaturcaraan Fungsional vs Pengaturcaraan Imperatif
Paradigma pengaturcaraan menyediakan gaya membina struktur dan elemen program komputer. Pengaturcaraan Fungsional dan Pengaturcaraan Imperatif adalah dua daripadanya. Perbezaan antara pengaturcaraan fungsional dan pengaturcaraan imperatif adalah bahawa pengaturcaraan fungsional menganggap pengiraan sebagai fungsi matematik dan mengelakkan perubahan keadaan dan data yang berubah-ubah sementara pengaturcaraan imperatif menggunakan pernyataan yang mengubah keadaan program.