Rust本 - 人気 / 新書 / 高評価 書籍一覧 | 技術書の本ダナ


Rust 人気本 ランキング

人気 1位
 
本書の内容
Rustは、C/C++の代わりとなる最新の爆速言語として注目されています。「とにかく実行速度が速い」「モダンな言語機能が一通り入っている」「OSからWebアプリケーションまで幅広く実装できる」「ツール群がとても充実している」「安全性が強力に担保されている」など、数多くの魅力があります。本書は、JavaやPythonなど他の言語に習熟しているエンジニアを対象に、Rustの独特な仕様と開発ノウハウをわかりやすく解説した入門書です。

※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。
 
内容サンプル
 
User Voice
現在のRustがチャレンジしていることに対し、手を動かして試すための手順が記述されている。
CLI、Web、組み込みまで、幅広く試してみることができる。
この本一冊で、すでに2週間近く遊んでいる。やってみると、更に試したいことが増えていく。
文法の解説は要点を押さえてある。本家のドキュメントを見る前にさっと押さえておくと良い感じ。
Twitterで知ったのと関数型の言語を触ってみたかったので購入しました。
内容に関してはプログラミングがそこそこ出来る人なら理解出来る内容であると思います。
ただ、プログラミング初心者がこの本から始めるのはおすすめできません。
普段はH/W系のオシゴトをしています。たまにCやPythonを使うのですが、Rustが大人気あると聞いたので
Cの代替として触ってみようとして本書を購入しました。

まず、この本は「プログラミング」の入門書ではないので、プログラミング入門者にはお勧めできません。

文法を説明するRustの基本という章までざっくり読んでみました。この章は100頁くらいで、この次の章は実践の章です。この本全体はだいたい500頁くらいです。(あれ基本ページ少なすぎ?)
ここまで読んだ感想で、「Rustの入門書」かと言われるとそれも怪しいのではないかと思っています。

文法の説明は非常にあっさりしており、他言語で同じような文法を知っているから
何となく動作は分かるものの詳しいことは特に書いてありません。
とりあえずRustの公式が提供しているチュートリアルを先にやろうかと思います。

実践書としては良い本なのかもしれませんが、入門とかつけるのはどうなのかなと思います。
とりあえずチュートリアルをこなした後に本書を最後まで読んだ段階で感想を書こうかと思います。
 
人気 2位
 
本書の内容
こちらの書籍は 2020/06/24 紙版の4刷に対応するため更新をおこないました。
(概要)
Rustは2015年に安定版がリリースされた新しい言語です。静的型付けと関数型言語などにみられる高度な抽象化のしくみを取り入れており、高品質で再利用性の高いプログラムを開発できます。さらに、ハードウェア資源についてC/C++と同等の効率の良い制御ができますが、決定的に違うのは、安全性をかなり重視しています。つまりRustは開発者の生産性を高めつつ、性能やハードウェア資源の効率を最大限に発揮するという、従来の言語では相反する要件を同時に満たす、数少ないプログラミング言語の1つなのです。本書はこの注目のプログラミング言語Rustの入門書です。この1冊でRustの言語仕様から開発現場で必要となる知識までを丁寧に解説しています。

(こんな方におすすめ)
・Rustをはじめてみたい方

(目次)
第1部基礎編
第1章Rustの特徴
1-1Rustの特徴
1-2最も愛されている言語
1-3Rustの起源
1-4なぜRustなのか?
1-5導入事例

第2章はじめてのRustプログラム
2-1インストール
2-2Hello Worldプログラム
2-3ソースコードエディタの導入
2-4RPN計算機プログラムとデバッガによる実行
2-5ツールチェインの補足情報

第3章クイックツアー
3-1プログラムの概要
3-2並列ソートに適したバイトニックソート
3-3第1段階:初歩的な実装
3-4第2段階:ジェネリクスでさまざまなデータ型に対応させる
3-5第3段階:クロージャでソート順をカスタマイズ
3-6最終形:並列ソートの実現
3-7仕上げ:ベンチマークプログラム

第4章プリミティブ型
4-1型の分類
4-2スカラ型
4-3プリミティブな複合型

第5章ユーザ定義型
5-1スタック領域とヒープ領域
5-2標準ライブラリの主な型
5-3新しい型の定義と型エイリアス
5-4型変換

第6章基本構文
6-1準備
6-2コメント
6-3うるう年と平年
6-4use宣言
6-5関数
6-6束縛とミュータビリティ
6-7演算子
6-8分岐
6-9繰り返し
6-10クロージャ
6-11アトリビュート
6-12モジュールとアイテムの可視性

第7章所有権システム
7-1所有権システムの利点
7-2所有権システムの概要
7-3値の所有者
7-4値のスコープ
7-5ムーブセマンティクス
7-6コピーセマンティクス
7-7借用:所有権を渡さずに値を貸し出す
7-8参照のライフタイムと借用規則
7-9ライフタイムの詳細:簡単なベクタの実装
7-10共同所有者を実現するポインタ:Rc型とArc型
7-11内側のミュータビリティ
7-12クロージャと所有権

第8章トレイトとポリモーフィズム
8-1トレイトの基本
8-2トレイトのジェネリクス
8-3静的ディスパッチと動的ディスパッチ
8-4存在impl Trait
8-5トレイトとアイテム
8-6標準ライブラリのトレイト利用例
8-7演算子のオーバーロード
8-8トレイトのテクニック

第2部実践編
第9章パーサを作る
9-1四則演算の処理系の作成
9-2字句解析
9-3構文解析
9-4抽象構文木の利用

