Skip to content

Commit

Permalink
Make the links lead to the corresponding language (elixirschool#634)
Browse files Browse the repository at this point in the history
  • Loading branch information
nscyclone committed Aug 24, 2016
1 parent 857513c commit a078fb6
Show file tree
Hide file tree
Showing 8 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion cn/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Supervisors 的魔力主要在 `Supervisor.start_link/2` 函数中,除了能

子进程使用列表和从 `Supervisor.Spec` 库中导进来的 `worker/3` 共同定义,其中 `worker/3` 函数接受模块名,参数列表,和其他选项作为自己的参数。在初始化的时候,`worker/3` 内部会调用 `start_link/3` ,并传进去刚才的参数列表。

使用在 [`OTP 并发`](/lessons/advanced/otp-concurrency) 课程中实现的 SimpleQueue,我们来测试一下:
使用在 [`OTP 并发`](/cn/lessons/advanced/otp-concurrency) 课程中实现的 SimpleQueue,我们来测试一下:

```elixir
import Supervisor.Spec
Expand Down
2 changes: 1 addition & 1 deletion gr/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ lang: gr

Οι διεργασίες παιδιά ορίζονται με τη χρήση μιας λίστας και της συνάρτησης `worker/3` που εισάγουμε από την ενότητα `Supervisor.Spec`. Η συνάρτηση `worker/3` δέχεται μια ενότητα, ορίσματα, και ένα σύνολο επιλογών. Υπόγεια, η `worker/3` καλεί τη `start_link/3` με τα ορίσματά μας κατά την αρχικοποίηση.

Ας αρχίσουμε χρησιμοποιώντας την ενότητα SimpleQueue από το μάθημα [Συγχρονισμός OTP](/lessons/advanced/otp-concurrency):
Ας αρχίσουμε χρησιμοποιώντας την ενότητα SimpleQueue από το μάθημα [Συγχρονισμός OTP](/gr/lessons/advanced/otp-concurrency):

```elixir
import Supervisor.Spec
Expand Down
4 changes: 2 additions & 2 deletions gr/lessons/advanced/typespec.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ lang: gr

## Εισαγωγή

Είναι συνηθισμένο να θέλετε να περιγράψετε τη διεπαφή της συνάρτησής σας. Φυσικά μπορείτε να χρησιμοποιήσετε τις [οδηγίες @doc](/lessons/basic/documentation), αλλά είναι μόνο πληροφορίες για άλλους προγραμματιστές που δεν ελέγχεται κατά τη ώρα της σύνταξης. Για αυτό το σκοπό η Elixir έχει τις οδηγίες `@spec` για να περιγράψει τις προδιαγραφές μιας συνάρτησης που θα ελεγχθεί από το συντάκτη.
Είναι συνηθισμένο να θέλετε να περιγράψετε τη διεπαφή της συνάρτησής σας. Φυσικά μπορείτε να χρησιμοποιήσετε τις [οδηγίες @doc](/gr/lessons/basic/documentation), αλλά είναι μόνο πληροφορίες για άλλους προγραμματιστές που δεν ελέγχεται κατά τη ώρα της σύνταξης. Για αυτό το σκοπό η Elixir έχει τις οδηγίες `@spec` για να περιγράψει τις προδιαγραφές μιας συνάρτησης που θα ελεγχθεί από το συντάκτη.

Πάντως, σε μερικές περιπτώσεις οι προδιαγραφές θα είναι αρκετά μεγάλες και περίπλοκες. Αν θέλετε να μειώσετε την πολυπλοκότητα, θέλετε να εισάγετε ορισμούς ειδικών τύπων. Η Elixir έχει τις οδηγίες `@type` για αυτό. Κατά τα άλλα, η Elixir παραμένει δυναμική γλώσσα. Αυτό σημαίνει ότι όλες οι πληροφορίες για τον ΄τυπο θα αγνοηθούν από το συντάκτη, αλλά θα χρησιμοποιηθούν από άλλα εργαλεία.

Expand Down Expand Up @@ -111,7 +111,7 @@ end

### Τεκμηρίωση τύπων

Το τελευταίο στοιχείο που χρειάζεται να συζητήσουμε είναι η τεκμηρίωση των τύπων μας. Όπως ξέρουμε από το μάθημα της [τεκμηρίωσης](/lessons/basic/documentation) έχουμε τις οδηγίες `@doc` και `@moduledoc` για να δημιουργήσουμε τεκμηρίωση για συναρτήσεις και ενότητες. Για την τεκμηρίωση των τύπων μπορούμε να χρησιμοποιήσουμε την `@typedoc`:
Το τελευταίο στοιχείο που χρειάζεται να συζητήσουμε είναι η τεκμηρίωση των τύπων μας. Όπως ξέρουμε από το μάθημα της [τεκμηρίωσης](/gr/lessons/basic/documentation) έχουμε τις οδηγίες `@doc` και `@moduledoc` για να δημιουργήσουμε τεκμηρίωση για συναρτήσεις και ενότητες. Για την τεκμηρίωση των τύπων μπορούμε να χρησιμοποιήσουμε την `@typedoc`:

```elixir
defmodule Examples do
Expand Down
2 changes: 1 addition & 1 deletion id/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Inti Supervisor adalah fungsi `Supervisor.start_link/2`. Di samping menjalankan

Proses-proses anak didefinisikan menggunakan sebuah list dan fungsi `worker/3` yang kita import dari `Supervisor.Spec`. Fungsi `worker/3` ini menerima sebuah modul, argumen, dan sekumpulang opsi. Di dalamnya `worker/3` memanggil `start_link/3` dengan argumen-argumen kita dalam inisialisasi.

Menggunakan SimpleQueue dari pelajaran [OTP Concurrency](/lessons/advanced/otp-concurrency) mari kita mulai:
Menggunakan SimpleQueue dari pelajaran [OTP Concurrency](/id/lessons/advanced/otp-concurrency) mari kita mulai:

```elixir
import Supervisor.Spec
Expand Down
2 changes: 1 addition & 1 deletion pl/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Cała „magia” nadzorców dzieje się w funkcji `Supervisor.start_link/2`. P

Procesy potomne są przekazywane jako lista do funkcji `worker/3`, zaimportowanej z `Supervisor.Spec`. Funkcja `worker/3` jako parametry przyjmuje moduł, argumenty wywołania oraz opcje. W praktyce funkcja `worker/3` wywołuje `start_link/3` przekazując do niej podane przez nasz argumenty.

Zmodyfikujmy przykład `SimpleQueue` z lekcji [Współbieżność OTP](/lessons/advanced/otp-concurrency):
Zmodyfikujmy przykład `SimpleQueue` z lekcji [Współbieżność OTP](/pl/lessons/advanced/otp-concurrency):

```elixir
import Supervisor.Spec
Expand Down
2 changes: 1 addition & 1 deletion pt/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ A magia de Supervisores está na função `Supervisor.start_link/2`. Além de in

Filhos são definidos usando uma lista e a função `worker/3` que nós importamos de `Supervisor.Spec`. A função `worker/3` pega um módulo, argumentos e um conjunto de opções. Por baixo dos panos, `worker/3` chama `start_link/3` com nossos argumentos durante a inicialização.

Usando o SimpleQueue da lição [OTP Concurrency](/lessons/advanced/otp-concurrency) vamos começar:
Usando o SimpleQueue da lição [OTP Concurrency](/pt/lessons/advanced/otp-concurrency) vamos começar:

```elixir
import Supervisor.Spec
Expand Down
2 changes: 1 addition & 1 deletion ru/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ lang: ru

Потомки определяются при помощи списка и функции `worker/3`, которую мы импортировали из `Supervisor.Spec`. Функция `worker/3` принимает модуль, аргументы и набор опций. Под капотом `worker/3` вызывает `start_link/3` с нашими аргументами во время инициализации.

Давайте начнём, используя SimpleQueue из урока [OTP Concurrency](/lessons/advanced/otp-concurrency):
Давайте начнём, используя SimpleQueue из урока [OTP Concurrency](/ru/lessons/advanced/otp-concurrency):

```elixir
import Supervisor.Spec
Expand Down
2 changes: 1 addition & 1 deletion vi/lessons/advanced/otp-supervisors.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The magic to Supervisors is in the `Supervisor.start_link/2` function. In addit

Children are defined using a list and the `worker/3` function we imported from `Supervisor.Spec`. The `worker/3` function takes a module, arguments, and a set of options. Under the hood `worker/3` calls `start_link/3` with our arguments during initialization.

Using the SimpleQueue from the [OTP Concurrency](/lessons/advanced/otp-concurrency) lesson let's get started:
Using the SimpleQueue from the [OTP Concurrency](/vi/lessons/advanced/otp-concurrency) lesson let's get started:

```elixir
import Supervisor.Spec
Expand Down

0 comments on commit a078fb6

Please sign in to comment.