Apakah pemrograman fungsional hanya berbeda , atau apakah sebenarnya benar-benar lebih sulit ?
Katakan seseorang yang belum pernah belajar pemrograman sama sekali sebelumnya, dan diajarkan pemrograman fungsional. vs seseorang yang tidak pernah belajar pemrograman sama sekali sebelumnya, dan diajarkan pemrograman imperatif. mana yang akan dia temukan lebih keras? atau sama?
Pertanyaan saya: katakan masalahnya sekarang adalah untuk memasukkan unta,
sedemikian rupa sehingga qwe_asd_zxc_rty_fgh_vbn
menjadiqweAsdZxcRtyFghVbn
Cara proseduralnya adalah:
- membaginya di sepanjang
_
- loop melalui array yang melewatkan item pertama
- untuk setiap entri, kami menggunakan huruf besar untuk huruf pertama
- gabungkan hasilnya bersama
Cara fungsional adalah:
- jika tidak dapat menemukan
_
kembaliinput
- potong
input
dulu_
(seperti yang kita dapatkanqwe
danasd_zxc_rty_gfh_cvb
) - huruf besar huruf pertama
head
dan bahas itu denganf(tail)
Ok jika Anda memiliki latar belakang fungsional DAN memiliki pengalaman substansial dalam pemrograman prosedural, saya ingin bertanya: apakah Anda membutuhkan waktu lebih lama untuk mencari cara prosedural atau akankah Anda membutuhkan waktu lebih lama untuk mengetahui cara fungsional?
Jika Anda memiliki latar belakang prosedural tetapi memiliki pengalaman bertahun-tahun dengan pemrograman fungsional, saya ingin mengajukan pertanyaan yang sama: akankah Anda membutuhkan waktu lebih lama untuk mencari cara prosedural atau akankah lebih lama bagi Anda untuk mengetahui fungsional cara?
x=x+1
dapat meledakkan otak yang tidak terpapar. Pemrograman fungsional adalah alami, itu tidak lebih dari fungsi matematika murni dan convinient ketat.
map
untuk langkah 3 daripada loop yang bermutasi. Pendekatan kedua adalah sesuatu yang saya hanya akan mempertimbangkan jika tidak ada fungsi split di perpustakaan standar (dalam hal ini harus dibandingkan dengan solusi imperatif yang juga tidak digunakansplit
).