Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial commit #1397

Open
wants to merge 92 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
4707105
Initial commit
AveNRU Aug 26, 2024
c3f0f26
Initial commit
AveNRU Aug 26, 2024
f56f8c1
обновление
AveNRU Aug 26, 2024
5a98dbf
2
AveNRU Aug 26, 2024
ed7b7d2
2 день
AveNRU Aug 27, 2024
8db288e
3
AveNRU Aug 29, 2024
06613b5
4
AveNRU Aug 29, 2024
cec9896
4
AveNRU Aug 29, 2024
aa29d49
5
AveNRU Aug 30, 2024
54cb968
5
AveNRU Aug 30, 2024
297938c
5
AveNRU Aug 30, 2024
08f129a
Merge branch 'rus2' of https://github.com/AveNRU/book into rus2
AveNRU Aug 30, 2024
d3951b8
Update .gitignore
AveNRU Aug 30, 2024
eeede08
6
AveNRU Aug 30, 2024
0c8c64f
6
AveNRU Aug 30, 2024
a826355
6
AveNRU Aug 30, 2024
7fcbf0b
Update README.md
AveNRU Aug 30, 2024
afea5b5
6
AveNRU Aug 31, 2024
19184b5
6
AveNRU Aug 31, 2024
fda90fd
6
AveNRU Aug 31, 2024
90fb1f4
6
AveNRU Aug 31, 2024
df1fb71
6
AveNRU Aug 31, 2024
1ac9b31
Update ch03-02-data-types.md
AveNRU Aug 31, 2024
85d0f1c
6
AveNRU Aug 31, 2024
8026f7c
Update заимствованные слова1.xlsx
AveNRU Aug 31, 2024
c88b08b
6
AveNRU Sep 2, 2024
1620aee
Revert "6"
AveNRU Sep 2, 2024
a5d5f5f
понедельник утро - работа
AveNRU Sep 2, 2024
4b5c396
7
AveNRU Sep 2, 2024
a261077
5
AveNRU Sep 2, 2024
9d8df55
5
AveNRU Sep 2, 2024
c18d57f
6
AveNRU Sep 2, 2024
09499d5
5
AveNRU Sep 2, 2024
dcfc9d1
6
AveNRU Sep 2, 2024
824277a
Update заимствованные слова1.xlsx
AveNRU Sep 3, 2024
2203ee9
7
AveNRU Sep 3, 2024
a25587c
6
AveNRU Sep 3, 2024
a9f71f2
6
AveNRU Sep 3, 2024
fd20d27
s
AveNRU Sep 4, 2024
72ffff2
32
AveNRU Sep 4, 2024
e93acad
5
AveNRU Sep 4, 2024
a636b8a
5
AveNRU Sep 4, 2024
08d3b90
56
AveNRU Sep 5, 2024
4f149d0
5
AveNRU Sep 5, 2024
7418d51
5
AveNRU Sep 6, 2024
43ef2ca
5
AveNRU Sep 6, 2024
a2f25bc
5
AveNRU Sep 6, 2024
e3e607b
Update ch08-02-strings.md
AveNRU Sep 6, 2024
d9166bb
6
AveNRU Sep 6, 2024
1cea52f
+
AveNRU Sep 6, 2024
fc27f89
+
AveNRU Sep 6, 2024
e22c0d7
6
AveNRU Sep 9, 2024
8111509
6
AveNRU Sep 9, 2024
498538f
6
AveNRU Sep 9, 2024
891c4e7
5
AveNRU Sep 10, 2024
fac1f31
5
AveNRU Sep 10, 2024
9076007
5
AveNRU Sep 10, 2024
123ccc8
Merge branch 'rus2' of https://github.com/AveNRU/book into rus2
AveNRU Sep 10, 2024
8d76a6f
6
AveNRU Sep 11, 2024
d966ce6
Update ch02-00-guessing-game-tutorial.md
AveNRU Sep 11, 2024
2ab19c4
5
AveNRU Sep 11, 2024
c4e153d
Update заимствованные слова1.xlsx
AveNRU Sep 11, 2024
34f1af2
6
AveNRU Sep 11, 2024
5cf9b5c
1
AveNRU Sep 11, 2024
22c42a9
5
AveNRU Sep 11, 2024
5a53d70
6
AveNRU Sep 11, 2024
859466d
5
AveNRU Sep 12, 2024
4f3bb29
5
AveNRU Sep 12, 2024
4da7a6f
5
AveNRU Sep 12, 2024
37a0385
Update ch13-02-iterators.md
AveNRU Sep 13, 2024
9a577ce
+
AveNRU Sep 16, 2024
ce93102
+
AveNRU Sep 17, 2024
047d521
+
AveNRU Sep 18, 2024
3747233
+
AveNRU Sep 18, 2024
c26e788
+
AveNRU Sep 20, 2024
f94fc3c
+
AveNRU Sep 20, 2024
1c4fc7a
+
AveNRU Sep 20, 2024
ee9a1f9
+
AveNRU Sep 23, 2024
07264b9
+
AveNRU Sep 23, 2024
0e4976f
+
AveNRU Sep 24, 2024
2f2662d
+
AveNRU Sep 24, 2024
a4b3e71
+
AveNRU Sep 25, 2024
2425f3e
+
AveNRU Sep 25, 2024
9e4d786
+
AveNRU Sep 25, 2024
00a0744
+
AveNRU Sep 26, 2024
3e6ef18
+
AveNRU Sep 26, 2024
8922d8a
+
AveNRU Sep 26, 2024
bd5f264
+
AveNRU Sep 27, 2024
91d8f70
+
AveNRU Sep 30, 2024
b9ce9ac
+
AveNRU Sep 30, 2024
1010b71
+
AveNRU Sep 30, 2024
01d7f87
+
AveNRU Sep 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
5
  • Loading branch information
