Функциональное программирование просто другое или оно действительно сложнее ?
Скажем, кто-то, кто никогда раньше не учился программированию и обучен функциональному программированию. против кого-то, кто никогда не изучал программирование вообще, и обучается императивному программированию. что он найдет более жестким? или то же самое?
Мой вопрос: скажем, проблема сейчас в том, чтобы на верблюде
такой, который qwe_asd_zxc_rty_fgh_vbn
становитсяqweAsdZxcRtyFghVbn
Процессуальный путь это:
- разделить его вдоль
_
- перебрать массив, пропуская первый элемент
- для каждой записи мы пишем с заглавной буквы первую букву
- объединить результаты вместе
Функциональным способом является:
- если не могу найти
_
возвратinput
- разрезать
input
по первому_
(так, что мы получимqwe
иasd_zxc_rty_gfh_cvb
) - Прописать первую букву
head
и заключить, что сf(tail)
Хорошо, если у вас есть функциональный опыт и значительный опыт в процедурном программировании, я хотел бы спросить: вам понадобится больше времени, чтобы выяснить процедурный путь, или вам понадобится больше времени, чтобы выяснить функциональный путь?
Если у вас есть процедурный опыт, но у вас есть многолетний опыт работы с функциональным программированием, я хотел бы задать тот же вопрос: вам понадобится больше времени, чтобы выяснить процедурный путь, или вам потребуется больше времени, чтобы выяснить функционал путь?
x=x+1
может взорвать неожиданный мозг. Функциональное программирование естественно, это не более чем чисто и удобные строго математические функции.
map
шаг 3 вместо мутирующего цикла. Второй подход - это то, что я бы рассмотрел, только если в стандартной библиотеке нет функции разбиения (в этом случае ее следует сравнить с императивным решением, которое также не используетsplit
).