概要
Rustはメモリ安全,スレッド安全を保ちつつ,高パフォーマンスなプログラムを開発できるプログラミング言語です。また,手続き型,オブジェクト指向型,関数型でのプログラミングに対応できるマルチパラダイムの言語でもあります。ただ,そういったRustのポテンシャルを引き出すには,所有権やライフタイム,ジェネリクスやトレイトといった特徴的な仕様の理解が求められ,これらは初学者の壁にもなっています。本書ではそれら難解な仕様をピックアップし,他のプログラミング言語とコードレベルで比較しながら,「なぜそのような仕様になっているか」という言語のコンセプトからRustの理解を試みます。加えて,Rustのこまやかなエラーメッセージを読みつつ,Rustをうまく書くための知識もお伝えします。
こんな方におすすめ
- 一歩進んだプログラミングを学びたい,高パフォーマンスなシステムを作りたいITエンジニア
サポート
正誤表
本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。
P.192 下から4行目
誤 |
Rc::clone() |
正 |
Rc::new() |
P.23 3行目
誤 |
std::fmt::Displayいうトレイト |
正 |
std::fmt::Displayというトレイト |
P.71 3つ目のコード囲み10行目
P.142 リスト4.14のキャプション
誤 |
Result<T,E>} |
正 |
Result<T,E> |
余計な「}」がありました。
P.154 Pythonのコード 10行目
誤 |
print("The capital of {} is {}.".format(
|
正 |
print("The capital of {} is {}".format(
|
余計な「.」がありました。
P.154 Pythonのコード 14行目
誤 |
print(The capital of {} is not found.".format(tg))
|
正 |
print("The capital of {} is not found".format(tg))
|
「"」が抜けており,余計な「.」がありました。
P.151 本文5行目
誤 |
Some(“medium) を返却 |
正 |
Some(“large") を返却 |
P.154 Pythonのコード 11行目
P.171 リスト4.19 29行目
P.171 エラー画面 1行目
「e」が抜けていました。
P.174 エラー画面 2行目
P.180 リスト4.22 31行目
P.184 本文7行目
「の」が不要です。
P.213 本文14行目
誤 |
+演算子を使って表示 |
正 |
+演算子を使って表現 |
P.218 リスト5.11 32,41行目
P.17 端末画面
誤 |
$ cargp clippy # clippyを実行
|
正 |
$ cargo clippy # clippyを実行
|
P.154 Pythonのコード 2行目
誤 |
capticals["Japan"] = "Tokyo"
|
正 |
capitals["Japan"] = "Tokyo"
|
P.34 1行目
誤 |
クレート名(json_serde)に変えるだけです。 |
正 |
クレート名(serde_json)に変えるだけです。 |
P.171 リスト 4.19の10行目
誤 |
let number = Box::new(value + 10);
|
正 |
|
P.245 本文9行目
誤 |
実はこれは20行目と同じ意味になります。 |
正 |
実はこれは21行目と同じ意味になります。 |
P.289 3行目の漸化式
誤 |

|
正 |

|
最初のSの下付きは「N-1」ではなく「-1」であるべきでした。