rustlings の紹介
どうも、たくチャレ(@takuchalle)です。
Rust 2 Advent Calendar 2020の5日目が空いていたので、ちょうどrustlings
が一通り終わったということもあり書いてみました。他の記事と比べて内容は薄めです。
ツイッターを見てたらrustlings
というRust
に慣れるためのエクササイズがまとまったツールを知りました。(そのツイートはもう探せなかったですが…)
これはイテレーションやトレイトなどのテーマ毎にエクササイズが分かれていて、最初はビルドやテストが通らないようになっています。 それらを通るようにコードを修正して進めていきます。
簡単な使い方
インストール方法はREADMEに書いてあるので、その通りにインストールします。
Mac/Linux
の場合は以下のようにします。
curl -L https://git.io/rustlings | bash
# Or if you want it to be installed to a different path:
curl -L https://git.io/rustlings | bash -s mypath/
rustlings watch
コマンドを打つと順番にエクササイズがコンパイル・実行されていきます。
hint
と打つと英語ですが、ヒントが表示されます。
rustlings runt [test 名]
とすることでテストを個別に実行することもできます。例にerror_handling/result1.rs
をテストしたら以下のようになります。
感想
文法を網羅的に学ぶようなエクササイズではないので、それは別途学習する必要はありますが、
Rust
のコンパイルエラー文やテストと仲良くなれたかなと思います。
ただ、公式に正解がないので意図した解答になっているか不安にはなります。特にコンパイルを通すようなエクササイズだと問題の意図を汲まずにコンパイルだけを通すことは可能なので、意図していない解答になってるかもしれません。参考になるかわかりませんが、文末に私の解答のリンクを貼っておきました。
一覧を見てもらうとわかるのですが、イテレーション・トレイト・所有権・標準ライブラリ・clippy などRust
の機能を一通り(?)触れることができるので、学習の初期段階でやってみるのでは良いのではないでしょうか。
私の解答
私が解いた解答はこのリポジトリにコミットしてあります。 間違い等があればプルリクをお待ちしています。