1313> 注釈: この本のこの版は、本として利用可能な[ The Rust Programming Language] [ nsprust ] と、
1414> [ No Starch Press] [ nsp ] のebook形式と同じです。
1515
16- [ nsprust ] : https://nostarch.com/rust
16+ [ nsprust ] : https://nostarch.com/rust-programming-language-2nd-edition
1717[ nsp ] : https://nostarch.com/
1818
1919<!--
@@ -59,8 +59,8 @@ Rustは、様々な理由により多くの人にとって理想的です。い
5959<!--
6060Rust is proving to be a productive tool for collaborating among large teams of
6161developers with varying levels of systems programming knowledge. Low-level code
62- is prone to a variety of subtle bugs, which in most other languages can be
63- caught only through extensive testing and careful code review by experienced
62+ is prone to various subtle bugs, which in most other languages can be caught
63+ only through extensive testing and careful code review by experienced
6464developers. In Rust, the compiler plays a gatekeeper role by refusing to
6565compile code with these elusive bugs, including concurrency bugs. By working
6666alongside the compiler, the team can spend their time focusing on the program’s
@@ -84,13 +84,14 @@ Rustはまた、現代的な開発ツールをシステムプログラミング
8484* Cargo, the included dependency manager and build tool, makes adding,
8585 compiling, and managing dependencies painless and consistent across the Rust
8686 ecosystem.
87- * Rustfmt ensures a consistent coding style across developers.
87+ * The Rustfmt formatting tool ensures a consistent coding style across
88+ developers.
8889* The Rust Language Server powers Integrated Development Environment (IDE)
8990 integration for code completion and inline error messages.
9091-->
9192
9293* Cargoは、付属の依存関係管理ツール兼ビルドツールで、依存関係の追加、コンパイル、管理を容易にし、Rustのエコシステム全体で一貫性を持たせます。
93- * Rustfmtは開発者の間で一貫したコーディングスタイルを保証します 。
94+ * Rustfmtフォーマットツールは開発者の間で一貫したコーディングスタイルを保証します 。
9495* Rust言語サーバーは、IDE(統合開発環境)との統合により、コード補完やインラインエラーメッセージに対応しています。
9596
9697<!--
@@ -127,8 +128,8 @@ Rustは、学生やシステムの概念を学ぶことに興味のある方向
127128
128129<!--
129130Hundreds of companies, large and small, use Rust in production for a variety of
130- tasks. Those tasks include command line tools, web services, DevOps tooling,
131- embedded devices, audio and video analysis and transcoding, cryptocurrencies,
131+ tasks, including command line tools, web services, DevOps tooling, embedded
132+ devices, audio and video analysis and transcoding, cryptocurrencies,
132133bioinformatics, search engines, Internet of Things applications, machine
133134learning, and even major parts of the Firefox web browser.
134135-->
@@ -161,17 +162,17 @@ Rustは、Rustプログラミング言語やコミュニティ、開発者ツー
161162
162163<!--
163164Rust is for people who crave speed and stability in a language. By speed, we
164- mean the speed of the programs that you can create with Rust and the speed at
165- which Rust lets you write them . The Rust compiler’s checks ensure stability
166- through feature additions and refactoring. This is in contrast to the brittle
167- legacy code in languages without these checks, which developers are often
168- afraid to modify. By striving for zero-cost abstractions, higher-level features
169- that compile to lower-level code as fast as code written manually, Rust
170- endeavors to make safe code be fast code as well.
165+ mean both how quickly Rust code can run and the speed at which Rust lets you
166+ write programs . The Rust compiler’s checks ensure stability through feature
167+ additions and refactoring. This is in contrast to the brittle legacy code in
168+ languages without these checks, which developers are often afraid to modify. By
169+ striving for zero-cost abstractions, higher-level features that compile to
170+ lower-level code as fast as code written manually, Rust endeavors to make safe
171+ code be fast code as well.
171172-->
172173
173174Rustは、スピードと安定性を言語に渇望する方向けです。ここでいうスピードとは、
174- Rustで作れるプログラムのスピードとソースコードを書くスピードのことです 。Rustコンパイラのチェックにより、
175+ Rustコードの実行速度とプログラムを書くスピードのことです 。Rustコンパイラのチェックにより、
175176機能の追加とリファクタリングを通して安定性を保証してくれます。これはこのようなチェックがない言語の脆いレガシーコードとは対照的で、
176177その場合開発者はしばしば、変更するのを恐れてしまいます。ゼロコスト抽象化を志向し、
177178手で書いたコードと同等の速度を誇る低レベルコードにコンパイルされる高レベル機能により、
@@ -218,12 +219,12 @@ reading a book that specifically provides an introduction to programming.
218219<!--
219220In general, this book assumes that you’re reading it in sequence from front to
220221back. Later chapters build on concepts in earlier chapters, and earlier
221- chapters might not delve into details on a topic; we typically revisit the
222- topic in a later chapter.
222+ chapters might not delve into details on a particular topic but will revisit
223+ the topic in a later chapter.
223224-->
224225
225226一般的に、この本は、順番に読み進めていくことを前提にしています。後の章は、前の章の概念の上に成り立ち、
226- 前の章では、ある話題にさほど深入りしない可能性があります; 典型的に後ほどの章で同じ話題を再度しています 。
227+ 前の章では、特定の話題にさほど深入りしない可能性がありますが、後ほどの章で同じ話題を再検討するでしょう 。
227228
228229<!--
229230You’ll find two kinds of chapters in this book: concept chapters and project
@@ -239,22 +240,23 @@ Rustの一面を学ぶでしょう。プロジェクトの章では、それま
239240<!--
240241Chapter 1 explains how to install Rust, how to write a “Hello, world!” program,
241242and how to use Cargo, Rust’s package manager and build tool. Chapter 2 is a
242- hands-on introduction to the Rust language. Here we cover concepts at a high
243- level, and later chapters will provide additional detail. If you want to get
244- your hands dirty right away, Chapter 2 is the place for that. At first, you
245- might even want to skip Chapter 3, which covers Rust features similar to those
246- of other programming languages, and head straight to Chapter 4 to learn about
247- Rust’s ownership system. However, if you’re a particularly meticulous learner
248- who prefers to learn every detail before moving on to the next, you might want
249- to skip Chapter 2 and go straight to Chapter 3, returning to Chapter 2 when
250- you’d like to work on a project applying the details you’ve learned.
243+ hands-on introduction to writing a program in Rust, having you build up a
244+ number guessing game. Here we cover concepts at a high level, and later
245+ chapters will provide additional detail. If you want to get your hands dirty
246+ right away, Chapter 2 is the place for that. Chapter 3 covers Rust features
247+ that are similar to those of other programming languages, and in Chapter 4
248+ you’ll learn about Rust’s ownership system. If you’re a particularly meticulous
249+ learner who prefers to learn every detail before moving on to the next, you
250+ might want to skip Chapter 2 and go straight to Chapter 3, returning to Chapter
251+ 2 when you’d like to work on a project applying the details you’ve learned.
251252-->
252253
253254第1章はRustのインストール方法、“Hello, world!”プログラムの書き方、Rustのパッケージマネージャ兼、
254- ビルドツールのCargoの使用方法を説明します。第2章は、Rust言語への実践的な導入です。ここでは概念をざっくりと講義し、後ほどの章で追加の詳細を提供します。
255- 今すぐRustの世界に飛び込みたいなら、第2章こそがそのためのものです。第3章は他のプログラミング言語の機能に似たRustの機能を講義していますが、
256- 最初その3章すら飛ばして、まっすぐに第4章に向かい、Rustの所有権システムについて学びたくなる可能性があります。
257- しかしながら、あなたが次に進む前に全ての詳細を学ぶことを好む特別に几帳面な学習者なら、
255+ ビルドツールのCargoの使用方法を説明します。第2章は、数当てゲームを作りながら、実際にRustでのプログラミングをやってもらう導入です。
256+ ここでは概念をざっくりと講義し、後ほどの章で追加の詳細を提供します。
257+ 今すぐRustの世界に飛び込みたいなら、第2章こそがそのためのものです。第3章は他のプログラミング言語の機能に似たRustの機能を講義し、
258+ 第4章ではRustの所有権システムについて学びます。
259+ あなたが次に進む前に全ての詳細を学ぶことを好む特別に几帳面な学習者なら、
258260第2章を飛ばして真っ先に第3章に行き、学んだ詳細を適用するプロジェクトに取り組みたくなった時に第2章に戻りたくなる可能性があります。
259261
260262<!--
@@ -334,18 +336,20 @@ multithreaded web server!
334336第20章では、低レベルなマルチスレッドのWebサーバを実装するプロジェクトを完成させます!
335337
336338<!--
337- Finally, some appendixes contain useful information about the language in a
339+ Finally, some appendices contain useful information about the language in a
338340more reference-like format. Appendix A covers Rust’s keywords, Appendix B
339341covers Rust’s operators and symbols, Appendix C covers derivable traits
340342provided by the standard library, Appendix D covers some useful development
341- tools, and Appendix E explains Rust editions.
343+ tools, and Appendix E explains Rust editions. In Appendix F, you can find
344+ translations of the book, and in Appendix G we’ll cover how Rust is made and
345+ what nightly Rust is.
342346-->
343347
344348最後に、言語についての有用な情報をよりリファレンスのような形式で含む付録があります。
345349付録AはRustのキーワードを講義し、付録Bは、Rustの演算子と記号、付録Cは、
346350標準ライブラリが提供する導出可能なトレイト、付録Dはいくつか便利な開発ツールを講義し、
347- 付録EではRustのエディションについて説明します。
348-
351+ 付録EではRustのエディションについて説明します。付録Fではこの本の翻訳を見つけることができ、
352+ 付録GではRustの作られ方、そしてnightly Rustとは何かについて講義します。
349353<!--
350354There is no wrong way to read this book: if you want to skip ahead, go for it!
351355You might have to jump back to earlier chapters if you experience any
@@ -378,20 +382,18 @@ Rustを学ぶ過程で重要な部分は、コンパイラが表示するエラ
378382フェリスもコードが動作するとは意図されていないコードを見分けるのを手助けしてくれます:
379383
380384<!--
381- | Ferris | Meaning |
382- |------------------------------------------------------------------------|--------------------------------------------------|
383- | <img src="img/ferris/does_not_compile.svg" class="ferris-explain"/> | This code does not compile! |
384- | <img src="img/ferris/panics.svg" class="ferris-explain"/> | This code panics! |
385- | <img src="img/ferris/unsafe.svg" class="ferris-explain"/> | This code block contains unsafe code. |
386- | <img src="img/ferris/not_desired_behavior.svg" class="ferris-explain"/>| This code does not produce the desired behavior. |
385+ | Ferris | Meaning |
386+ |------------------------------------------------------------------------------------------------------------------|--------------------------------------------------|
387+ | <img src="img/ferris/does_not_compile.svg" class="ferris-explain" alt="Ferris with a question mark"/> | This code does not compile! |
388+ | <img src="img/ferris/panics.svg" class="ferris-explain" alt="Ferris throwing up their hands"/> | This code panics! |
389+ | <img src="img/ferris/not_desired_behavior.svg" class="ferris-explain" alt="Ferris with one claw up, shrugging"/> | This code does not produce the desired behavior. |
387390-->
388391
389- | Ferris | Meaning |
390- | ------------------------------------------------------------------------| --------------------------------------------------|
391- | <img src =" img/ferris/does_not_compile.svg " class =" ferris-explain " /> | このコードはコンパイルできません! |
392- | <img src =" img/ferris/panics.svg " class =" ferris-explain " /> | このコードはパニックします! |
393- | <img src =" img/ferris/unsafe.svg " class =" ferris-explain " /> | このコードはアンセーフなコードを含みます。 |
394- | <img src =" img/ferris/not_desired_behavior.svg " class =" ferris-explain " />| このコードは求められている振る舞いをしません。 |
392+ | Ferris | Meaning |
393+ | ------------------------------------------------------------------------------------------------------------------| --------------------------------------------------|
394+ | <img src =" img/ferris/does_not_compile.svg " class =" ferris-explain " alt =" Ferris with a question mark " /> | このコードはコンパイルできません! |
395+ | <img src =" img/ferris/panics.svg " class =" ferris-explain " alt =" Ferris throwing up their hands " /> | このコードはパニックします! |
396+ | <img src =" img/ferris/not_desired_behavior.svg " class =" ferris-explain " alt =" Ferris with one claw up, shrugging " /> | このコードは求められている振る舞いをしません。 |
395397
396398<!--
397399In most situations, we’ll lead you to the correct version of any code that
@@ -415,5 +417,5 @@ The source files from which this book is generated can be found on
415417
416418> 訳注: 日本語版は[ こちら] [ book-ja ] です。
417419
418- [ book ] : https://github.com/rust-lang/book/tree/master /src
420+ [ book ] : https://github.com/rust-lang/book/tree/main /src
419421[ book-ja ] : https://github.com/rust-lang-ja/book-ja
0 commit comments