第10章パッケージを作る
10-1コマンドラインツールの作成
10-2ドキュメントを書く
10-3テストの追加
10-4パッケージを公開するために
10-5自動テストを行う
10-6パッケージをリリースする

第11章Webアプリケーション、データベース接続
11-1RustとWebの現状
11-2WebアプリケーションフレームワークActix Web
11-3JSON APIサーバ
11-4Dieselを使ったデータベースの扱い
11-5マルチパート/CSVファイルの扱い
11-6CLIクライアントの作成

第12章FFI
12-1C FFIの基本
12-2Cのデータ型の扱い
12-3C APIの基本
 
内容サンプル
 
User Voice
決して本書が悪いのではなく、自分の求めるものとは合わなかった。

私としては、最初に言語についての簡単にでも説明があって、
その後に「では実際にプログラムを組んでみるとどうなるか」を
例示する構成が好きです。最初に例示が来て「今は理解しなくてもいいです。
後で説明しますから」という構成だと、結局その例示は理解できず、
言語の説明を読んだ後に再度読み直して「ああそういうことか」というのは、
ただ時間を無駄にしたような感覚になります。

もちろんそういう構成が好きな方には何の問題もないと思います。
最初の方で読み疲れてしまって、全部は読み通せてないので、
言語の解説部分についてはよく分かりません。
他のレビューにもあるが、Rustの入門に最初の一冊としてこれを選ぶと心が折れると思われる。共著にありがちだが、構成が良くない。

3章の「クイックツアー」が少し長すぎる。もっと後半にあるべきで最初の方にあるべきではない。「Rustはこういうことができるのか」という雰囲気を得るために最初に置いたのだと思うが、詳細に入りすぎて、本当に入門者はここを読み切る前にやめてしまう気がする。

経験者向けにはいいのかもしれないが、4章から「プリミティブ型」の説明に入り、ここから急に本当に入門者向けになってしまうのでので、全体を通してどうもバランスが良くない印象を受ける。

ただ、Rustの肝である、「所有権」「借用」「ライフタイム」は図入り解説なのでわかりやすい。これは「プログラミング言語Rust 公式ガイド」では文章だけで理解しにくい部分であった。ここだけでも本書を読む価値はある。
7章ぐらいまで読みました。

Rustを学ぶには公式サイトにあるThe Rust Programming Language(The Book)が推奨されています。この実践Rust入門はそれと同じぐらいよくかけている素晴らしい本です。すべてRustの学習者に勧めたい良い本です。The Bookと併読をおすすめします。

・図が詳細です
Rust独特の概念を説明するのにThe Bookでは文章で説明しています。「実践」では図で細かく概念を説明してあるのでこれが実によく理解できます。

・公式より詳細な説明
私はThe Bookの後半ぐらいまで読みました。「実践」はThe Bookより説明が細かく書かれているように感じました。一部の説明はThe Bookよりわかりやすいように感じたくらいです。

・日本語です
The Bookの最新版は英語です。英語が問題ない人には良いですが、苦手な人にはこの本が良いです。
 
人気 3位
 
