本記事では、Rust(ラスト)の勉強におすすめの参考書を紹介しています。
気になった参考書があれば、購入する前にAmazonの無料試し読みで内容を確認することをおすすめします。
表紙がイラストをたくさん使っているから、内容も初心者向けだろうと思い購入してみたら、図解での説明が少なく文字で埋め尽くされている参考書だった。。なんてこともありますので。
Amazon Kindle Unlimited
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
変数名/関数名にもう悩まない!
- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる
実践Rustプログラミング入門
出版社 | 秀和システム |
著者 | 初田直也 / 山口聖弘 / 吉川哲史 |
発売日 | 2020/9/1 |
- プログラミング言語 Rust
- 環境構築
- Rustの基本
- プログラムを作成する
- Webアプリケーションの開発
- WebAssembly
- GUIアプリケーション
- 組み込みシステム
- 開発ツール
- プロダクトをリリースする
- いろいろなRustの発展的Tips
中級者にとっては、基礎は勿論のこと、具体的な開発方法までステップバイステップで書かれてある本です。こういった本は基本ないから非常にありがたい。
引用元:Amazon
私はプログラミング歴1年ちょいでC++、C#、Pythonあたりがかける程度のレベルです。参考になれば。
現在のRustがチャレンジしていることに対し、手を動かして試すための手順が記述されている。
引用元:Amazon
CLI、Web、組み込みまで、幅広く試してみることができる。
この本一冊で、すでに2週間近く遊んでいる。やってみると、更に試したいことが増えていく。
文法の解説は要点を押さえてある。本家のドキュメントを見る前にさっと押さえておくと良い感じ。
手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた
出版社 | ソシム |
著者 | クジラ飛行机 |
発売日 | 2022/1/20 |
- PythonからRustへ準備体操
- Rustで簡単ツール作成編
- 所有権システムとデータ型について
- メソッド・ジェネリクス・トレイトについて
- 画像/音声/ネットワーク
- メモリ管理と他言語連携
分厚いですが非常に丁寧に解説されており、一番やさしく理解しやすいRustの書籍です。
引用元:Amazon
Rustの書籍はC/C++経験者向けに解説したものが殆どですが、Pythonに限らずC#やJavaやGoなどガベージコレクションによるメモリ自動解放に慣れてしまっているプログラマが、実際に手を動かしながら本書を読み進めることで、難解と言われるRustを一通り習得できると思います。
例えば、最初の関門である所有権システムの説明でも、簡単にいうとどういうこと?から始まって端的に的を得ており、どの書籍よりも分かり易く、他の書籍を読んで理解不能と諦めてしまっている方にもお勧めです。
プログラミングの専門家ではありませんので詳しいことはわかりませんが、ボケ防止と技術のトレンドを知るために購入しました。
引用元:Amazon
まだ途中までしか読んでいませんが、この手の本のサンプルコードは環境の依存関係によって動作しなかったり、コード自体が記述ミスでエラーが出たりするのですが、そういったことはなくVSCodeを使って円滑に確認ができています。複数のことをいっぺんに説明しようとせず、「これは後で説明するからとりあえずそういうものだと思ってください」と言った説明の仕方もかえって焦点が絞れてよいと感じました。
Webアプリ開発で学ぶ Rust言語入門
出版社 | 秀和システム |
著者 | 佐藤昭文 |
発売日 | 2022/10/5 |
- RustとWeb開発
- Rust基礎
- axumを使ってhttpリクエストを処理する
- sqlxを使ってCRUDを実装する
- Todoアプリの体裁を整える
- Todoにラベルをつける
初心者の方がこれを読んでなんとか出来るかは疑問です。
引用元:Amazon
いわゆる、「ちゃんとした」入門書です。
そういう意味で、Web開発経験がある人がRustを学ぶ際に手に取ると良い本です。
ほとんど最速でRustを使う為の最小限セットを学ぶことができます。
5000時間程度のプログラミング言語経験をもつ人が、効率的に Rust 言語入門して、Rust 言語による Web アプリ開発入門を済ませた状態になるための本。
引用元:Amazon
ストイックな章立て・内容となっており、読み進めるのは骨が折れる。一方で Web 開発入門済みになるための必要な様々が詰め込まれた逸品であり、プロ向けの入門書籍となっている。
プログラミングRust 第2版
出版社 | オライリージャパン |
著者 | Jim Blandy / Jason Orendorff |
発売日 | 2022/1/19 |
ページ数 | 680ページ |
- システムプログラマにもっといいものを
- Rustツアー
- 基本的な型
- 所有権と移動
- 参照
- 式
- エラー処理
- クレートとモジュール
- 構造体
- 列挙型とパターン
- トレイトとジェネリクス
- 演算子オーバーロード
- ユーティリティトレイト
- クロージャ
- イテレータ
- コレクション
- 文字列とテキスト
- 入出力
- 並列性
- 非同期プログラミング
- マクロ
- unsafeなコード
- 外部言語関数
この書籍の素晴らしい点は、
コア機能・ライブラリで出てくる表現・機能だけど、
詳細は良くわからない、英語で頑張って調べるほどでもない、なのでなんとなく使っている
というものが詳細に説明されていることです。こうした表現・機能がなぜRustにあるのか、
引用元:Amazon
いつ、どのように使うべきかまで記載されているので、
より深くRustを理解し、活用の幅を広げてくれる書籍になると思います。
TRPLとこの書籍は目を通すべきだと思います。
引用元:Amazon
コンセプトから理解するRust
出版社 | 技術評論社 |
著者 | 原 旅人 |
発売日 | 2022/2/7 |
ページ数 | 556ページ |
- Rustを学ぶにあたって
- Rustをはじめよう
- 所有権とライフタイム
- Rustにおける値の型
- Rustの抽象化プログラミング
- ファイルやソケットの入出力
- Rustの関数型プログラミング向けの機能
- Rustによるスレッド・非同期プログラミング
- C言語のライブラリのRustからの利用
Rustは独特の言語仕様や方言が多く、学習コストが高いと言われていますが、本書では、コンセプトから理解する、つまり、何故そういう言語仕様なのか?を可能な限り解説しており、ひとつひとつ納得しながら進めることができます。
引用元:Amazon
言い換えると、独特の言語仕様に頭が抵抗して拒絶反応を起こすことなく、きちんと理解して覚えやすくなっています。また、コンセプトから理解していれば応用がきいて、Rustの良さを活かした優れたコードを書けるようになると思います。
Rustプログラミング完全ガイド 他言語との比較で違いが分かる!
出版社 | インプレス |
著者 | Carlo Milanesi / 吉川 邦夫 |
発売日 | 2022/9/28 |
- Rustを始めよう
- 数値演算などの基本を把握しよう
- オブジェクトに名前を付ける
- 実行の流れを制御する
- データシーケンスを使う
- 基本のデータ型を使う
- 列挙と照合
- 混成的なデータ構造を使う
- 関数を定義する
- ジェネリックな関数や型を定義する
- メモリを割り当てる
- データの実装
- クロージャを定義する
- 変更可能な文字列を使う
- 範囲とスライス
- イテレータを使う
- 入出力とエラー処理
- データのカプセル化[メソッドとモジュール]
- トレイトを使う
- オブジェクト指向プログラミング
- 標準ライブラリのコレクション
- 所有権、移動、コピー
- 借用とライフタイム
- さらにライフタイムについて
「他言語との比較」とタイトルにあるように、
既に他言語を理解している人向けの本です。厳密には、C、C++との比較になります。
理由として、RustはC、C++の後継言語を目指して開発されているからです。Cに限らずとも、他の言語を理解している人向けの本です。
これを入門書にすると結局よくわからないまま終わる可能性があります。ある程度開発言語を理解しており、新たにRustを習得したい人にはオススメです。
引用元:Amazon
正統派Rustバイブル本です。一からガッツリ勉強したい方には、お勧めです。Rust2021に対応しており、最新のRust仕様を正確に勉強できます。
最初から読み飛ばさず、理解できるまで何度も読み返すことができる根気のある方向けです。本書が難しいと感じた方は、他のRust入門書を読まれて再度本書を読み返すと理解が深まると思います。
引用元:Amazon
また、何か具体的な開発ノウハウが書いてる訳ではなく、Rustでどんなものが作れるか知りたい方、もしくは手っ取り早く何か作りたい方には向いてません。