-
Notifications
You must be signed in to change notification settings - Fork 11
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
Перевод methods.article #12
Conversation
Начал переводить страницы про интерфейсы.
…translation of "itself" in the syntax section
Pointer receiver is translated as "приёмник-указатель"
content/methods.article
Outdated
Go does not have classes. | ||
However, you can define methods on types. | ||
В Go нет классов. | ||
Впрочем, вы можете определять методы на типах. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А как вам перевод "методы на типах" -> "методы для типов"?
content/methods.article
Outdated
That is, as a convenience, Go interprets the statement `v.Scale(5)` as | ||
`(&v).Scale(5)` since the `Scale` method has a pointer receiver. | ||
Для оператора `v.Scale(5)`, даже если `v` это значение, а не указатель, | ||
метод с приемником-указателем, вызовется автоматичестки. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"метод с приемником-указателем, вызовется автоматичестки."
"автоматически", без "т" и последняя запятая вроде бы не нужна.
content/methods.article
Outdated
@@ -1,387 +1,559 @@ | |||
Methods and interfaces | |||
This lesson covers methods and interfaces, the constructs that define objects and their behavior. | |||
Методы и итерфейсы |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
иНтерфейсы
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
опечатки
content/methods.article
Outdated
|
||
Методы с приемником-указателем могут изменять значение, на которое указывает | ||
приемник (как здесь делает `Scale`). | ||
Поскольку часто необходимо в методах изменять приемник, более распростарнен приемник-указатель, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
распростРАнен, приемникА
content/methods.article
Outdated
|
||
.play methods/methods-pointers-explained.go | ||
|
||
* Methods and pointer indirection | ||
* Методы и косвеность указателей |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
косвеННость
content/methods.article
Outdated
|
||
.play methods/indirection.go | ||
|
||
* Methods and pointer indirection (2) | ||
* Методы и косвеность указателей (2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
косвеННость
content/methods.article
Outdated
(We'll see why over the next few pages.) | ||
В общем, у всех методов для данного типа приемник должен быть либо значением, либо указателем, | ||
но не смесью того и другого. | ||
(Мы увидим почему на следущих страницах.) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
следуЮщих
content/methods.article
Outdated
|
||
Implicit interfaces decouple the definition of an interface from its | ||
implementation, which could then appear in any package without prearrangement. | ||
Неявные интерфейсы разделяют определение интерфеса от его реализации, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
интерфеЙса
content/methods.article
Outdated
This statement asserts that the interface value `i` holds the concrete type `T` | ||
and assigns the underlying `T` value to the variable `t`. | ||
Этот оператор утверждает, что значение интерфеса `i` имеет конкретный тип `T` | ||
и присваевает значение типа `T` переменной `t`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
присваИвает
content/methods.article
Outdated
switch specify types (not values), and those values are compared against | ||
the type of the value held by the given interface value. | ||
Switch по типу - это как обычная инструкция switch, но в разделах case указываются | ||
типы (не значения), и эти типы сравниваются с типом передоваемого значения, хранящегося в |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
передАваемого
content/methods.article
Outdated
|
||
Functions often return an `error` value, and calling code should handle errors | ||
by testing whether the error equals `nil`. | ||
Функции часто возвращают значение `error`, и вызываютщий код должен обрабатывать |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"вызывающий" без "т"
content/methods.article
Outdated
|
||
`Sqrt` should return a non-nil error value when given a negative number, as it doesn't support complex numbers. | ||
`Sqrt` должна возвращать ненулевую ошибку, если ей передано отрицательное число, поскольку | ||
она не поддерживает комплекстные числа. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"комплексные" без "т"
content/methods.article
Outdated
`Read` populates the given byte slice with data and returns the number of bytes | ||
populated and an error value. It returns an `io.EOF` error when the stream | ||
ends. | ||
`Read` заполняет данными переданный слайс байт и возвращает количетсво заполнненных байт |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
количеСТво, заполненных (одна "н" в первом случае)
content/methods.article
Outdated
|
||
In this example, the `Abs` method has a receiver of type `Vertex` named `v`. | ||
В этом примере метод `Abs` имеет приемник типа` Vertex` с именем `v`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
типа `Vertex` . Пробел не там
content/methods.article
Outdated
`(&v).Scale(5)` since the `Scale` method has a pointer receiver. | ||
Для оператора `v.Scale(5)`, даже если `v` это значение, а не указатель, | ||
метод с приемником-указателем, вызовется автоматичестки. | ||
То есть, для удобства, Go интерпретирует оператор `v.Scale(5)` как `(&v).Scale(5)`, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"для удобства Go ..." вроде бы запятая не нужна
content/methods.article
Outdated
|
||
Functions that take a value argument must take a value of that specific type: | ||
Функции, которые принимают аргумент по значению должны получать значение этого конкретного типа: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"...аргумент по значению, должны ..." вроде бы нужна запятая
content/methods.article
Outdated
Implicit interfaces decouple the definition of an interface from its | ||
implementation, which could then appear in any package without prearrangement. | ||
Неявные интерфейсы разделяют определение интерфеса от его реализации, | ||
которая в последствии может появится в любом пакете без необходимости |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
появитЬся
content/methods.article
Outdated
|
||
Under the covers, interface values can be thought of as a tuple of a value and a | ||
concrete type: | ||
Под капотом, интерфейс можно рассматривать как кортеж из значения и конкретного типа: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Под капотом интерфейс" вроде бы не нужна запятая
content/methods.article
Outdated
|
||
If `i` does not hold a `T`, the statement will trigger a panic. | ||
Если `i` не типа `T`, оператор вызовет панику. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"не имеет типа `T`" пропущен глагол.
content/methods.article
Outdated
|
||
Эта инструкция switch проверяет, имеет ли интерфейсное значение `i` | ||
тип `T` или `S`. | ||
В каждом из case `T` и `S`, переменная будет иметь тип `T` or `S` соответственно |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"В каждом из case `T` и `S` переменная `v` будет иметь тип `T` или `S` соответственно и значение, равное значению `i`" вроде бы так немножко понятнее.
content/methods.article
Outdated
A `Stringer` is a type that can describe itself as a string. The `fmt` package | ||
(and many others) look for this interface to print values. | ||
`Stringer` - это тип, который может описать себя как строку. Пакет `fmt` (и многие другие) | ||
ищут этот интерфейс для печати значений. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"ищЕт" вроде бы, т.к. речь идет о пакете fmt.
content/methods.article
Outdated
|
||
*Note:* a call to `fmt.Sprint(e)` inside the `Error` method will send the program into an infinite loop. You can avoid this by converting `e` first: `fmt.Sprint(float64(e))`. Why? | ||
*Примечание* вызов `fmt.Sprint(e)` внутри метода `Error` приведет к бесконечному циклу. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"*Примечание*: ..." пропущено двоеточие
Поправил |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Нашел еще немного.
content/methods.article
Outdated
@@ -380,8 +379,7 @@ Switch по типу - это как обычная инструкция switch, | |||
|
|||
Эта инструкция switch проверяет, имеет ли интерфейсное значение `i` | |||
тип `T` или `S`. | |||
В каждом из case `T` и `S`, переменная будет иметь тип `T` or `S` соответственно | |||
и значение, хранящееся в `i`. | |||
В каждом из case `T` и `S` переменная `v` будет иметь тип `T` или `S` соответственно и значение, равное значению `i` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
точку в конце забыли
content/methods.article
Outdated
|
||
Эта инструкция switch проверяет, имеет ли интерфейсное значение `i` | ||
тип `T` или `S`. | ||
В каждом из case `T` и `S` переменная `v` будет иметь тип `T` или `S` соответственно и значение, равное значению `i` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
забыли точку в конце
content/methods.article
Outdated
|
||
.play methods/methods-funcs.go | ||
|
||
* Methods continued | ||
* Методы. Продолжение. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
вроде бы точка в последнем предложении заголовков не ставится.
|
||
Методы с приемником-указателем могут изменять значение, на которое указывает | ||
приемник (как здесь делает `Scale`). | ||
Поскольку часто необходимо в методах изменять приемник, более распространен приемник-указатель, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В винительном падеже без "а":
http://dicti.info/page/priemnik.php
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Да, вы правы. В голове застрял "преемник".
Issue #8 |
No description provided.