Là lập trình chức năng chỉ khác nhau , hoặc nó thực sự khó khăn hơn ?
Nói rằng ai đó chưa bao giờ học lập trình trước đây, và được dạy lập trình chức năng. vs một người chưa bao giờ học lập trình trước đây và được dạy lập trình mệnh lệnh. cái nào anh ta sẽ tìm thấy khó khăn hơn? hay giống nhau?
Câu hỏi của tôi: nói vấn đề bây giờ là trường hợp đầu vào lạc đà,
như vậy qwe_asd_zxc_rty_fgh_vbn
trở thànhqweAsdZxcRtyFghVbn
Cách thức thủ tục là:
- chia nó dọc theo
_
- lặp qua mảng bỏ qua mục đầu tiên
- cho mỗi mục, chúng tôi viết hoa chữ cái đầu tiên
- tham gia kết quả cùng nhau
Cách thức chức năng là:
- nếu không thể tìm thấy sự
_
trở lạiinput
- cắt
input
dọc theo đầu tiên_
(như vậy chúng ta có đượcqwe
vàasd_zxc_rty_gfh_cvb
) - viết hoa chữ cái đầu tiên
head
và concat mà vớif(tail)
Ok nếu bạn có một nền tảng chức năng VÀ có kinh nghiệm đáng kể về lập trình thủ tục, tôi muốn hỏi: bạn sẽ mất nhiều thời gian hơn để tìm ra cách thức thủ tục hay bạn sẽ mất nhiều thời gian hơn để tìm ra cách thức chức năng?
Nếu bạn có nền tảng về thủ tục nhưng có nhiều năm kinh nghiệm về lập trình chức năng, tôi muốn hỏi một câu hỏi tương tự: bạn sẽ mất nhiều thời gian hơn để tìm ra cách thức thủ tục hay bạn sẽ mất nhiều thời gian hơn để tìm ra chức năng đường?
x=x+1
có thể làm nổ tung một bộ não không giới hạn. Lập trình hàm là tự nhiên, nó không có gì khác hơn là các hàm toán học thuần túy và thuận tiện.
map
bước 3 thay vì vòng lặp đột biến. Cách tiếp cận thứ hai là điều tôi chỉ xem xét nếu không có chức năng phân tách trong thư viện chuẩn (trong trường hợp đó nên so sánh với một giải pháp bắt buộc không sử dụngsplit
).