chicog.me

2022年4月17日
2022年4月18日

Rustにちょっと触れてみた

Rustとは何かに対しての記事は複数あると思いますので早速構築から開始していきます

MacにRustのインストール方法を調査

いつも通りhomebrewで入れようかなと思ったのですが、調べたところ下記のメリット/デメリットがあることがわかりました。

メリット

  • brew upgrade でパッケージアップデートをした際に、併せてRustもアップデートされる
  • 使い慣れているので便利

デメリット

  • rustupを利用することを前提としたドキュメントが多いので、都度読み替えを行う必要がある。
  • 公式のlinterである「clippy」がhomebrewにない(探せてないだけだったらすいません。)
  • VSCodeで、Rustプラグインを入れると結局rustupを利用することになる。

Rustをインストール

前述したメリット/デメリットからhomebrewではなく、rustupでインストールすることにしました。

Rust本体

Rust をインストール

# 当記事作成時点
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# 下記実行を促されるので実行
source $HOME/.cargo/env

#それぞれバージョン確認
rustc -V
rustup -V
cargo -V

rust-analyzer

従来のrlsよりもレイテンシが小さいLanguage Serverとのことなので、こちらを採用しました。

# 下記ツール郡がない場合は、インストールが必要
rustup component add rls rust-analysis rust-src

VS Codeで下記プラグインを追加

rust-analyzer - Visual Studio Marketplace

拡張機能の設定で rust-client.engine と検索し、でてきた項目を

rls から rust-analyzer に変更

(設定値の注釈にフルサポートでない旨の説明があるので、rlsのままでもOK)

rlsとrust-analyzerで比べると後者の方がコード補完がより丁寧だと思います。

cargo-edit

cargo add update rm のコマンドが利用可能になるので、あるとクレート管理が楽になる

cargo install cargo-edit

CodeLLDB

デバッガー

CodeLLDB - Visual Studio Marketplace

Rust触ってみて

触って間もないので、今後意見は変わるかもしれませんが、現時点では以下の様に思いました。

書くのが楽しい

これはまあRustに限った話ではないのですが、特別楽しく感じました。

エラーメッセージも分かりやすいですし、コンパイルも早いのでさくっと試せるところもGoodです。

これはGoを学習した時にも感じたことなのですが、runしてから結果が出るまでの速度が早いのは非常に重要だなと感じます。

型指定はしたほうが好み

強力な型推論はありますが、型指定があったりなかったりだとなんとなくチグハグなので個人的には型指定をしていきたいと思いました。