baicai

白菜

一个勤奋的代码搬运工!

Rust 学習ガイド

理解#

一般的に、新しい言語を学ぶことを決定する前に、その言語の特徴や現在の発展状況を大まかに理解することが重要です。この時、Rust の公式サイト https://rust-lang.org を見ることをお勧めします。

Rust 公式ドキュメント#

Rust 言語の学習や参考文書は、主に Rust 学習指針ページRust 公式ドキュメントホームページ に掲載されています。現在、Rust 公式チームは関連文書を異なるリポジトリに分割しています:

他にも公式または非公式の関連文書が多数あります:

上記の文書のソースファイルの一部は、rustcargo のリポジトリのサブディレクトリに置かれています:Rust ドキュメントcargo ドキュメント

Rust リソース#

Rust に関連する日本語リソース、ウェブサイト、または国内の Rust に関する記事や書籍。

Rust 関連の日本語ウェブサイト#

以下は現在収集した Rust 日本語ウェブサイトです:

Rust 言語日本語コミュニティ:https://rust.cc/

Rust Wiki:https://rustwiki.org/

Rust 言語用語中英対照表#

👉 一部は Rust 言語用語中英対照表 リポジトリからのもので、ここに収録されています。これは Rust 学習者が統一して参照するためのもので、誤りや改善点があれば、元のリポジトリで指摘または修正してください。

