Rust プログラミング完全ガイド 他言語との比較で違いが分かる!
ラストプログラミングカンゼンガイド タゲンゴトノヒカクデチガイガワカル
- 著者:
- Carlo Milanesi / 吉川 邦夫(カルロ ミラネージ / ヨシカワ クニオ)
- 出版社:
- インプレス
- 出版日:
- 2022年09月28日頃
- ISBN:
- 9784295015291
- シリーズ:
- impress top gear
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
技書の森解説
『Rust プログラミング完全ガイド 他言語との比較で違いが分かる!』は、C / C++ の後継と位置づけられ、性能とメモリ安全性を重視するプログラミング言語 Rust を、基礎から総合的に学ぶためのチュートリアル書です。著者は Carlo Milanesi、翻訳は吉川 邦夫で、インプレスの impress top gear シリーズから 2022 年 9 月に刊行されました。原書は Beginning Rust の原著第 2 版です。Rust を初めて学ぶ人が、すでに使っている言語との違いを手がかりにして理解を進めたい場合に向いた一冊です。
全 24 章のチュートリアル、最小級のサンプルから始める構成
版元の紹介文 (楽天ブックスの書誌) では、本書は 500 以上のサンプルとその実行結果を示しながら Rust の手法や考え方を幅広く解説する、全 24 章の包括的なチュートリアルと説明されています。説明は最小級のサンプルから始まり、その後はさまざまな構文や機能、Rust に特徴的な振る舞いについて多数のテーマを取り上げ、関数、メモリの割り当て、オブジェクト指向も扱うとされています。小さなコードと実行結果を一つずつ確かめながら進む形なので、手元に Rust の開発環境を用意して、サンプルを動かしながら読む使い方に合っています。索引と参考文献も付いており、通読した後に特定の構文を引き直す使い方もできます。
所有権とガベージコレクションの違いが Rust の難所になる理由
Rust の学習でつまずきやすいのは、メモリの扱い方がよく知られた言語のどれとも違う点です。Java や Python、Go は、不要になったメモリを実行時に回収する ガベージコレクション に任せるため、書き手は解放の時期を意識しません。C や C++ では、解放の責任は書き手やライブラリの設計に委ねられ、解放後の領域を使う誤りが実行時の不具合や脆弱性につながります。Rust はどちらとも違い、値を持つ変数をただ 1 つに定め、参照の貸し出しに規則を課す 所有権と借用 の仕組みによって、メモリの誤用をコンパイルの段階で拒みます。他の言語なら通るコードがコンパイルエラーになる場面が続くため、なぜ拒まれるのかを既知の言語の動作と並べて理解できるかどうかが、挫折するか先へ進めるかの分かれ目になります。オブジェクト指向の扱いも同じで、Rust にはクラスの継承が無く、型に共通の振る舞いは トレイト とジェネリクスで表します。本書は副題のとおり、こうした違いを他言語と比較しながら解説します。
他言語の経験を活かす読み方と向かない読者
Rust の予備知識は求められず、最小級のサンプルから始まる構成なので、Rust に触れるのが初めてでも読み始められます。ただし比較の説明は、比べる相手となる C や C++、Java、Python などの言語を前提にしています。また本書は 2022 年の刊行で、その後の Rust の言語やツールの更新は含まれません。
C++ で書いてきた処理を安全に書き直したい人や、ガベージコレクションのある言語から性能を求めて Rust へ移りたい人、Rust のコンパイルエラーに振り回されて独学が止まってしまった人に向けて、本書は知っている言語との違いを足場に、全 24 章で Rust の考え方を基礎から一通り扱います。
言及した記事 (1 件)
この本は技書デッキのカードです (攻撃 8) 図鑑でこの本を見る
この本に興味がある方におすすめ
関連する本
関連記事
プログラミング本を図書館で無料で借りるコツと注意点
プログラミングの本は図書館で無料で借りられます。貸出冊数の上限や予約の使い方、棚の分類番号、借りる前に確認したい出版年などのコツを紹介します。
写経を超える - 技術書のコードを自分のプロジェクトに応用する方法
技術書のサンプルコードを写経するだけでは実力は伸びません。書籍のコードを自分のプロジェクトに応用し、実務で使える力に変える 5 つのステップを解説します。
ゲームが好きならプログラミングの本も読める
ゲームの攻略本を読んだことがあるなら、プログラミングの本も読めます。攻略本とプログラミング本の共通点から、読書のハードルを下げます。