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

translate introduction-to-mix #5

Merged
merged 7 commits into from
Jul 15, 2017
Merged

Conversation

Zabalkanskiy
Copy link
Contributor

No description provided.


В этом руководстве мы научимся создавать полноценные приложения `elixir`, с деревом надзора(supervisor), конфигурацией, тестами и многим другим.

Приложение работает в качестве распределенного хранилища ключ-значение(key-value). Мы собираемся организовать пары ключзначение в buckets(перевод ведра) и распространять эти buckets по нескольким узлам(nodes). Мы также построимпростой клиент, который позволит подключаться к любому из узлов,а также посылать запросы, такие как:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не хватает пары дефиса и пробела: "ключзначение" и "построимпростой". Перед союзом "а" нет пробела


* ***Mix*** представляет собой инструмент для сборки, который поставляется вместе с `elixir`, решает задачи по созданию, компиляции, тестированию вашего приложения, управлению его зависимостями и многое другое;

* ***ExUnit*** is a test-unit based framework that ships with Elixir;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Осталась оригинальная строка


* ***ExUnit*** is a test-unit based framework that ships with Elixir;

* ***ExUnit*** framework поставляемый с `elixir` который позволяет тестировать(test-unit) приложение;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ExUnit - фрэймворк для модульного тестирования, который поставляется вместе с Эликсиром.


В этой главе мы создадим наш первый проект с использованием `Mix` и исследуем различные особенности в <abbr title="Open Telecom Platform"> OTP, `Mix` и `ExUnit`, давайте начнем.

>Примечание: это руководство требует elixir v1.2.0 или более поздней версии. Вы можете проверить свою версию `elixir` введя в терминале `elixir ‐‐version` и установить более свежую версию, если требуется, выполните действия, описанные в первой главе "Начало работы"(introduction) руководства.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Деепричастный оборот "введя в терминале elixir ‐‐version" следует выделить запятыми с обеих сторон


## Наш первый проект

При установке Elixir, кроме получения `elixir` , `elixirc` и `iex` исполняемых файлов, вы также получаете исполняемый Elixir сценарий `mix`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лишний пробел после elixir.
"кроме получения elixir , elixirc и iex исполняемых файлов" звучит на мой вкус как прямой перевод гуглотранслэйта, порядок слов в предложении явно с английского. "кроме получения исполняемых файлов elixir, elixirc и iex" было бы лучше.


Mix поддерживает концепцию “Окружений”. Они позволяют разработчику настроить компиляцию и другие опции для конкретных сценариев. По умолчанию, Mix понимает три окружения:

* `:dev` - в которой Mix задания(tasks) (как `compile` ) запускаются по умолчанию
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лишний пробел перед закрывающейся скобкой

end
```

При компиляции исходного кода, Elixir собирает артефакты в каталог `_build` . Однако, во многих случаях, чтобы избежать ненужного копирования, Elixir будет создать системные ссылки filesystem links) из папки `_build` к реальным исходным файлам. Если значение равно True, `:build_embedded` отключает это поведение, так как он призван обеспечить все необходимое, чтобы запустить приложение внутри каталога `_build`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Elixir -> Эликсир
Не понятно, откуда закрывающаяся скобка после "links"


При компиляции исходного кода, Elixir собирает артефакты в каталог `_build` . Однако, во многих случаях, чтобы избежать ненужного копирования, Elixir будет создать системные ссылки filesystem links) из папки `_build` к реальным исходным файлам. Если значение равно True, `:build_embedded` отключает это поведение, так как он призван обеспечить все необходимое, чтобы запустить приложение внутри каталога `_build`.

Аналогично, при значении :start_permanent True функция запускает приложение в режиме постоянной работы, что означает, что Erlang VM рухнет, если ваше древо надзора(supervision tree) приложения выключается. Заметьте, мы не хотим, чтобы такое поведение было в разработке и тестировании, потому что мы хотим сохранить работающий экземпляр виртуальной машины для устранения неполадок.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Двойной пробел после "при значении"
"при установленном в True значении :start_permanent, функция..."

> set "MIX_ENV=prod" && mix compile
```

Mix это инструмент построения и он не всегда будет доступен в продакшн, особенно если ваша команда использует явные шаги построения приложений. Поэтому рекомендуется использовать `Mix.env` только в файлах конфигурации и внутри `mix.exs` , и никогда в коде приложения (`lib`).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Тире перед "это" в самом начале
Запятая после "построения"
"построения" -> "сборки"