English 英文Chinese 中文Note 备注
A
Abstract Syntax Tree抽象構文木
ABIアプリケーションバイナリインターフェースApplication Binary Interface の略
accumulatorアキュムレーター
accumulator variableアキュムレーター変数
ahead-of-time compiled事前コンパイル
ahead-of-time compiled language事前コンパイル言語
aliasエイリアス
aliasingエイリアス使用参見 Wikipedia
angle brackets山括弧、「<」と「>」
annotate注釈する(動詞)
annotation注釈(名詞)
ARC原子参照カウントAtomic Reference Counter
anonymity匿名
argument引数、実引数厳密に区別しない場合、argument(引数)と
parameter(パラメータ)は互換的に使用可能
argument type引数の型
assignment代入
associated functions関連関数
associated items関連項目
associated types関連型
asteriskアスタリスク(*)
atomic原子的
attribute属性
automated building自動ビルド
automated test自動テスト
B
baroque macroバロックマクロ
benchmarkベンチマーク
binaryバイナリの
binary executableバイナリ実行可能ファイル
bindバインド
blockブロック
booleanブール型、ブール値
borrow check借用チェック
borrower借用者
borrowing借用
bound制約、限定この単語は constraint と意味が近い
constraint は C# 言語で「制約」と翻訳される
boxボックス、箱、ボックス型一般的には翻訳しない、動詞としては「ボックス化」と訳す
所有権を持つスマートポインタ
boxedボックス化
boxingボックス化
brace中括弧、「{」または「}」
bufferバッファ、バッファ領域、キャッシュ
buildビルド
builder patternビルダーパターン
C
call呼び出し
caller呼び出し元
capacity容量
captureキャプチャ
cargo(Rust パッケージマネージャ、翻訳しない)この単語が名詞のときは「貨物」を意味し、
動詞のときは「貨物を積む」を意味する
cargo-fyCargo 化、Cargo を使用してプロジェクトを作成
case analysisケース分析
cast型変換
casting型変換
chaining method callチェーンメソッド呼び出し
channelチャンネル
closureクロージャ
coercion強制型変換coercion の原意は「強制、脅迫」
collectionコレクション参見 Wikipedia
combinatorコンビネータ
commaコンマ、「,」
commandコマンド
command lineコマンドライン
commentコメント
compileコンパイル(動詞)
compile timeコンパイル時
compilationコンパイル(名詞)
compilation unitコンパイルユニット
compilerコンパイラ
compiler intrinsicsコンパイラ固有機能
compound複合(型、データ)
concurrency同時実行
conditional compilation条件付きコンパイル
configuration設定
constructorコンストラクタ
consumerコンシューマ
containerコンテナ
container typeコンテナ型
convert変換、転換
copyコピー
crateクレート、パッケージ一般的には翻訳しない、crate は Rust の基本的なコンパイルユニット
curly braces中括弧、含む「{」と「}」
custom typeカスタム型
D
dangling pointerダングリングポインタuse after free の意味
data raceデータ競合
dead codeデッドコード、無効コード、到達不能コード
deallocate解放、再割り当て
declare宣言
deep copyディープコピー
dependency依存
deref coercions強制多態
dereferenceデリファレンスRust の記事では時々Deref と略される
derive派生
designator指示子
destruction破壊、消滅
destructorデストラクタ
destructure解構
destructuring解構、解構代入
desugarデス ugar
diverge function発散関数
device driveデバイスドライバ
directoryディレクトリ
dispatchディスパッチ
diverging functions発散関数
documentationドキュメント
dot operatorドット演算子
DST動的サイズ型dynamic sized type、一般的には翻訳しない
英語の略語形式を使用
dynamic language動的型付け言語
dynamic trait type動的トレイト型
E
enumeration列挙
encapsulationカプセル化
equality test等価テスト
elision省略
exhaustiveness checking穷尽性チェック、漏れのないチェック
expression表現
expression-oriented language表現指向言語
explicit明示的
explicit discriminator明示的な識別子
explicit type conversion明示的型変換
extension拡張子
extern外部キーワードとしては翻訳しない
F
fat pointerファットポインタ
feature gate機能ゲート
fieldフィールド
field-level mutabilityフィールドレベルの可変性
fileファイル
fmtフォーマット、format の略
formatterフォーマッタ
floating-point number浮動小数点数
flow controlフロー制御
Foreign Function Interface(FFI)外部言語関数インターフェース
fragment specifierフラグメント指定子
free variables自由変数
freezeフリーズ
function関数
function declaration関数宣言
functional関数型
G
garbage collectorガーベジコレクタ
generalize一般化
generatorジェネレータ
genericジェネリック
generic typeジェネリック型
growable拡張可能
guardガード
H
handle errorハンドルエラー
hashハッシュ、ハッシュ値、散列
hash mapハッシュマップ、ハッシュ表
heapヒープ
hierarchy階層、階層構造
higher rank lifetime高階ライフタイム
higher rank trait bound高階トレイトバウンド
higher tank type高階型
hygiene衛生
hygienic macro system衛生マクロシステム
I
ICEコンパイラ内部エラーinternal compiler error の略
immutable不変
implement実装
implementor実装者
implicit暗黙の
implicit discriminator暗黙の識別子
implicit type conversion暗黙の型変換
importインポート
in assignment代入中(文)
indexインデックス英語の複数形:indices
infer推論(動詞)
inference推論(名詞)
inherited mutability継承された可変性
inheritance継承
integrated development
environment(IDE)
統合開発環境日本語の著作では通常 IDE とそのまま書かれる
integration-style test統合テスト
interior mutability内部可変性
installerインストーラー
instanceインスタンス
instance methodインスタンスメソッド
integer整数
interact相互作用
interior mutability内部可変性
intrinsic固有の
invoke呼び出す
itemアイテム、項目
iterate繰り返す
iterationイテレーション
iteratorイテレーター
iterator adaptorsイテレーターアダプタ
iterator invalidationイテレーター無効化
L
LHS左辺left-hand side の非公式略語、
RHS と対になる
lender貸し手
libraryライブラリ
lifetimeライフタイム
lifetime elisionライフタイム省略
linkリンク
linked-list連結リスト
lint(翻訳しない)lint の本来の意味は「布、繊維」であり、この単語は
コンピュータ分野ではプログラムコード内の疑わしい
構造のない部分を指す、参見 Wikipedia
listリスト
listenerリスナー
literalリテラル、字面値英語の意味:字面上の(内容)
LLVM(翻訳しない)Low Level Virtual Machine の略、
コンパイラを構築するためのシステム
loopループキーワードとしては翻訳しない
low-level code低レベルコード
low-level language低レベル言語
l-value左辺値
M
main functionmain 関数、主関数
macroマクロ
mapマッピング一般的には翻訳しない
match guardマッチガード
memoryメモリ
memory leakメモリリーク
memory safeメモリ安全
meta原則、メタ
metadataメタデータ
metaprogrammingメタプログラミング
metavariableメタ変数
method call syntaxメソッド呼び出し構文
method chainingメソッドチェイニング
method definitionメソッド定義
modifier修飾子
moduleモジュール
monomorphization単相mono: 一つ、morph: 形
move移動、転送Rust が規定する内容に従い、
英単語 transfer の意味が
move よりも実際の記述に近い
参考:Rust by Example
move semantics移動セマンティクス
mutability可変性
mutable可変
mutable reference可変参照
multiple bounds複数の制約
mutiple patterns複数のパターン
N
nestネスト
Nightly RustRust 開発版nightly の本来の意味は「毎夜、毎晩」で、
コードが毎日更新されることを指す
NLL非語彙ライフタイムnon lexical lifetime の略、
一般的には翻訳しない
non-copy type非コピー型
non-generic非ジェネリック
no-opノーオペレーション、空操作(この単語は型変換の章に出現する)
non-commutative非可換
non-scalar cast非スカラー変換
notation表記、記号
numeric数値、数字
O
optimization最適化
out-of-bounds accessing範囲外アクセス
orphan rule孤児ルール
overflowオーバーフロー、範囲外
own所有、持つ
owner所有者
ownership所有権
P
package managerパッケージマネージャ、ソフトウェアパッケージマネージャ
panic(翻訳しない)この単語の直接の翻訳は「パニック」で、
Rust では回復不可能なエラー処理に使用される
parameterパラメータ、形式引数厳密に区別しない場合、argument(引数)と
parameter(パラメータ)は互換的に使用可能
parametric polymorphismパラメトリック多態
parent scope親スコープ
parentheses括弧、「(」と「)」
parse解析
parser(構文)パーサ、解析器
patternパターン
pattern matchパターンマッチ
phantom type幻影型、ファントム型phantom に関連する専門用語:
phantom bug 幻影バグ
phantom power 幻影電源
参見:HaskellHaskell/Phantom_type
Rust/Phantomstdlib/PhantomData
platformプラットフォーム
polymorphism多態
powershell(翻訳しない)Windows システムのコマンドラインシェル
およびスクリプト環境
possibility of absence存在しない可能性
precede先行する?、... が発生する(または現れる)
prelude(翻訳しない)事前にインポートされるモジュール、英語の本来の意味:序曲、前奏
primitive types原始型、基本型、単純型
printプリント
processプロセス
procedural macros手続きマクロ、プログラムマクロ
projectプロジェクト、工程
prototypeプロトタイプ
R
race conditionレースコンディション
RAIIリソース取得即初期化(一般的には翻訳しない)resource acquisition is initialization の略
range範囲
range expression範囲表現
raw identifier生の識別子
raw pointer生ポインタ、裸ポインタ
RC参照カウントreference counted
Readerリーダー
recursive macro再帰マクロ
reference参照
reference cycle参照サイクル
releaseリリース
resourceリソース
resource leakリソースリーク
RHS右辺right-hand side の非公式略語、
LHS と対になる
root directoryルートディレクトリ
runtimeランタイム
runtime behaviorランタイム動作
runtime overheadランタイムオーバーヘッド
Rust(翻訳しない)一種のプログラミング言語
Rustacean(翻訳しない)Rust を書くプログラマーまたは愛好者の総称
rustc(翻訳しない)Rust 言語コンパイラ
r-value右辺値
S
scalarスカラー、数量
scheduleスケジュール
scopeスコープ
screenスクリーン
scriptスクリプト
semicolonセミコロン、「;」
self自身、キーワードとしては翻訳しない
shadowシャドウ、隠蔽、隠す、オーバーライド
shallow copyシャロウコピー、浅いコピー
signatureシグネチャ
sliceスライス
snake caseスネークケース参見:Snake case
source fileソースファイル
source codeソースコード
specializationジェネリック特化
square二次方、平方、二次幂
square brackets中括弧、「[」と「]」
src(翻訳しない)source の略、ソースコードを指す
stackスタック
stack unwindスタックアンワインド
statementステートメント
statically allocated静的に割り当てられた
statically allocated string静的に割り当てられた文字列
statically dispatch静的ディスパッチ
static method静的メソッド
string文字列
string literal文字列リテラル
string slices文字列スライス
stringify文字列化
subscript notation下付き記号
sugar
superスーパ、キーワードとしては翻訳しない
syntax context構文コンテキスト
systems programming languageシステムプログラミング言語
T
tagged unionタグ付き共用体
target tripleターゲットトリプルtriple の本来の意味は「三」だが、ここでは「多」を指す
この単語の翻訳にはさらなる議論が必要
terminalターミナル
testingテスト
testsuitテストスイート
the least significant bit (LSB)最下位ビット
the most significant bit (MSB)最上位ビット
threadスレッド
TOML(翻訳しない)Tom's Obvious, Minimal Language の略、
一種の設定言語
token treeトークンツリー?さらなる検討が必要
traitトレイトその字面上の意味は「特性、特徴」
trait boundトレイトバウンドbound は「制約、制限、限定」を意味する
trait objectトレイトオブジェクト
transmute(翻訳しない)その字面上の意味は「変化、変形、変異」で、
翻訳しない
trivial平凡な
troubleshootingトラブルシューティング、
故障診断、故障排除、故障分析
tupleタプル
two's complement補数、二の補数
two-word object二語オブジェクト
type annotation型注釈
type erasure型消去
type inference型推論
type inference engine型推論エンジン
type parameter型パラメータ
type placeholder型プレースホルダー
type signature型シグネチャ
U
undefined behavior未定義の動作
uninstallアンインストール
unit-like struct単位のような構造体
unit struct単位構造体
"unit-style" tests単体テスト
unit test単体テスト
unit type単位型
universal function call syntax
(UFCS)
ユニバーサル関数呼び出し構文
unsized typesサイズ不定の型
unwindアンワインド
unwrapアンラップ暫訳!
V
variable binding変数バインディング
variable shadowing変数のシャドウイング、変数の隠蔽、
変数の隠れ、変数のオーバーライド
variable capture変数キャプチャ
variantバリアント
vector(動的配列、一般的には翻訳しない)vector の本来の意味は「ベクトル」
visibility可視性
vtable仮想テーブル
W
where clausewhere 句、where 節、where 分句データベースの公式マニュアルでは多くの場合「句」と翻訳され、英語文法では「節」と翻訳される
wrapラップ暫訳!
wrappedラップされた
wrapperラッパー
Y
yield生成(利益、効果など)、産出、提供
Z
zero-cost abstractionsゼロコスト抽象
zero-width space(ZWSP)ゼロ幅空白
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。