AveNRU committed Sep 2, 2024
commit 9d8df5551c7584a6dfdc672dee6d1e04aebf6330
2 changes: 1 addition & 1 deletion rustbook-ru/src/appendix-03-derivable-traits.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
Перечисленные здесь особенности являются единственными, определёнными встроенной библиотекой, которые могут быть выполнены в ваших видах с помощью `derive`. Другие особенности, определённые в встроенной библиотеке, не имеют ощутимого поведения по умолчанию, поэтому вам решать, как выполнить их для достижения ваших целей.

Пример особенности, который нельзя выполнить через derive - `Display`, который обрабатывает изменение
для конечных пользователей. Вы всегда должны сами рассмотреть лучший способ для отображения вида конечному пользователю. Какие части вида должны быть разрешены для просмотра конечному пользователю? Какие части они найдут подходящими? Какой вид вывода для них будет самым подходящим? Сборщик ржавчины не знает ответы на эти вопросы, поэтому он не может подобрать подходящее обычное поведение.
для конечных пользователей. Вы всегда должны сами рассмотреть лучший способ для отображения вида конечному пользователю. Какие части вида должны быть разрешены для просмотра конечному пользователю? Какие части они найдут подходящими? Какой вид вывода для них будет самым подходящим? Сборщик Ржавчины не знает ответы на эти вопросы, поэтому он не может подобрать подходящее обычное поведение.

Список видов, выполняемых через derive, в этом дополнении не является исчерпывающим: библиотеки могут выполнить `derive` для их собственных особенностей, составляя свои списки особенностей, которые Вы можете использовать с помощью `derive`. Выполнение `derive` включает в себя использование процедурных макросов, которые были рассмотрены в разделе ["Макросы"]<!-- --> главы 19.

Expand Down
2 changes: 1 addition & 1 deletion rustbook-ru/src/appendix-05-editions.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

На мгновение написания доступны два издания: Ржавчина 2015 и Ржавчина 2018. Данная книга написана с использованием устойчивых выражений издания Ржавчины 2018.

Ключ `edition` в настроечном файле *Cargo.toml* отображает, какую издание сборщик должен использовать для вашей рукописи. Если ключа нет, то для обратной совместимости сборщик ржавчины использует издание `2015`.
Ключ `edition` в настроечном файле *Cargo.toml* отображает, какую издание сборщик должен использовать для вашей рукописи. Если ключа нет, то для обратной совместимости сборщик Ржавчины использует издание `2015`.

Любой дело может выбрать издание отличную от издания по умолчанию, которая равна 2015. Издания могут содержать несовместимые изменения, включая новые ключевые слова, которые могут враждовать с определителями в рукописи. Однако, пока вы не переключитесь на новую издание, вашу рукопись будет продолжать собираться даже после обновления используемой исполнения сборщика.

Expand Down
2 changes: 1 addition & 1 deletion rustbook-ru/src/ch02-00-guessing-game-tutorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -337,7 +337,7 @@ rand = "0.9.0"

<span class="caption">Приложение 2-3: Добавление рукописи который порождает случайное число</span>

Сначала мы добавляем строку `use rand::Rng`. Особенность `Rng` определяет способы, выполняющие породители случайных чисел, и этот особенность должен быть в области видимости, чтобы эти способы можно было использовать. В главе 10 мы рассмотрим особенности подробно.
Сначала мы добавляем строку `use rand::Rng`. Особенность `Rng` определяет способы, выполняющие породители случайных чисел, и эту особенность должен быть в области видимости, чтобы эти способы можно было использовать. В главе 10 мы рассмотрим особенности подробно.

Затем мы добавляем две строки посередине. В первой строке мы вызываем функцию `rand::thread_rng`, дающую нам породитель случайных чисел, который мы собираемся использовать: тот самый, который является местным для текущего потока выполнения и запускается операционной системой. Затем мы вызываем его способ `gen_range`. Этот способ определяется `Rng`, который мы включили в область видимости с помощью приказчика `use rand::Rng`. Способ `gen_range` принимает в качестве переменной выражение ряда и порождает случайное число в этом ряде. Вид используемого выражения ряда принимает разновидность `start..=end` и включает нижнюю и верхнюю границы, поэтому, чтобы запросить число от 1 до 100, нам нужно указать `1..=100`.