```

Вы можете получить дополнительную информацию о конкретной задаче,
вызывая `mix help TASK`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лишний перевод каретки

@Zabalkanskiy
Copy link
Contributor Author

Спасибо за замечания исправлю

Copy link
Member

@rtrv rtrv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zabalkanskiy по мелким замечаниям и вопросам к текстам у меня всё, после этих правок можно мержить.
Сейчас в реквесте два перевода по разным темам, в последствии лучше в таких ситуациях делать два PR, чтобы в каждом контекстом был только один конкретный файл и неразрешенные вопросы по одному не мешали мержу другого


В этом руководстве мы научимся создавать полноценные приложения `elixir`, с деревом надзора(supervisor), конфигурацией, тестами и многим другим.

Приложение работает в качестве распределенного хранилища ключ-значение(key-value). Мы собираемся организовать пары ключ-значение в buckets(перевод ведра) и распространять эти buckets по нескольким узлам(nodes). Мы также построим простой клиент, который позволит подключаться к любому из узлов, а также посылать запросы, такие как:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Есть более мягкий вариант перевода buckets - корзины. Полагаю, при первом упоминании можно указать в скобках оригинальное слово/выражение, в последующих достаточно переведённого. Как в случае с ключ-значение и узлами в этом же абзаце.


>Примечание: это руководство требует elixir v1.2.0 или более поздней версии. Вы можете проверить свою версию `elixir` введя в терминале, `elixir ‐‐version`, и установить более свежую версию, если требуется, выполните действия, описанные в первой главе "Начало работы"(introduction) руководства.

>Полный код для этого Гайда вы можете найти в [репозитории](https://github.com/josevalim/kv_umbrella)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Гайда - руководства?


## Наш первый проект

При установке Elixir, кроме получения исполняемых файлов `elixir`, `elixirc` и `iex`, вы также получаете исполняемый Elixir сценарий `mix`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

При установке Эликсира, ... исполняемый Эликсир


Давайте кратко рассмотрим эти сгенерированные файлы.

> Примечание: Mix представляет собой исполняемый Elixir. Это означает, что для работы `mix` , вы должны иметь его в вашей переменной PATH. Если у вас его нет в PATH, вы можете запустить его из сценария, используя в качестве аргумента `elixir`:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

исполняемый Эликсир


В `mix.exs` также представлена закрытая функция `deps`, которая вызывается из функции `project`, которая определяет зависимости нашего проекта. Определение `deps` как отдельной функции не является обязательным, но это помогает держать конфигурацию проекта аккуратном виде.

Mix также создает в файле lib/kv.ex простой модуль определения:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"module defenition" в оригинале? Полагаю, имели ввиду "простое определение модуля"

end
```

При компиляции исходного кода, Elixir собирает артефакты в каталог `_build`. Однако, во многих случаях, чтобы избежать ненужного копирования, Elixir будет создать системные ссылки filesystem links из папки `_build` к реальным исходным файлам. Если значение равно True, `:build_embedded` отключает это поведение, так как он призван обеспечить все необходимое, чтобы запустить приложение внутри каталога `_build`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Эликсир собирает ... Эликсир будет


При компиляции исходного кода, Elixir собирает артефакты в каталог `_build`. Однако, во многих случаях, чтобы избежать ненужного копирования, Elixir будет создать системные ссылки filesystem links из папки `_build` к реальным исходным файлам. Если значение равно True, `:build_embedded` отключает это поведение, так как он призван обеспечить все необходимое, чтобы запустить приложение внутри каталога `_build`.

Аналогично, при установленном в True значении :start_permanent, функция запускает приложение в режиме постоянной работы, что означает, что Erlang VM рухнет, если ваше древо надзора(supervision tree) приложения выключается. Заметьте, мы не хотим, чтобы такое поведение было в разработке и тестировании, потому что мы хотим сохранить работающий экземпляр виртуальной машины для устранения неполадок.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Erlang VM - виртуальная машина Эрланга

подскажи пожалуйста как правильно мержить.  я делаю push к себе в ветку, потом захожу на сайт  и жму pull request. Как правильно делать что бы проблем не было?
@rtrv
Copy link
Member

rtrv commented Jul 14, 2017

LGTM. @jarosluv merge it if you have no remarks

@jarosluv jarosluv merged commit 53d5301 into wunsh:master Jul 15, 2017
@jarosluv
Copy link
Member

@Zabalkanskiy @rtrv Guys, thanks for your work!

@Zabalkanskiy You make pull requests right, but for better joint work experience you need to update your master branch before start to work on new issue and create separate branch for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants