流暢さ


Exercismの言語トラックの目標は、習熟度が低くても高い流暢さに到達できる方法を提供することです。

目指しているのは、その言語の構文、イディオム、標準ライブラリにおける流暢さです。

Language Huntersは、流暢さを次のように説明しています。

真夜中に顔に懐中電灯を当てられて叩き起こされたときでも、口をついて出てくる言葉のことです。

これは、楽さではなく度合いに関する_習熟度_という概念とは別のものです。

Language Huntersは習熟度を4つのレベルに分けています。

  1. 単純で具体的な考え - これだけでも、日常の簡単なやり取りをぎこちなくこなすには十分なことが多いです。「喉が渇いた」「いい音楽」「もう1つ」。
  2. 単純で完全な文 - 簡単な会話をして、その返事を理解する力です。
  3. 複雑な文 - 興味深い会話をしたり、物語を話したりできます。
  4. 複雑な考え - 社会や経済、政治といった複雑な話題について話し合えます。

あるレベルでできる力を持っていても、緊張した状況ではうまくできないことがあります。習熟度が高いからといって、自動的に流暢になるわけではありません。

これらは人間の言語の文脈で定義されたものですが、プログラミング言語にもよく当てはまります。

  1. 基本的な構文 - その言語の基本的なデータ構造や機能を使えること
  2. 単純なプログラム - 小さなプログラムを組み立てて、小さな問題を解けること
  3. 実践的なプログラム - その言語の広いエコシステムにあるツールやライブラリを使って、日常的な問題をプログラミング言語で解決できること
  4. 言語とエコシステムに関する深い知識 - あるものを使うだけでなく、新しいツールを生み出したり、言語を改善したり、エコシステムを発展させたりすることに貢献できるようになります

この枠組みの中で、Exercismが目指しているのは、習熟度レベル2で高い流暢さを実現することです。これは「Hello, World」と実用的な開発との間のギャップを埋めます。

この基本的なレベルで流暢になることで、より高く、より役に立つレベルの思考に集中できるようになります。また、その言語の既存のリソースやドキュメントを活用しやすい立場にもなれます。