Skip to content

Corrected syntax and orthography #1511

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

Merged
merged 1 commit into from
Aug 27, 2019
Merged
Changes from all commits
Commits
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
32 changes: 16 additions & 16 deletions _ru/tour/basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ previous-page: tour-of-scala

## Выражения

Выражения - это вычислимые утверждения.
Выражения это вычислимые утверждения.
```
1 + 1
```
Вы можете выводить результаты выражений используя `println`.
Вы можете выводить результаты выражений, используя `println`.

{% scalafiddle %}
```tut
Expand Down Expand Up @@ -92,7 +92,7 @@ var x: Int = 1 + 1

Вы можете комбинировать выражения, окружая их `{}`. Мы называем это блоком.

Результат последнего выражения в блоке - будет результатом всего блока в целом.
Результат последнего выражения в блоке будет результатом всего блока в целом.

```tut
println({
Expand All @@ -103,15 +103,15 @@ println({

## Функции

Функции - это выражения, которые принимают параметры.
Функции это выражения, которые принимают параметры.

Вы можете определить анонимную функцию (т.е. без имени), которая возвращает переданное число прибавив к нему единицу:
Вы можете определить анонимную функцию (т.е. без имени), которая возвращает переданное число, прибавив к нему единицу:

```tut
(x: Int) => x + 1
```

Слева от `=>` находится список параметров. Справа - выражение, связанное с параметрами.
Слева от `=>` находится список параметров. Справа выражение, связанное с параметрами.

Вы также можете назвать функции.

Expand Down Expand Up @@ -178,7 +178,7 @@ def getSquareString(input: Double): String = {
square.toString
}
```
Последнее выражение в теле становится возвращаемым значением метода. (У Scala есть ключевое слово `return` , но оно практически не используется.)
Последнее выражение в теле становится возвращаемым значением метода Scala есть ключевое слово `return`, но оно практически не используется).

## Классы

Expand All @@ -190,9 +190,9 @@ class Greeter(prefix: String, suffix: String) {
println(prefix + name + suffix)
}
```
Возвращаемый тип метода `greet` это `Unit`, используется тогда, когда не имеет смысла что-либо возвращать. Аналогично `void` в Java и C. (Поскольку каждое выражение Scala должно иметь какое-то значение, то при отсутствии возвращающегося значения, возвращается экземпляр типа Unit. Явным образом его можно задать как `()`, он не несет какой-либо информации.)
Возвращаемый тип метода `greet` это `Unit`, используется тогда, когда не имеет смысла что-либо возвращать. Аналогично `void` в Java и C. Поскольку каждое выражение Scala должно иметь какое-то значение, то при отсутствии возвращающегося значения возвращается экземпляр типа Unit. Явным образом его можно задать как `()`, он не несет какой-либо информации.

Вы можете создать экземпляр класса используя ключевое слово `new`.
Вы можете создать экземпляр класса, используя ключевое слово `new`.

```tut
val greeter = new Greeter("Hello, ", "!")
Expand All @@ -201,15 +201,15 @@ greeter.greet("Scala developer") // Hello, Scala developer!

Позже мы рассмотрим классы [подробнее](classes.html).

## Классы образцы (Case Class)
## Классы-образцы (Case Class)

В Scala есть специальный тип класса, который называется классом образцом (case class). По умолчанию такие классы неизменны и сравниваются по значению из конструктора. Вы можете объявлять классы образцы с помощью ключевых слов `case class`.
В Scala есть специальный тип класса, который называется классом-образцом (case class). По умолчанию такие классы неизменны и сравниваются по значению из конструктора. Вы можете объявлять классы-образцы с помощью ключевых слов `case class`.

```tut
case class Point(x: Int, y: Int)
```

Можно создавать экземпляры класса образца без использования ключевого слова `new`.
Можно создавать экземпляры класса-образца без использования ключевого слова `new`.

```tut
val point = Point(1, 2)
Expand All @@ -233,11 +233,11 @@ if (point == yetAnotherPoint) {
} // Point(1,2) и Point(2,2) разные.
```

Есть еще много деталей, которые мы бы хотели рассказать про классы образцы, мы уверены, что вы влюбитесь в них! Обязательно рассмотрим их [позже](case-classes.html).
Есть еще много деталей, которые мы бы хотели рассказать про классы-образцы; мы уверены, что вы влюбитесь в них! Обязательно рассмотрим их [позже](case-classes.html).

## Объекты

Объекты задаются и существуют в единственным экземпляре. Вы можете думать о них как об одиночках (сингэлтонах) своего собственного класса.
Объекты задаются и существуют в единственном экземпляре. Вы можете думать о них как об одиночках (синглтонах) своего собственного класса.

Вы можете задать объекты при помощи ключевого слова `object`.

Expand All @@ -264,7 +264,7 @@ println(newerId) // 2

## Трейты

Трейты - как типы описывают характеристики классов, в нем могут объявляться определенные поля и методы. Трейты можно комбинировать.
Трейты как типы описывают характеристики классов, в нем могут объявляться определенные поля и методы. Трейты можно комбинировать.

Объявить трейт можно с помощью ключевого слова `trait`.

Expand All @@ -284,7 +284,7 @@ trait Greeter {
}
```

Вы можете наследовать свойства трейтов используя ключевое словом `extends` и переопределять реализацию с помощью ключевого слова `override`.
Вы можете наследовать свойства трейтов, используя ключевое слово `extends` и переопределять реализацию с помощью ключевого слова `override`.

```tut
class DefaultGreeter extends Greeter
Expand Down