Effective Rust

―Rustコードを改善し、エコシステムを最大限に活用するための35項目

[cover photo]
TOPICS
Programming
発行年月日
PRINT LENGTH
304
ISBN
978-4-8144-0094-2
原書
Effective Rust
FORMAT
Print PDF EPUB
Ebook
3,740円
Ebookを購入する
Print
3,740円

Rustはいま最も勢いのある言語の1つ。特に、そのパフォーマンスの高さ、安全性、並行性から、C/C++に代わる言語として、システムプログラミングや低レイヤの開発では高く評価されています。Googleのソフトウェアエンジニアとして、さまざまなGoogleサービスのRust実装を担当してきた著者が、Rustへの深い理解と豊富な経験から得られた実用的なノウハウを共有。所有、借用、生存期間、トレイトといったRust特有の概念を具体例を示して詳しく説明するとともに、Cargoによる依存ライブラリ管理やClippyなどのエコシステムの活用方法を詳述しています。Rustの入門書を読了した読者に、「Rustらしい」プログラミング方法を伝授する一冊です。

目次

まえがき

1章 型
    項目1:データ構造を表現するために型システムを用いよう
    項目2:型システムを用いて共通の挙動を表現しよう
    項目3:OptionとResultに対してはmatchを用いずに変換しよう
    項目4:標準のError型を使おう
    項目5:型変換を理解しよう
    項目6:newtypeパターンを活用しよう
    項目7:複雑な型にはビルダを使おう
    項目8:参照型とポインタ型に慣れよう
    項目9:明示的なループの代わりにイテレータ変換を使用することを検討しよう

2章 トレイト
    項目10:標準トレイトに習熟しよう
    項目11:RAIIパターンにはDropトレイトを実装しよう
    項目12:ジェネリクスとトレイトオブジェクトのトレードオフを理解しよう
    項目13:デフォルト実装を用いて、実装しなければならないトレイトメソッドを最小限にしよう

3章 さまざまなコンセプト
    項目14:生存期間を理解しよう
    項目15:借用チェッカを理解しよう
    項目16:unsafeコードを書かないようにしよう
    項目17:状態共有並列実行には気を付けよう
    項目18:Don't panic
    項目19:リフレクションを避けよう
    項目20:過剰な最適化の誘惑を退けよう

4章 依存ライブラリ
    項目21:セマンティックバージョン(SemVer)を理解しよう
    項目22:可視範囲を最小化しよう
    項目23:ワイルドカードインポートを避けよう
    項目24:APIに型が登場する依存ライブラリは再エクスポートしよう
    項目25:依存グラフを管理しよう
    項目26:忍び寄るフィーチャに注意しよう

5章 ツール
    項目27:パブリックインターフェイスのドキュメントを書こう
    項目28:分別をもってマクロを使おう
    項目29:Clippyに耳を傾けよう
    項目30:ユニットテスト以上のものを書こう
    項目31:ツールのエコシステムを活用しよう
    項目32:CIシステムを設定しよう

6章 標準Rustの向こうへ
    項目33:ライブラリコードをno_std互換にすることを検討しよう
    項目34:FFI境界を通過するものを制御しよう
    項目35:手動でFFIマッピングを書かずにbindgenを用いよう

あとがき
索引