記事の内容
この記事ではRustに関する書籍を紹介します。
Rustの書籍はまだまだ少ないのですが、わかりやすい書籍を紹介したいと思います。
動画教材
Udemyのここがオススメ
- 一ヶ月間は自由に返金することができるので、お試しで講座を受けられる。
- 情報が古くなった場合には、著者が教材をアップデートしてくれることが多いので、初心者に優しい。
基礎から学ぶRustプログラミング入門
▼ 興味がある方は、画像をクリック
このコースの対象受講者:
- Rustに興味があるが一歩踏み出せていない方
- Rustに挑戦してみたものの、難しく挫折してしまった方
- モダンな言語を学んで周りのエンジニアと差別化をはかりたい方
- 動画を見ながら手を動かして学ぶのが好きな方
Rustプログラミング入門 (最高峰・最難解言語)
▼ 興味がある方は、画像をクリック
本コースでは、コンピュータ言語の最高峰・最難関言語であるRustの言語仕様について学習します。
中級者向け
基礎から学ぶ 組込みRust
Rustで組込み開発をしたい人に向けた本です。
Rustの組込み開発に必要な知識を身に付けながら、マイコン「Wio Terminal」を動かしていきます。
コンセプトから理解するRust
Rustの言語的な仕組みを説明している本です。
何かアプリを作成するわけではありません。
Rust言語の仕様を深くしりたい人にオススメの本です。
Webアプリ開発で学ぶ Rust言語入門
本書はWeb開発に特化した「Rust×Web開発」の入門書です。
Rustの基礎文法からWebアプリの開発までを網羅しています。チュートリアル形式なので段階的に学習が進められます。
また、解説するサンプルは、Web開発ならよく知っている題材を教材としました。
そのため、RustによるWeb開発の理解を深めることができます。
パーフェクトRust
そこで本書籍は仕事で利用するエンジニアに向け,Rustの言語仕様からエラー処理/パッケージ管理/メモリ管理といったRust独特の解説、各種開発方法まで現場で必用となる知識をまとめた「パーフェクト」シリーズの1冊。
詳解Rustプログラミング
さまざまなCUIアプリケーションを通して、システム言語としてのRustを説明していきます。
Rustでシステムプログラミングを学びたい人にオススメの本です。
プログラミング言語Rust入門
C/C++の知識を前提とせずに順序だてた構成で説明してくれます。
非常に読みやすい本です。
ただし、あくまでもRustに対する入門書であるので、プログラミングが初めての人には難しいです。
実践Rust入門 [言語仕様から開発手法まで]
Rust概要の説明 → 簡単なプログラムの作成 → 詳細な言語仕様の説明という順番でRustを学んでいきます。
図もかなり入っているので、かなりわかりやすいです。
実践Rustプログラミング入門
この本の良さはサンプルがいい所です。
抽象的で簡単なものを作って基本を理解しながら、どんどん機能を充実させて複雑なアプリにしあげていく流れになっています。
CLI、Web、組み込みまで、幅広く試してみることができる一冊です。
Rustプログラミング完全ガイド 他言語との比較で違いが分かる!
Rustは、C/C++の後継と位置づけられているプログラミング言語で、
性能やメモリ安全性を重視しています。
本書では、まず最小級のサンプルから説明を開始し、その後は、さまざまな構文や特徴的な振る舞いについて多数のテーマを解説していきます。
並行プログラミング入門 ―Rust、C、アセンブリによる実装からのアプローチ
本書はRustとアセンブリ、そして一部Cを用い、CPUのアトミック命令、グリーンスレッド、アクターモデル、π計算、ソフトウェア・トランザクショナルメモリ、async/awaitなど、並行プログラミングに関する理論的な背景から実装までをカバー。
さらに、アセンブリ実装の理解を深めるため、AArch64とx86-64アーキテクチャの説明も付録として収録。
RustではじめるOpenGL
プログラミング言語Rustを使ってOpenGLプログラミングを行う入門書です。
最も基本的な三角形の描画から実装をはじめ、少しずつソースコードを発展させていきます。
照明を考慮しながら立体的なオブジェクトにテクスチャを貼り、GLSLを使って画面にエフェクトをかけるところまでを解説します。
Rustで始めるTCP自作入門
プログラミング言語であるRustを用いて、自作TCP実装,その名も「ToyTCP」を作成します。
完全な実装を作るのはハードルが高いので、なるべく機能をシンプルにしつつ、しっかりと動くものを目指します。
実際にRustでTCPを実装することで、その仕組みがどのようにして実現されているのか理解することができます。
作って学ぶルーティングプロトコル RustでBGPを実装
インターネットを支えるルーティングプロトコルであるBGP(Border Gateway Protocol)をRFCからRustで実装する方法を解説します。
小さなプログラムから始め、Update Messageを交換しルーティングテーブルの更新まで、一歩ずつ実装・解説します。
RFCで定義されているプロトコルを一度自分の手で実装することで、BGPに限らず、その他のプロトコルについてもRFCから実装することを目指します。
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
内容的には素晴らしいです。
ただ、日本語版は翻訳がいけてないので、原著を読む方がいいかもしれません。
また、電子版でもいい人は、このリンク先でもいいかも?