関数型プログラミングはまったく違うのですか、それとも実際にはもっと難しいのですか?
プログラミングをまったく学んだことがなく、関数型プログラミングを教えられた人のことを言ってください。vsプログラミングをまったく学んだことがなく、命令型プログラミングを教えられた人。彼はどちらが厳しいでしょうか?または同じ?
私の質問:今の問題は入力をキャメルケースにすることだと言って、
そのようにqwe_asd_zxc_rty_fgh_vbn
なるqweAsdZxcRtyFghVbn
手順は次のとおりです。
- に沿って分割する
_
- 最初の項目をスキップして配列をループします
- エントリごとに最初の文字を大文字にします
- 結果を結合する
機能的な方法は次のとおりです。
_
返品が見つからない場合input
input
最初に沿ってカットします_
(取得するqwe
およびasd_zxc_rty_gfh_cvb
)- の最初の文字を大文字にし、
head
それを連結しますf(tail)
あなたが持っている場合は[OK]を機能的なバックグラウンドをと手続きプログラミングにおける豊富な経験を持って、私はお願いしたいと思います:それは、手続きの方法を見つけ出すにお時間がかかりますか、それは機能的な方法を把握するためにあなたのために長い時間がかかりますか?
あなたが持っている場合は、手続き-背景をが、機能、プログラミングで長年の経験を持って、私は同じ質問をしたいと思います:それは、手続きの方法を見つけ出すにお時間がかかりますか、それは、機能を把握するために、あなたのために時間がかかります仕方?
x=x+1
、予期しない脳を爆破できます。関数型プログラミングは自然であり、純粋で便利な厳密な数学関数にすぎません。
map
手順3で変更ループの代わりに使用する場合、「手順」は完全に機能しているように見えます。2番目のアプローチは、標準ライブラリに分割関数がない場合にのみ検討するものです(この場合、これも使用しない命令型ソリューションと比較する必要がありますsplit
)。