あらすじ
Rustは2015年に安定版がリリースされた新しい言語です。静的型付けと関数型言語などにみられる高度な抽象化のしくみを取り入れており、高品質で再利用性の高いプログラムを開発できます。さらに、ハードウェア資源についてC/C++と同等の効率の良い制御ができますが、決定的に違うのは、安全性をかなり重視しています。つまりRustは開発者の生産性を高めつつ、性能やハードウェア資源の効率を最大限に発揮するという、従来の言語では相反する要件を同時に満たす、数少ないプログラミング言語の1つなのです。本書はこの注目のプログラミング言語Rustの入門書です。この1冊でRustの言語仕様から開発現場で必要となる知識までを丁寧に解説しています。
...続きを読む感情タグBEST3
Posted by ブクログ
C/C++のようにシステムを記述可能な言語として開発が進められている言語。GCがなく不正なメモリー操作はすべてコンパイラ時に検出するので安全な設計ができるもの。特徴的なものとして所有権システムがある。
Posted by ブクログ
第1部を全て読んだ。第2部は必要に応じて読む。
第7章までは構成や文章が素晴らしく、とても分かりやすい。しかし、第8章は文章の質や例題の選定があまり良いとは言えず、誤植もあり、結構理解しづらい。
////////////////////////////////////////
マルチスレッド化はRustの標準ライブラリだけで実現できるが、Rayonクレートを使用すると簡単かつ安全に実装できる。
・標準ライブラリ:spawn(), join()など。
・Rayonクレート:並列データ処理向け
・並列イテレータ
イテレータチェインの並列実行【パイプライン並列?】
・joinメソッド
分割統治法の並列実行
データ競合が起こらないことをコンパイル時に確認するために、SyncトレイトとSendトレイトを提供する。
・Syncトレイト:複数スレッドによる安全な共有参照
・Sendトレイト:スレッド間の安全な受け渡し
////////////////////////////////////////
参照は、所有権システムでは借用とも呼ばれる。
参照型(&T, &mut T)はメモリ安全なポインタ。
生ポインタ型(*const T, *mut T)はメモリ安全でないポインタ。