Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

静的保証

Rust の型システムは、コンパイル時にデータ競合を防ぎます(Send および Sync トレイトを参照)。型システムは、コンパイル時にそのほかの性質を 検査するためにも利用でき、その結果、場合によっては実行時チェックの必要性を 減らせます。

これらの 静的チェック を組み込みプログラムに適用すると、たとえば I/O インターフェイスの設定が適切に行われることを強制できます。たとえば、 まずそのインターフェイスで使用するピンを設定しなければ、シリアル インターフェイスを初期化できないような API を設計できます。

また、ピンを low に設定するといった操作が、正しく設定された ペリフェラルに対してのみ実行できることも、静的に検査できます。たとえば、 フローティング入力モードに設定されたピンの出力状態を変更しようとすると、 コンパイルエラーになります。

また、前章で見たように、所有権の概念をペリフェラルに適用することで、 プログラムの特定の部分だけがペリフェラルを変更できるようにできます。 この アクセス制御 により、ペリフェラルをグローバルな可変状態として扱う 代替案と比べて、ソフトウェアについて推論しやすくなります。