Jadi apa itu pemrograman fungsional?
Pemrograman fungsional adalah tentang pemisahan masalah, pemrograman berorientasi objek mana yang juga melakukannya,
bukan?
Ini semua tentang mengemas kode kita menjadi potongan-potongan terpisah sehingga semuanya terorganisir dengan baik di setiap bagian kode
kita.
Dan setiap bagian diatur dengan cara yang masuk akal berdasarkan fungsionalitas.
Jadi ketika kami mengatakan pemisahan masalah, yang kami maksud adalah setiap bagian berhubungan dengan diri sendiri dengan satu hal yang menjadi
keahliannya.
Kami ingat di bagian pemrograman berorientasi objek kami bagaimana kami memiliki kelas
untuk membagi atribut dan metode, katakanlah, kelas penyihir dan kelas pemanah.
Dan pemrograman fungsional memiliki ide ini juga untuk memisahkan masalah, tetapi mereka juga memisahkan data dan
fungsi.
Begitulah cara seorang programmer fungsional memandang dunia.
Alih-alih menggabungkan metode dan atribut, kami memisahkannya karena keduanya adalah dua hal yang terpisah.
Ada data dan data ini berinteraksi dan ditindaklanjuti.
Tapi kita tidak akan menggabungkan data dan fungsi sebagai satu kesatuan dan objek seperti yang kita lihat dengan pemrograman
berorientasi objek.
Sekarang, tidak ada definisi yang tepat untuk apa yang berfungsi dan tidak.
Tetapi umumnya bahasa fungsional memiliki penekanan pada kesederhanaan di mana data dan fungsi diperhatikan karena dalam
sebagian besar paradigma pemrograman fungsional, kami tidak memiliki gagasan tentang kelas dan objek ini.
Alih-alih, fungsi beroperasi pada struktur data yang terdefinisi dengan baik seperti daftar dan kamus yang kita lihat,
daripada memiliki struktur data itu ke suatu objek.
Tetapi pada akhirnya, tujuan dari paradigma pemrograman fungsional sama dengan paradigma berorientasi objek.
Ini adalah ide untuk membuat kode kita bersih dan dapat dimengerti.
Mudah untuk diperpanjang.
Artinya, kita dapat mengembangkan kode kita dan membuatnya lebih baik dan lebih baik dan meminta orang lain datang dan memperluas kode kita.
Lebih mudah untuk mempertahankan.
Itu membuat kode kita tetap kering sehingga kita tidak mengulangi diri kita sendiri serta menjaga memori kode kita tetap
efisien karena kita tidak menyimpan informasi di semua tempat.
Sekarang, ketika kita sampai pada pemrograman fungsional, kita memiliki pilar yang sangat penting dan tidak seperti
pemrograman berorientasi objek di mana kita memiliki empat pilar enkapsulasi, abstraksi, pewarisan, dan polimorfisme, jika
Anda ingin memecah segalanya dalam pemrograman fungsional, semuanya turun dengan konsep fungsi murni
ini.
Dan ini adalah sesuatu yang akan kita jelajahi dalam beberapa video berikutnya.
Tapi idenya di sini adalah bahwa ada pemisahan antara data program dan perilaku program.
Jadi mari kita cari tahu lebih banyak tentang fungsi murni.
Apa yang mereka maksud?
Apakah mereka?