Expand Down
2 changes: 1 addition & 1 deletion rustbook-ru/src/ch03-01-variables-and-mutability.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ error[E0384]: cannot assign twice to immutable variable `x` --> src/main.rs:4:5

Вы получили сообщение об ошибке `cannot assign twice to immutable variable `x``, потому что попытались присвоить новое значение неизменяемой переменной `x`.

Важно, чтобы при попытке изменить значение, объявленное неизменяемым, выдавались ошибки времени сборки, так как подобный случай может привести к сбоям. Если одна часть нашей рукописи исполняется исходя из уверенности в неизменяемости значения, а другая часть изменяет это значение, то велика вероятность , что первая часть не выполнит своего предназначения. Причину такой ошибки бывает трудно отследить, особенно если вторая часть рукописи изменяет значение лишь *изредка*. Сборщик ржавчины предоставляет заверение, что если объявить значение неизменяемым, то оно действительно не изменится, а значит, не нужно следить за этим самим. Таким образом, вашу рукопись становится проще для понимания.
Важно, чтобы при попытке изменить значение, объявленное неизменяемым, выдавались ошибки времени сборки, так как подобный случай может привести к сбоям. Если одна часть нашей рукописи исполняется исходя из уверенности в неизменяемости значения, а другая часть изменяет это значение, то велика вероятность , что первая часть не выполнит своего предназначения. Причину такой ошибки бывает трудно отследить, особенно если вторая часть рукописи изменяет значение лишь *изредка*. Сборщик Ржавчины предоставляет заверение, что если объявить значение неизменяемым, то оно действительно не изменится, а значит, не нужно следить за этим самим. Таким образом, вашу рукопись становится проще для понимания.

Однако изменяемость может быть очень полезной и может сделать рукопись более удобной для написания. Хотя переменные по умолчанию неизменяемы, их можно сделать изменяемыми, добавив `mut` перед именем переменной, как это было сделано в [Главе 2]. Добавление `mut` также передаёт будущим читателям рукописи намерение, обозначая, что другие части рукописи будут изменять значение этой переменной.

Expand Down
4 changes: 2 additions & 2 deletions rustbook-ru/src/ch03-02-data-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,9 +222,9 @@ thread 'main' panicked at 'index out of bounds: the len is 5 but the index is 10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
```

Программа столкнулась с ошибкой во *времени выполнения* на этапе применения недопустимого значения в действия упорядочивания. Программа завершилась с сообщением об ошибке и не выполнила конечное указание `println!`. При попытке доступа к элементу с помощью упорядочивания Ржавчина проверяет, что указанный порядковый указатель меньше длины массива. Если порядковый указатель больше или равен длине, Ржавчина вызывает сбой. Эта проверка должна происходить во время выполнения, особенно в данном случае, потому что сборщик не может знать, какое значение введёт пользователь при последующем выполнении рукописи.
Программа столкнулась с ошибкой во *время выполнения* на этапе применения недопустимого значения во время обращения к порядковому номеру содержимого массива. Программа завершилась с сообщением об ошибке и не выполнила конечное указание `println!`. При попытке доступа к элементу с помощью порядкового указателя Ржавчина проверяет, что указанный порядковый указатель меньше длины массива. Если порядковый указатель больше или равен длине, Ржавчина вызывает сбой. Эта проверка должна происходить во время выполнения, особенно в данном случае, потому что сборщик не может знать, какое значение введёт пользователь при последующем выполнении рукописи.

Это пример принципов безопасности памяти Ржавчина в действии. Во многих низкоуровневых языках такая проверка не выполняется, и когда вы указываете неправильный порядковый указатель, доступ к памяти может быть неправильным. Ржавчина защищает вас от такого рода ошибок, немедленно закрываясь вместо того, чтобы разрешать доступ к памяти и продолжать работу. В главе 9 подробнее обсуждается обработка ошибок в Ржавчине и то, как вы можете написать безопасную рукопись, которая не вызывает сбой и не разрешает неправильный доступ к памяти.
Это пример принципов безопасности памяти Ржавчины в действии. Во многих низкоуровневых языках такая проверка не выполняется, и когда вы указываете неправильный порядковый указатель, доступ к памяти может быть неправильным. Ржавчина защищает вас от такого рода ошибок, немедленно закрываясь вместо того, чтобы разрешать доступ к памяти и продолжать работу. В главе 9 подробнее обсуждается обработка ошибок в Ржавчине и то, как вы можете написать безопасную рукопись, которая не вызывает сбой и не разрешает неправильный доступ к памяти.


[дополнительного рукописи]: https://en.wikipedia.org/wiki/Two%27s_complement
Expand Down
Loading