実用的な問題に対する命令対機能的解決策の素晴らしい例
-
11-12-2019 - |
質問
私は数週間後に始まるコースのためのいくつかのレッスン資料を書いています。私は学生が学ぶための新しい言語としてClojureを選びました。1つの章を捧げて、命令コードを機能コードにリファクタリングしたいと思います。このために私はそれによって命令的および機能的な解決策を比較する方法を示すことができる実際的な問題のセットを持っています。好ましくは、プロジェクトeulerのように、数学を強調していないが、平均的なプログラマーが定期的に対処する必要があるという問題である。 誰がこれにいくつかの良い資料を持っていますか?
部分的な回答:そのようなソースの1つは http://langref.org/ です。もっと欲しい!
解決
実際には実用的ではありません(クラスに届かないほど短い実際の問題は少し退屈になる傾向があるため)、人生のゲームをプログラミングすることは、新しい言語を学ぶための私のお気に入りの方法の1つです。ボーナスとして、機能的アプローチは必須の解決策よりもかなり異なります(そしてよりエレガント)。さらに、データのシーケンスを操作している(言葉の順序、または何かのシーケンスを分析する)任意の種類の問題が、クールな例になります。
他のヒント
それは古い栗ですが、さまざまな方法で階乗機能を実装するだけです。もう1つの一般的な例は素数発生器であり、これは少し大きいことがあります。
私はこれらの両方が数学の例であることを認識していますが、基本的な知識のみを必要とします。
所属していません StackOverflow