記事の内容
この記事ではRustに関する書籍と動画を紹介します。
Rustの書籍はまだまだ少ないのですが、わかりやすい書籍と動画を紹介したいと思います。
Udemyのここがオススメ
- 一ヶ月間は自由に返金することができるので、お試しで講座を受けられる。
- 情報が古くなった場合には、著者が教材をアップデートしてくれることが多いので、初心者に優しい。
目次
- 1 中級者向け
- 1.1 基礎から学ぶ 組込みRust
- 1.2 コンセプトから理解するRust
- 1.3 詳解Rustプログラミング
- 1.4 プログラミング言語Rust入門
- 1.5 実践Rust入門 [言語仕様から開発手法まで]
- 1.6 実践Rustプログラミング入門
- 1.7 並行プログラミング入門 ―Rust、C、アセンブリによる実装からのアプローチ
- 1.8 RustではじめるOpenGL
- 1.9 Rustで始めるTCP自作入門
- 1.10 Rust+ECSでゲーム開発 -ゲームエンジンAmethystのススメ-
- 1.11 Rustで始めるネットワークプログラミング
- 1.12 プログラミングRust 第2版
- 1.13 手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた
- 1.14 Rustで始める自作組込みOS入門Rustで始める自作組込みOS入門
- 1.15 Rust on bare-metal Raspberry Pi Vol.1+2+3
- 1.16 The Rust Programming Language
- 1.17 Rustプログラミング入門
- 1.18 Ultimate Rust Crash Course
- 1.19 Learn Rust by Building Real Applications
中級者向け
基礎から学ぶ 組込みRust
Rustで組込み開発をしたい人に向けた本です。
Rustの組込み開発に必要な知識を身に付けながら、マイコン「Wio Terminal」を動かしていきます。
コンセプトから理解するRust
Rustの言語的な仕組みを説明している本です。
何かアプリを作成するわけではありません。
Rust言語の仕様を深くしりたい人にオススメの本です。
詳解Rustプログラミング
さまざまなCUIアプリケーションを通して、システム言語としてのRustを説明していきます。
Rustでシステムプログラミングを学びたい人にオススメの本です。
プログラミング言語Rust入門
C/C++の知識を前提とせずに順序だてた構成で説明してくれます。
非常に読みやすい本です。
ただし、あくまでもRustに対する入門書であるので、プログラミングが初めての人には難しいです。
実践Rust入門 [言語仕様から開発手法まで]
Rust概要の説明 → 簡単なプログラムの作成 → 詳細な言語仕様の説明という順番でRustを学んでいきます。
図もかなり入っているので、かなりわかりやすいです。
実践Rustプログラミング入門
この本の良さはサンプルがいい所です。
抽象的で簡単なものを作って基本を理解しながら、どんどん機能を充実させて複雑なアプリにしあげていく流れになっています。
CLI、Web、組み込みまで、幅広く試してみることができる一冊です。
並行プログラミング入門 ―Rust、C、アセンブリによる実装からのアプローチ
本書はRustとアセンブリ、そして一部Cを用い、CPUのアトミック命令、グリーンスレッド、アクターモデル、π計算、ソフトウェア・トランザクショナルメモリ、async/awaitなど、並行プログラミングに関する理論的な背景から実装までをカバー。
さらに、アセンブリ実装の理解を深めるため、AArch64とx86-64アーキテクチャの説明も付録として収録。
RustではじめるOpenGL
プログラミング言語Rustを使ってOpenGLプログラミングを行う入門書です。
最も基本的な三角形の描画から実装をはじめ、少しずつソースコードを発展させていきます。
照明を考慮しながら立体的なオブジェクトにテクスチャを貼り、GLSLを使って画面にエフェクトをかけるところまでを解説します。
Rustで始めるTCP自作入門
プログラミング言語であるRustを用いて、自作TCP実装,その名も「ToyTCP」を作成します。
完全な実装を作るのはハードルが高いので、なるべく機能をシンプルにしつつ、しっかりと動くものを目指します。
実際にRustでTCPを実装することで、その仕組みがどのようにして実現されているのか理解することができます。
Rust+ECSでゲーム開発 -ゲームエンジンAmethystのススメ-
この本はRust初学者に向けて、ゲームエンジンAmethystを解説します。
Amethystの紹介から始まり、Amethystで実装する上での基礎を解説し、最後にブロック崩しの実装を紹介します。
なお、OS Xの環境下においては一部描画に不具合が発生する場合がありますので、可能であればWindowsやLinuxなどの環境での開発を推奨します。
ただし、対象としているAmethystが開発停止してしまっていることだけが残念なポイントです。
Rustで始めるネットワークプログラミング
Rustで何か作ってみたい人にオススメの本です。
ネットワークプログラミングに興味がある人は、是非、この本を手にとってみて下さい。
プログラミングRust 第2版
本書はMozillaで実際にRustを使ってFirefoxを開発している著者らによる、言語の概要と用途について解説する書籍で、Rustのほとんどの機能を詳細にカバーしています。
Rustのメジャーバージョンアップにより非同期処理が可能となったことに対応し、第2版では新たに非同期処理の章を設け、この機能を詳細に解説しています。
手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた
クジラ飛行机さんの著書です。
Rustを使って様々なアプリを作成していきます。
Rustで始める自作組込みOS入門Rustで始める自作組込みOS入門
本書は、組込みシステムやOSのような低レイヤーシステムの開発経験がないプログラマーが、自作OSをはじめるため解説書です。
C言語を用いることが多い低レイヤーシステム開発について、本書ではRustを使います。
Rust on bare-metal Raspberry Pi Vol.1+2+3
RustでRaspberry Pi3/4をOSなしで制御する本です。
過去のシリーズ3冊をあわせて1冊にして、Raspberry Pi3と4両方に対応したバージョンです。内容はほぼ同じです。
Raspberry PiをOSやライブラリを用いずに起動し制御する、いわゆるベアメタルをRustにより実装する解説書です。
The Rust Programming Language
内容的には素晴らしいです。
ただ、日本語版は翻訳がいけてないので、原著を読む方がいいかもしれません。
また、電子版でもいい人は、このリンク先でもいいかも?
Rustプログラミング入門
日本語で提供されているRustの動画では、一番、人気があります。
システムプログラミングを学びたい人にオススメです。
Ultimate Rust Crash Course
英語で提供されている人気のコースです。
Rustの基礎をテンポよく学んでいくことができます。
要点を簡潔に押さえている講義です^^
Learn Rust by Building Real Applications
英語で提供されている人気のコースです。
コースの最後には、自分でHTTPサーバーを作成します。