Skip to content

Commit

Permalink
ch.5.0 and 5.1
Browse files Browse the repository at this point in the history
  • Loading branch information
CoinEZ-JPN committed May 30, 2023
1 parent d71e523 commit 397d8fd
Showing 1 changed file with 33 additions and 5 deletions.
38 changes: 33 additions & 5 deletions po/ja.po
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Comprehensive Rust 🦀\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2023-05-29 21:31+0900\n"
"PO-Revision-Date: 2023-05-30 16:37+0900\n"
"Last-Translator: Kenta Aratani <[email protected]>\n"
"Language-Team: Japanese <[email protected]>\n"
"Language: ja\n"
Expand Down Expand Up @@ -2227,20 +2227,25 @@ msgstr ""

#: src/why-rust.md:3
msgid "Some unique selling points of Rust:"
msgstr ""
msgstr "Rustの特徴的なセールスポイント:"

#: src/why-rust.md:5
msgid ""
"* Compile time memory safety.\n"
"* Lack of undefined runtime behavior.\n"
"* Modern language features."
msgstr ""
"* コンパイル時のメモリ安全性\n"
"* 未定義のランタイム動作が発生しない\n"
"* モダンな言語機能"

#: src/why-rust.md:11
msgid ""
"Make sure to ask the class which languages they have experience with. Depending\n"
"on the answer you can highlight different features of Rust:"
msgstr ""
"受講者に、どの言語の経験があるかを聞いてみてください。回答に応じて、Rustの異なる特徴を強調する事が"
"できます:"

#: src/why-rust.md:14
msgid ""
Expand All @@ -2254,14 +2259,21 @@ msgid ""
" you get fast and predictable performance like C and C++ (no garbage collector)\n"
" as well as access to low-level hardware (should you need it)"
msgstr ""
"* C、C++の経験がある場合: Rustは借用チェッカを介してランタイムエラーの一部を排除してくれます。Cや"
"C++と同等のパフォーマンスを得る事ができ、メモリの安全性に問題はありません。さらに、パターンマッチン"
"グや組み込みの依存関係管理など、モダンな言語の構造を利用する事もできます。\n"
"\n"
"* Java、Go、Python、JavaScript…の経験がある場合: これら言語と同じメモリの安全性と、似たような高水"
"準言語の感覚を提供してくれます。また、CやC++のような高速かつ予測可能なパフォーマンス(ガベージコレ"
"クタがない)や、ローレベルハードウェアにアクセスする事も可能です(必要な場合)"

#: src/why-rust/compile-time.md:1
msgid "# Compile Time Guarantees"
msgstr ""
msgstr "# コンパイル時の保証"

#: src/why-rust/compile-time.md:3
msgid "Static memory management at compile time:"
msgstr ""
msgstr "コンパイル時の静的メモリ管理:"

#: src/why-rust/compile-time.md:5
msgid ""
Expand All @@ -2274,12 +2286,20 @@ msgid ""
"* No data races between threads.\n"
"* No iterator invalidation."
msgstr ""
"* 変数の初期化を強制する\n"
"* メモリリークの心配がない (ほとんどの場合*。スピーカーノートを参照)\n"
"* 二重解放が起こらない\n"
"* 解放後は使用できない\n"
"* `NULL`(ヌル)ポイントがない\n"
"* ロックされたミューテックス(mutex)の解除忘れがない\n"
"* スレッド間のデータ競合がない\n"
"* イテレータの無効化が起こらない"

#: src/why-rust/compile-time.md:16
msgid ""
"It is possible to produce memory leaks in (safe) Rust. Some examples\n"
"are:"
msgstr ""
msgstr "(安全な)Rustでは、メモリリークを意図的に発生させる事が可能です。例をあげると:"

#: src/why-rust/compile-time.md:19
msgid ""
Expand All @@ -2292,12 +2312,20 @@ msgid ""
"* In fact, some will consider infinitely populating a collection a memory\n"
" leak and Rust does not protect from those."
msgstr ""
"* [`Box::leak`]を使ってポインタをリークさせる事ができます。使用例としては、ランタイムで初期化され"
"る、またはランタイムでサイズが決まる静的変数の取得です。\n"
"* [`std::mem::forget`]を使用して、コンパイラに値を「忘れさせる」事ができます (つまり、デストラクタ"
"が実行されない)。\n"
"* `Rc`や`Arc`を使用して、[参照サイクル]を意図せず作成する事もあります。\n"
"* 一部の人からは、コレクションを無限に拡張する事をメモリリークとみなされており、実際Rustにはこれを"
"防止する機能はありません。"

#: src/why-rust/compile-time.md:28
msgid ""
"For the purpose of this course, \"No memory leaks\" should be understood\n"
"as \"Pretty much no *accidental* memory leaks\"."
msgstr ""
"本講座での「メモリリークがない」は「偶発的なメモリリークはほとんどない」と解釈されるべきです。"

#: src/why-rust/runtime.md:1
msgid "# Runtime Guarantees"
Expand Down

0 comments on commit 397d8fd

Please sign in to comment.