ドリルは、特定の動きを習得するためにスポーツで使用されます。バスケットボールでは、プレイヤーはフリースロー、3ポインター、ドリブルでドリルします。プログラミングでは、ドリルは、特定の言語機能、API、またはイディオムのスキルを開発するための意図的な実践に従事する方法を提供します。
スクリメージは、ドリルに組み込まれたスキルを統合し、チームワークを開発するために、ゲームの条件と複雑さを模倣するためにスポーツで使用されます。ドリルは、Ruby Koans、Rubyクイズ、オープンソースプロジェクトの作業など、より複雑なスクリメージプラクティスを補完します。私たちが日本の表情を使用する場合、ドリルは「kata」のよりシンプルな前駆体である「kihon」とも考えることができます。ドリルには完全なプロジェクトの複雑さがありません。単独で、または友達と一緒に演奏することができます。
Ruby Drillの課題は、特定の方法に焦点を当てています。回答は通常、単一の行で構成されています。あなたの目的は、外部のドキュメントを参照せずに、ドリルを簡単かつ喜びで完了することです。最初は、この種の練習が簡単でも楽しいこともないと思うでしょう。コードオン。これらの方法の知識が自動になるまで、数日間練習します。そうすることで、言語の構文よりも高レベルで高価値の複雑さに集中するために心を解放することで、日々のプログラミングがより楽しくなります。
$ gem install ruby_drills
$ ruby_drills
ドリルはコマンドラインで実行されます。 REPLを使用してドリルで質問に答えます。このプラクティスには、言語機能やアルゴリズムを試すための有用な手法であり、TDDを補完するための有用な手法であるREPLで開発する準備をすることの利点があります。
メニューから利用可能なドリルを選択することから始めます。アレイと弦のドリルは現在最もコンテンツを持っているので、それらのいずれかから始めてください!
Enumerable#zipメソッドのドリルセッションは、次のもので構成されている場合があります。
We have two arrays:
a: [4, 5, 6]
b: [7, 8, 9]
Use a method from the Enumerable mixin that will take one element from
a new array and merge the corresponding elements from a and b to yield
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]:
>> c = [1,2,3]
=> [1, 2, 3]
not yet...
>> c.zip(a, b)
=> [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
!!! WIN !!!
How does your answer compare to the reference solution?
[1,2,3].zip(@a, @b)
Press any key to continue:
ルビードリルについての質問?練習方法についてのアイデア? Googleグループに向かいます。
Ruby Drillsと対話すると、テストされたMindsがホストするリモートドリルコレクターAPIに回答が保存されています。このデータには個人を特定できる情報は含まれていません。現時点では、個々のユーザープロファイルではなく、全体的な練習パターンや統計に関心があります。アクティビティデータは次のように見えます:
{
"timestamp" : "May 5, 2013 12:03:51 AM CST",
"result" : "pass",
"input" : "@numbers.partition{|x | x.even? }",
"sessionId" : "2217-47e8-b80a-68b81c980c32",
"drill" : "PartitionDrill",
"type" : "attempt",
"reference" : "@numbers.partition {|x| x.even? }"
}
次のような質問に興味があります。
このデータは、Ruby Drills Experienceを進化させるのに役立ちます。これはまた、よりパーソナライズされた体験の基礎を形成し、進捗状況を確認し、練習セッションを他の人と比較することができます。収集されたデータを分析し、結果をコミュニティと共有するときに、これについてさらに詳しく説明します。
最終的には、Rubyおよびその他のプログラミング言語でのドリルと練習が、より複雑なプログラミングの課題を解決するのに役立つかどうかを確認したいと思います。現在、研究者がこの質問に科学的に答えるのを助けるデータはほとんどありません。うまくいけば、Rubyドリルで収集されたデータがこのパズルの一部を提供できることを願っています。
各ドリルは4つの方法で構成されています。
setup : @hintsを含むドリルで使用されるインスタンス変数を初期化します。これは、ユーザーを回答に導くことができる一連のヒントです。
show :ドリルを説明する文字列を置きます。
reference :文字列形式の有効なRubyコードとして参照ソリューションを提供します。これは、ユーザーの入力を検証するかどうかを判断するために評価されます。
valid?(input) :trueまたはfalseを返す検証関数。参照ソリューションに一致するユーザーの入力が他の制約を満たしているかどうかを確認するために使用されます。
新しいドリルを作成することで、簡単に参加できます。 GitHubの問題リストを確認して、やるべきことを見つけてください。
Githubを初めて使用する場合:
git checkout -b my-new-feature )git commit -am 'Add some feature' )git push origin my-new-feature )Ruby Drillを可能にしてくれた貢献者とこれらの優れた個人に感謝します。
Ruby Drillsは、バージョン2.0のApacheライセンスに基づいてライセンスされています。詳細については、囲まれたlicense.txtおよびnocation.txtを参照してください。