本書の内容
Rustは、Firefoxの開発元であるMozillaが支援するオープンソースのプログラミング言語です。2017年末に公開されたFirefox のレンダリングエンジンの記述に使用され、その実行速度を2倍にしたことで有名になりました。オブジェクト指向と関数型の言語特徴を持ち、JavaやC#のようにVM(Virtual Machine)上の動作ではないため、既存のC言語のライブラリを直接扱える利点を持っています。またRustは、CやC++で発生しうる不正メモリアクセスに関する問題を,ある程度回避できるように設計されています。
 Rustはまだ新しい言語なので、本書の前半は実務に必要な詳しい文法を解説しています。文法や具体例などは、簡単なRustのコードを動かして確認しながら説明を進めています。後半は、具体的な利用法(Web API呼び出し、データベースアクセスなど)を中心に説明し、すでに他の言語(C++やC#、Javaなど)で同様にプログラミングをしたことのある読者を対象としています。
 
内容サンプル
 
User Voice
在宅ワークでめちゃくちゃにヒマなので買いました。
大学時代にC言語を少しだけ触って以来、Javaばかり扱っていた私ですが、今のところは問題なく楽しく読めています。
WebAssemblyも扱えるようになるため頑張りますね。
みなさん応援してください。
Rustの文法等の全体を丁寧に説明され、最初に読まれる入門書としてとても良いと思います。
多分、オフィシャルのブックよりも日本語がこなれ、著者の考え方も伝わってきます。
後半のWebとDatabaseの部分は、一転して省略された部分が目立ち、ダウンロードした
ソースファイルを参考にする必要がありました。第2版で丁寧な説明になることを望みます。
C/C++の知識を前提とせず、順序だてた構成で説明が丁寧な為、とても読みやすく分かり易いです。また、非同期async/await構文の説明など、最新情報が良く纏まっています。Rustを好きにさせてくれる1冊です。
ただし、プログラミング初心者向けではありません。
 
人気 4位
発売日 2018/08/10
(4.6)
Amazon 5,280円
 
本書の内容
RustはMozilla財団の支援下で開発が進められており、Mozillaの次世代ブラウザエンジンの実装にも用いられているシステムプログラミング用言語です。
C/C++並みのパフォーマンスと低レベルなメモリ操作機能、型システムを用いたメモリとスレッドの安全性を両立し、さらに安全な並列性も実現した、いま最も注目されている言語です。
このRustをテーマにした本書は、Rust特有の所有権、移動、借用といった概念だけでなく、生産性と柔軟性を向上させるジェネリックコード、クロージャ、イテレータ、コレクションといった高度な機能についても詳しい説明を加えており、言語仕様から高度なプログラミング技術までを網羅した決定版です。
 
内容サンプル
 
User Voice
C++書ける人にはいい本だと思うのだが、これは2015年版のRustについて書かれているので様相が現状とそれなりに違う。
英語読める人は公式ドキュメントRust2018Editionあたりを当たるほうがいいと思う。
RustはCやC++を置き換える可能性のある言語であり、取っ掛かりはCより難しいが、CやC++で安全なプログラムを組むのに必要な経験知を不要にして、最初から完全に安全でCやC++と同等の実行ファイルを作成することができる言語である。
最近ではMicrosoftもRustの有効性に言及している。(https://www.zdnet.com/article/microsoft-to-explore-using-rust/)
ネット上にある主に英語の情報だけで完璧にRustを理解できるのであれば、本書には特に目新しいことは載っていないかもしれない。
ただ、自分としてはなんとなく意味はわかるがぼんやりしているところが、本書の読みやすい日本語と圧倒的な説明量で霧が晴れるようにはっきりと理解できた。
最近は他にもRustの本も出版されてきているが、詳細な記述としては本書の価値は損なわれるものではないと思われる。

それにしてもRustは難しい……。が、パズルのように組み合わせることに成功すれば正解かどうかはすぐに判明するので、適当に作ってテストで苦しむより、プログラミングで苦しみたい人向け。

(以下、トレイト境界についての私見を削除)
libgit2へのFFIを実装するサブセクションがある。
Rustの安全性を理解する良い手がかりとなった。
詳細に説明もあり、入門にも適すると思われた。
 
人気 5位
 
本書の内容
 
内容サンプル
 
User Voice
 
人気 6位
 
本書の内容
「Rustプログラミング言語は、エンパワーメント(empowerment)を根本原理としています。 どんな種類のコードを現在書いているにせよ、Rustは幅広い領域で以前よりも遠くへ到達し、自信を持ってプログラムを組む力を与え(empower)ます。」(本書「まえがき」より)
システムレベルのプログラムからWebサーバーやコマンドラインアプリなど、さまざまな分野に利用できるプログラミング言語として設計されているRust。本書はRustコミュニティ公式のガイドブックである。
基本的な文法事項から、Rustの中心的な機能である「所有権」の詳細、エラー処理や自動テストの方法、さらにはジェネリック型、スマートポインタ、関数型言語、並行プログラミング、オブジェクト指向の機能など、Rustプログラミングの肝となる要素のすべてを丁寧に解説する。
本書は、Rustの基本を理解する概念の章、Rustの機能を適用した小さなプログラムを構築するプロジェクトの章という2つで構成されている。それぞれを理解していけば、Rustを利用したプログラム開発にすぐに取りかかれるようになっている。
 
内容サンプル
 
User Voice
内容は★5。

しかしながら、Kindle版では、本文のフォントサイズが小さく、ソースコードのフォントサイズが大きいため、非常に読みづらい。

原著
https://www.amazon.co.jp/dp/B071YKRV8Q/ref=cm_sw_r_tw_dp_U_x_.I4rDb1R627X3
は逆(本文大、ソースコード小)になっているため、おそらく本書はフォントの指定が逆になっているのではないかと思われる。修正を希望する。

Rustの入門として日本語書籍では他に「実践Rust入門」
https://www.amazon.co.jp/dp/B07QVQ7RDG/ref=cm_sw_r_tw_dp_U_x_5O4rDbBX7CZJ9
があるが、最初に読むのは絶対に本書「プログラミング言語Rust 公式ガイド」の方が良い。

本書は説明の順序が新しい言語を学ぶセオリー通りになっているため、最初の一冊としてわかりやすい。
こういう内容って営業妨害になっちゃったりするのかな...内容は https://doc.rust-jp.rs/book/second-edition/ のものと全く同一です。私は諸事情につきダウンロードして勉強したかった(そうだとしてもPDF版もあった模様...まぁKindle便利なので良しとします)ために購入しましたが、別に安定したインターネット環境がある方はわざわざ購入する必要はありません。紙の本として持っておきたいという方は紙の方を買ってもいいんじゃないかと思います。内容は良いですので☆4です。技術書の洋書の和訳があまり良くないのは普通のことです、というか私が以前出会ったものよりは大分マシでした
直訳、誤訳、分かりにくい訳が多い。レイアウト表示の面でも違和感がある。公式であるTRPLの内容と殆ど同じであるということもあり、4000円の価値はない。
 
人気 7位
 
本書の内容
※このKindle本はプリント・レプリカ形式で、Kindle Paperwhiteなどの電子書籍リーダーおよびKindle Cloud Readerではご利用いただけません。Fireなどの大きいディスプレイを備えたタブレット端末や、Kindle無料アプリ (Kindle for iOS、Kindle for Android、Kindle for PC、Kindle for Mac) でのみご利用可能です。また、文字列のハイライト、検索、辞書の参照、引用については、一部機能しない場合があります。文字だけを拡大することはできません。
※プリント・レプリカ形式は見開き表示ができません。
※この電子書籍は紙版書籍のページデザインで制作した固定レイアウトです。

安全なプログラミング言語
 通常のプログラミング言語では、変数やメモリの保護はプログラマーの責任で行います。この際の配慮不足があったとしても、コンパイルして実行できるプログラムはできてしまいます。その結果は、バグやセキュリティホールにつながるので、プログラマーも強い責任感でのプログラミングが必要です。本書で解説するRust言語は、後発なだけいろいろ考えられており、構文そのものが配慮不足になりにくいしくみであり、また不良なソースコードはコンパイルできません。つまり安全なプログラムを記述しなければコンパイルできないというユニークな特長を持ちます。

第1章 Rust言語
第2章 準備
第3章 Rustの基本
第4章 Rustの最初の難関
第5章 所有権システム
第6章 もっとRustを学ぶ
 
内容サンプル
 
User Voice
他の方のレビューにもありますが、構造体の実体がヒープ上に確保されることになっていたり、「なお、日本語の全角ひらがな、全角カタカナ、漢字は3バイトです」と書かれていたり内容があまりにもひどいです。ちゃんと学びたいならこの書籍は避けたほうがいいです。
他の方も書いていますが、内容に技術的な誤りがかなり多いように見受けられます。
この本で学ぶと逆に Rust を書くことができるなくなると思います。
Rustへのはじめての歩みとしては
いい本です。
ただ、深みはないので、
あくまで初心者向けの本としての
位置づけです。

Rustを初めて経験する人には
いい本だと思います。
 

Rust 新書一覧

 
本書の内容
Rustは、C/C++の代わりとなる最新の爆速言語として注目されています。「とにかく実行速度が速い」「モダンな言語機能が一通り入っている」「OSからWebアプリケーションまで幅広く実装できる」「ツール群がとても充実している」「安全性が強力に担保されている」など、数多くの魅力があります。本書は、JavaやPythonなど他の言語に習熟しているエンジニアを対象に、Rustの独特な仕様と開発ノウハウをわかりやすく解説した入門書です。

※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。
 
内容サンプル
 
User Voice
現在のRustがチャレンジしていることに対し、手を動かして試すための手順が記述されている。
CLI、Web、組み込みまで、幅広く試してみることができる。
この本一冊で、すでに2週間近く遊んでいる。やってみると、更に試したいことが増えていく。
文法の解説は要点を押さえてある。本家のドキュメントを見る前にさっと押さえておくと良い感じ。
Twitterで知ったのと関数型の言語を触ってみたかったので購入しました。
内容に関してはプログラミングがそこそこ出来る人なら理解出来る内容であると思います。
ただ、プログラミング初心者がこの本から始めるのはおすすめできません。
普段はH/W系のオシゴトをしています。たまにCやPythonを使うのですが、Rustが大人気あると聞いたので
Cの代替として触ってみようとして本書を購入しました。

まず、この本は「プログラミング」の入門書ではないので、プログラミング入門者にはお勧めできません。

文法を説明するRustの基本という章までざっくり読んでみました。この章は100頁くらいで、この次の章は実践の章です。この本全体はだいたい500頁くらいです。(あれ基本ページ少なすぎ?)
ここまで読んだ感想で、「Rustの入門書」かと言われるとそれも怪しいのではないかと思っています。

文法の説明は非常にあっさりしており、他言語で同じような文法を知っているから
何となく動作は分かるものの詳しいことは特に書いてありません。
とりあえずRustの公式が提供しているチュートリアルを先にやろうかと思います。

実践書としては良い本なのかもしれませんが、入門とかつけるのはどうなのかなと思います。
とりあえずチュートリアルをこなした後に本書を最後まで読んだ段階で感想を書こうかと思います。
 
 
本書の内容
 
内容サンプル
 
User Voice
 
 
本書の内容
 
内容サンプル
 
User Voice
 
 
本書の内容
Rustは、Firefoxの開発元であるMozillaが支援するオープンソースのプログラミング言語です。2017年末に公開されたFirefox のレンダリングエンジンの記述に使用され、その実行速度を2倍にしたことで有名になりました。オブジェクト指向と関数型の言語特徴を持ち、JavaやC#のようにVM(Virtual Machine)上の動作ではないため、既存のC言語のライブラリを直接扱える利点を持っています。またRustは、CやC++で発生しうる不正メモリアクセスに関する問題を,ある程度回避できるように設計されています。
 Rustはまだ新しい言語なので、本書の前半は実務に必要な詳しい文法を解説しています。文法や具体例などは、簡単なRustのコードを動かして確認しながら説明を進めています。後半は、具体的な利用法(Web API呼び出し、データベースアクセスなど)を中心に説明し、すでに他の言語(C++やC#、Javaなど)で同様にプログラミングをしたことのある読者を対象としています。
 
内容サンプル
 
User Voice
在宅ワークでめちゃくちゃにヒマなので買いました。
大学時代にC言語を少しだけ触って以来、Javaばかり扱っていた私ですが、今のところは問題なく楽しく読めています。
WebAssemblyも扱えるようになるため頑張りますね。
みなさん応援してください。
Rustの文法等の全体を丁寧に説明され、最初に読まれる入門書としてとても良いと思います。
多分、オフィシャルのブックよりも日本語がこなれ、著者の考え方も伝わってきます。
後半のWebとDatabaseの部分は、一転して省略された部分が目立ち、ダウンロードした
ソースファイルを参考にする必要がありました。第2版で丁寧な説明になることを望みます。
C/C++の知識を前提とせず、順序だてた構成で説明が丁寧な為、とても読みやすく分かり易いです。また、非同期async/await構文の説明など、最新情報が良く纏まっています。Rustを好きにさせてくれる1冊です。
ただし、プログラミング初心者向けではありません。
 
 
本書の内容
Raspberry PiをOSなしで、Rustという言語でゼロから制御するシリーズの3冊目です。この本では、ドライバの割り込みハンドリングとその設計について検討します。自作のOSとまではいきませんが、単機能の組み込み装置は作れるようになるはずです。
 
内容サンプル
 
User Voice
 
 
本書の内容
 
内容サンプル
 
User Voice
 
 
本書の内容
※このKindle本はプリント・レプリカ形式で、Kindle Paperwhiteなどの電子書籍リーダーおよびKindle Cloud Readerではご利用いただけません。Fireなどの大きいディスプレイを備えたタブレット端末や、Kindle無料アプリ (Kindle for iOS、Kindle for Android、Kindle for PC、Kindle for Mac) でのみご利用可能です。また、文字列のハイライト、検索、辞書の参照、引用については、一部機能しない場合があります。文字だけを拡大することはできません。
※プリント・レプリカ形式は見開き表示ができません。
※この電子書籍は紙版書籍のページデザインで制作した固定レイアウトです。

安全なプログラミング言語
 通常のプログラミング言語では、変数やメモリの保護はプログラマーの責任で行います。この際の配慮不足があったとしても、コンパイルして実行できるプログラムはできてしまいます。その結果は、バグやセキュリティホールにつながるので、プログラマーも強い責任感でのプログラミングが必要です。本書で解説するRust言語は、後発なだけいろいろ考えられており、構文そのものが配慮不足になりにくいしくみであり、また不良なソースコードはコンパイルできません。つまり安全なプログラムを記述しなければコンパイルできないというユニークな特長を持ちます。

第1章 Rust言語
第2章 準備
第3章 Rustの基本
第4章 Rustの最初の難関
第5章 所有権システム
第6章 もっとRustを学ぶ
 
内容サンプル
 
User Voice
他の方のレビューにもありますが、構造体の実体がヒープ上に確保されることになっていたり、「なお、日本語の全角ひらがな、全角カタカナ、漢字は3バイトです」と書かれていたり内容があまりにもひどいです。ちゃんと学びたいならこの書籍は避けたほうがいいです。
他の方も書いていますが、内容に技術的な誤りがかなり多いように見受けられます。
この本で学ぶと逆に Rust を書くことができるなくなると思います。
Rustへのはじめての歩みとしては
いい本です。
ただ、深みはないので、
あくまで初心者向けの本としての
位置づけです。

Rustを初めて経験する人には
いい本だと思います。
 
 
本書の内容
Raspberry Pi3に搭載されているDMACというハードウェアの簡単なドライバの書き方を通して、初心者向けにベアメタル環境におけるRustの実装方法を説明します。Rustの機能を使った実装tipsの紹介や、ハードウェアの制御方法の基礎までを一通り解説しているので、これでドライバを書けるようになるでしょう。ドライバの実装はOS開発やベアメタル製品開発に不可欠な知識ですので、この本を端緒としてベアメタル開発に親しんでいただければと思います。
 
内容サンプル
 
User Voice
 
 
本書の内容
「Rustプログラミング言語は、エンパワーメント(empowerment)を根本原理としています。 どんな種類のコードを現在書いているにせよ、Rustは幅広い領域で以前よりも遠くへ到達し、自信を持ってプログラムを組む力を与え(empower)ます。」(本書「まえがき」より)
システムレベルのプログラムからWebサーバーやコマンドラインアプリなど、さまざまな分野に利用できるプログラミング言語として設計されているRust。本書はRustコミュニティ公式のガイドブックである。
基本的な文法事項から、Rustの中心的な機能である「所有権」の詳細、エラー処理や自動テストの方法、さらにはジェネリック型、スマートポインタ、関数型言語、並行プログラミング、オブジェクト指向の機能など、Rustプログラミングの肝となる要素のすべてを丁寧に解説する。
本書は、Rustの基本を理解する概念の章、Rustの機能を適用した小さなプログラムを構築するプロジェクトの章という2つで構成されている。それぞれを理解していけば、Rustを利用したプログラム開発にすぐに取りかかれるようになっている。
 
内容サンプル
 
User Voice
内容は★5。

しかしながら、Kindle版では、本文のフォントサイズが小さく、ソースコードのフォントサイズが大きいため、非常に読みづらい。

原著
https://www.amazon.co.jp/dp/B071YKRV8Q/ref=cm_sw_r_tw_dp_U_x_.I4rDb1R627X3
は逆(本文大、ソースコード小)になっているため、おそらく本書はフォントの指定が逆になっているのではないかと思われる。修正を希望する。

Rustの入門として日本語書籍では他に「実践Rust入門」
https://www.amazon.co.jp/dp/B07QVQ7RDG/ref=cm_sw_r_tw_dp_U_x_5O4rDbBX7CZJ9
があるが、最初に読むのは絶対に本書「プログラミング言語Rust 公式ガイド」の方が良い。

本書は説明の順序が新しい言語を学ぶセオリー通りになっているため、最初の一冊としてわかりやすい。
こういう内容って営業妨害になっちゃったりするのかな...内容は https://doc.rust-jp.rs/book/second-edition/ のものと全く同一です。私は諸事情につきダウンロードして勉強したかった(そうだとしてもPDF版もあった模様...まぁKindle便利なので良しとします)ために購入しましたが、別に安定したインターネット環境がある方はわざわざ購入する必要はありません。紙の本として持っておきたいという方は紙の方を買ってもいいんじゃないかと思います。内容は良いですので☆4です。技術書の洋書の和訳があまり良くないのは普通のことです、というか私が以前出会ったものよりは大分マシでした
直訳、誤訳、分かりにくい訳が多い。レイアウト表示の面でも違和感がある。公式であるTRPLの内容と殆ど同じであるということもあり、4000円の価値はない。
 
 
本書の内容
こちらの書籍は 2020/06/24 紙版の4刷に対応するため更新をおこないました。
(概要)
Rustは2015年に安定版がリリースされた新しい言語です。静的型付けと関数型言語などにみられる高度な抽象化のしくみを取り入れており、高品質で再利用性の高いプログラムを開発できます。さらに、ハードウェア資源についてC/C++と同等の効率の良い制御ができますが、決定的に違うのは、安全性をかなり重視しています。つまりRustは開発者の生産性を高めつつ、性能やハードウェア資源の効率を最大限に発揮するという、従来の言語では相反する要件を同時に満たす、数少ないプログラミング言語の1つなのです。本書はこの注目のプログラミング言語Rustの入門書です。この1冊でRustの言語仕様から開発現場で必要となる知識までを丁寧に解説しています。

(こんな方におすすめ)
・Rustをはじめてみたい方

(目次)
第1部基礎編
第1章Rustの特徴
1-1Rustの特徴
1-2最も愛されている言語
1-3Rustの起源
1-4なぜRustなのか?
1-5導入事例

第2章はじめてのRustプログラム
2-1インストール
2-2Hello Worldプログラム
2-3ソースコードエディタの導入
2-4RPN計算機プログラムとデバッガによる実行
2-5ツールチェインの補足情報

第3章クイックツアー
3-1プログラムの概要
3-2並列ソートに適したバイトニックソート
3-3第1段階:初歩的な実装
3-4第2段階:ジェネリクスでさまざまなデータ型に対応させる
3-5第3段階:クロージャでソート順をカスタマイズ
3-6最終形:並列ソートの実現
3-7仕上げ:ベンチマークプログラム

第4章プリミティブ型
4-1型の分類
4-2スカラ型
4-3プリミティブな複合型

第5章ユーザ定義型
5-1スタック領域とヒープ領域
5-2標準ライブラリの主な型
5-3新しい型の定義と型エイリアス
5-4型変換

第6章基本構文
6-1準備
6-2コメント
6-3うるう年と平年
6-4use宣言
6-5関数
6-6束縛とミュータビリティ
6-7演算子
6-8分岐
6-9繰り返し
6-10クロージャ
6-11アトリビュート
6-12モジュールとアイテムの可視性

第7章所有権システム
7-1所有権システムの利点
7-2所有権システムの概要
7-3値の所有者
7-4値のスコープ
7-5ムーブセマンティクス
7-6コピーセマンティクス
7-7借用:所有権を渡さずに値を貸し出す
7-8参照のライフタイムと借用規則
7-9ライフタイムの詳細:簡単なベクタの実装
7-10共同所有者を実現するポインタ:Rc型とArc型
7-11内側のミュータビリティ
7-12クロージャと所有権

第8章トレイトとポリモーフィズム
8-1トレイトの基本
8-2トレイトのジェネリクス
8-3静的ディスパッチと動的ディスパッチ
8-4存在impl Trait
8-5トレイトとアイテム
8-6標準ライブラリのトレイト利用例
8-7演算子のオーバーロード
8-8トレイトのテクニック

第2部実践編
第9章パーサを作る
9-1四則演算の処理系の作成
9-2字句解析
9-3構文解析
9-4抽象構文木の利用

第10章パッケージを作る
10-1コマンドラインツールの作成
10-2ドキュメントを書く
10-3テストの追加
10-4パッケージを公開するために
10-5自動テストを行う
10-6パッケージをリリースする

第11章Webアプリケーション、データベース接続
11-1RustとWebの現状
11-2WebアプリケーションフレームワークActix Web
11-3JSON APIサーバ
11-4Dieselを使ったデータベースの扱い
11-5マルチパート/CSVファイルの扱い
11-6CLIクライアントの作成

第12章FFI
12-1C FFIの基本
12-2Cのデータ型の扱い
12-3C APIの基本
 
内容サンプル
 
User Voice
決して本書が悪いのではなく、自分の求めるものとは合わなかった。

私としては、最初に言語についての簡単にでも説明があって、
その後に「では実際にプログラムを組んでみるとどうなるか」を
例示する構成が好きです。最初に例示が来て「今は理解しなくてもいいです。
後で説明しますから」という構成だと、結局その例示は理解できず、
言語の説明を読んだ後に再度読み直して「ああそういうことか」というのは、
ただ時間を無駄にしたような感覚になります。

もちろんそういう構成が好きな方には何の問題もないと思います。
最初の方で読み疲れてしまって、全部は読み通せてないので、
言語の解説部分についてはよく分かりません。
他のレビューにもあるが、Rustの入門に最初の一冊としてこれを選ぶと心が折れると思われる。共著にありがちだが、構成が良くない。

3章の「クイックツアー」が少し長すぎる。もっと後半にあるべきで最初の方にあるべきではない。「Rustはこういうことができるのか」という雰囲気を得るために最初に置いたのだと思うが、詳細に入りすぎて、本当に入門者はここを読み切る前にやめてしまう気がする。

経験者向けにはいいのかもしれないが、4章から「プリミティブ型」の説明に入り、ここから急に本当に入門者向けになってしまうのでので、全体を通してどうもバランスが良くない印象を受ける。

ただ、Rustの肝である、「所有権」「借用」「ライフタイム」は図入り解説なのでわかりやすい。これは「プログラミング言語Rust 公式ガイド」では文章だけで理解しにくい部分であった。ここだけでも本書を読む価値はある。
7章ぐらいまで読みました。

Rustを学ぶには公式サイトにあるThe Rust Programming Language(The Book)が推奨されています。この実践Rust入門はそれと同じぐらいよくかけている素晴らしい本です。すべてRustの学習者に勧めたい良い本です。The Bookと併読をおすすめします。

・図が詳細です
Rust独特の概念を説明するのにThe Bookでは文章で説明しています。「実践」では図で細かく概念を説明してあるのでこれが実によく理解できます。

・公式より詳細な説明
私はThe Bookの後半ぐらいまで読みました。「実践」はThe Bookより説明が細かく書かれているように感じました。一部の説明はThe Bookよりわかりやすいように感じたくらいです。

・日本語です
The Bookの最新版は英語です。英語が問題ない人には良いですが、苦手な人にはこの本が良いです。
 
 
本書の内容
これは同人誌のKindle版です。紙の本はB5版、60ページでした。

Raspberry PiをOSやライブラリを用いずに起動し制御する、いわゆるベアメタルをRustにより実装する解説書。

Rustは独特なリソース管理の仕組みを持ち、組み込みのような限られたリソース環境に向く。また、インラインアセンブリがあるため低レイヤの制御も可能という特性があり、Rust EmbeddedというプロジェクトでRaspberry Piの制御が試みられている。このソースコードの解説をベースに組み込み特有のRustコードとArmおよび関連HWの制御を解説する。
 
内容サンプル
 
User Voice
 

Rust 高評価のおすすめ本 ランキング

人気 1位
 
本書の内容
Rustは、C/C++の代わりとなる最新の爆速言語として注目されています。「とにかく実行速度が速い」「モダンな言語機能が一通り入っている」「OSからWebアプリケーションまで幅広く実装できる」「ツール群がとても充実している」「安全性が強力に担保されている」など、数多くの魅力があります。本書は、JavaやPythonなど他の言語に習熟しているエンジニアを対象に、Rustの独特な仕様と開発ノウハウをわかりやすく解説した入門書です。

※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。
 
内容サンプル
 
User Voice
現在のRustがチャレンジしていることに対し、手を動かして試すための手順が記述されている。
CLI、Web、組み込みまで、幅広く試してみることができる。
この本一冊で、すでに2週間近く遊んでいる。やってみると、更に試したいことが増えていく。
文法の解説は要点を押さえてある。本家のドキュメントを見る前にさっと押さえておくと良い感じ。
Twitterで知ったのと関数型の言語を触ってみたかったので購入しました。
内容に関してはプログラミングがそこそこ出来る人なら理解出来る内容であると思います。
ただ、プログラミング初心者がこの本から始めるのはおすすめできません。
普段はH/W系のオシゴトをしています。たまにCやPythonを使うのですが、Rustが大人気あると聞いたので
Cの代替として触ってみようとして本書を購入しました。

まず、この本は「プログラミング」の入門書ではないので、プログラミング入門者にはお勧めできません。

文法を説明するRustの基本という章までざっくり読んでみました。この章は100頁くらいで、この次の章は実践の章です。この本全体はだいたい500頁くらいです。(あれ基本ページ少なすぎ?)
ここまで読んだ感想で、「Rustの入門書」かと言われるとそれも怪しいのではないかと思っています。

文法の説明は非常にあっさりしており、他言語で同じような文法を知っているから
何となく動作は分かるものの詳しいことは特に書いてありません。
とりあえずRustの公式が提供しているチュートリアルを先にやろうかと思います。

実践書としては良い本なのかもしれませんが、入門とかつけるのはどうなのかなと思います。
とりあえずチュートリアルをこなした後に本書を最後まで読んだ段階で感想を書こうかと思います。
 
人気 2位
 
本書の内容
こちらの書籍は 2020/06/24 紙版の4刷に対応するため更新をおこないました。
(概要)
Rustは2015年に安定版がリリースされた新しい言語です。静的型付けと関数型言語などにみられる高度な抽象化のしくみを取り入れており、高品質で再利用性の高いプログラムを開発できます。さらに、ハードウェア資源についてC/C++と同等の効率の良い制御ができますが、決定的に違うのは、安全性をかなり重視しています。つまりRustは開発者の生産性を高めつつ、性能やハードウェア資源の効率を最大限に発揮するという、従来の言語では相反する要件を同時に満たす、数少ないプログラミング言語の1つなのです。本書はこの注目のプログラミング言語Rustの入門書です。この1冊でRustの言語仕様から開発現場で必要となる知識までを丁寧に解説しています。

(こんな方におすすめ)
・Rustをはじめてみたい方

(目次)
第1部基礎編
第1章Rustの特徴
1-1Rustの特徴
1-2最も愛されている言語
1-3Rustの起源
1-4なぜRustなのか?
1-5導入事例

第2章はじめてのRustプログラム
2-1インストール
2-2Hello Worldプログラム
2-3ソースコードエディタの導入
2-4RPN計算機プログラムとデバッガによる実行
2-5ツールチェインの補足情報

第3章クイックツアー
3-1プログラムの概要
3-2並列ソートに適したバイトニックソート
3-3第1段階:初歩的な実装
3-4第2段階:ジェネリクスでさまざまなデータ型に対応させる
3-5第3段階:クロージャでソート順をカスタマイズ
3-6最終形:並列ソートの実現
3-7仕上げ:ベンチマークプログラム

第4章プリミティブ型
4-1型の分類
4-2スカラ型
4-3プリミティブな複合型

第5章ユーザ定義型
5-1スタック領域とヒープ領域
5-2標準ライブラリの主な型
5-3新しい型の定義と型エイリアス
5-4型変換

第6章基本構文
6-1準備
6-2コメント
6-3うるう年と平年
6-4use宣言
6-5関数
6-6束縛とミュータビリティ
6-7演算子
6-8分岐
6-9繰り返し
6-10クロージャ
6-11アトリビュート
6-12モジュールとアイテムの可視性

第7章所有権システム
7-1所有権システムの利点
7-2所有権システムの概要
7-3値の所有者
7-4値のスコープ
7-5ムーブセマンティクス
7-6コピーセマンティクス
7-7借用:所有権を渡さずに値を貸し出す
7-8参照のライフタイムと借用規則
7-9ライフタイムの詳細:簡単なベクタの実装
7-10共同所有者を実現するポインタ:Rc型とArc型
7-11内側のミュータビリティ
7-12クロージャと所有権

第8章トレイトとポリモーフィズム
8-1トレイトの基本
8-2トレイトのジェネリクス
8-3静的ディスパッチと動的ディスパッチ
8-4存在impl Trait
8-5トレイトとアイテム
8-6標準ライブラリのトレイト利用例
8-7演算子のオーバーロード
8-8トレイトのテクニック

第2部実践編
第9章パーサを作る
9-1四則演算の処理系の作成
9-2字句解析
9-3構文解析
9-4抽象構文木の利用

第10章パッケージを作る
10-1コマンドラインツールの作成
10-2ドキュメントを書く
10-3テストの追加
10-4パッケージを公開するために
10-5自動テストを行う
10-6パッケージをリリースする

第11章Webアプリケーション、データベース接続
11-1RustとWebの現状
11-2WebアプリケーションフレームワークActix Web
11-3JSON APIサーバ
11-4Dieselを使ったデータベースの扱い
11-5マルチパート/CSVファイルの扱い
11-6CLIクライアントの作成

第12章FFI
12-1C FFIの基本
12-2Cのデータ型の扱い
12-3C APIの基本
 
内容サンプル
 
User Voice
決して本書が悪いのではなく、自分の求めるものとは合わなかった。

私としては、最初に言語についての簡単にでも説明があって、
その後に「では実際にプログラムを組んでみるとどうなるか」を
例示する構成が好きです。最初に例示が来て「今は理解しなくてもいいです。
後で説明しますから」という構成だと、結局その例示は理解できず、
言語の説明を読んだ後に再度読み直して「ああそういうことか」というのは、
ただ時間を無駄にしたような感覚になります。

もちろんそういう構成が好きな方には何の問題もないと思います。
最初の方で読み疲れてしまって、全部は読み通せてないので、
言語の解説部分についてはよく分かりません。
他のレビューにもあるが、Rustの入門に最初の一冊としてこれを選ぶと心が折れると思われる。共著にありがちだが、構成が良くない。

3章の「クイックツアー」が少し長すぎる。もっと後半にあるべきで最初の方にあるべきではない。「Rustはこういうことができるのか」という雰囲気を得るために最初に置いたのだと思うが、詳細に入りすぎて、本当に入門者はここを読み切る前にやめてしまう気がする。

経験者向けにはいいのかもしれないが、4章から「プリミティブ型」の説明に入り、ここから急に本当に入門者向けになってしまうのでので、全体を通してどうもバランスが良くない印象を受ける。

ただ、Rustの肝である、「所有権」「借用」「ライフタイム」は図入り解説なのでわかりやすい。これは「プログラミング言語Rust 公式ガイド」では文章だけで理解しにくい部分であった。ここだけでも本書を読む価値はある。
7章ぐらいまで読みました。

Rustを学ぶには公式サイトにあるThe Rust Programming Language(The Book)が推奨されています。この実践Rust入門はそれと同じぐらいよくかけている素晴らしい本です。すべてRustの学習者に勧めたい良い本です。The Bookと併読をおすすめします。

・図が詳細です
Rust独特の概念を説明するのにThe Bookでは文章で説明しています。「実践」では図で細かく概念を説明してあるのでこれが実によく理解できます。

・公式より詳細な説明
私はThe Bookの後半ぐらいまで読みました。「実践」はThe Bookより説明が細かく書かれているように感じました。一部の説明はThe Bookよりわかりやすいように感じたくらいです。

・日本語です
The Bookの最新版は英語です。英語が問題ない人には良いですが、苦手な人にはこの本が良いです。
 
人気 3位
 
本書の内容
Rustは、Firefoxの開発元であるMozillaが支援するオープンソースのプログラミング言語です。2017年末に公開されたFirefox のレンダリングエンジンの記述に使用され、その実行速度を2倍にしたことで有名になりました。オブジェクト指向と関数型の言語特徴を持ち、JavaやC#のようにVM(Virtual Machine)上の動作ではないため、既存のC言語のライブラリを直接扱える利点を持っています。またRustは、CやC++で発生しうる不正メモリアクセスに関する問題を,ある程度回避できるように設計されています。
 Rustはまだ新しい言語なので、本書の前半は実務に必要な詳しい文法を解説しています。文法や具体例などは、簡単なRustのコードを動かして確認しながら説明を進めています。後半は、具体的な利用法(Web API呼び出し、データベースアクセスなど)を中心に説明し、すでに他の言語(C++やC#、Javaなど)で同様にプログラミングをしたことのある読者を対象としています。
 
内容サンプル
 
User Voice
在宅ワークでめちゃくちゃにヒマなので買いました。
大学時代にC言語を少しだけ触って以来、Javaばかり扱っていた私ですが、今のところは問題なく楽しく読めています。
WebAssemblyも扱えるようになるため頑張りますね。
みなさん応援してください。
Rustの文法等の全体を丁寧に説明され、最初に読まれる入門書としてとても良いと思います。
多分、オフィシャルのブックよりも日本語がこなれ、著者の考え方も伝わってきます。
後半のWebとDatabaseの部分は、一転して省略された部分が目立ち、ダウンロードした
ソースファイルを参考にする必要がありました。第2版で丁寧な説明になることを望みます。
C/C++の知識を前提とせず、順序だてた構成で説明が丁寧な為、とても読みやすく分かり易いです。また、非同期async/await構文の説明など、最新情報が良く纏まっています。Rustを好きにさせてくれる1冊です。
ただし、プログラミング初心者向けではありません。
 

Copyrights hogehoge