Skip to content

Lacoz/elixir

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Elixir Showcase (vs PHP, JS, Python)

Táto zbierka obsahuje 50 malých príkladov, ktorých cieľom je demonštrovať silu, filozofiu a syntax programovacieho jazyka Elixir.

Aby bol prechod k Elixiru jednoduchší, každý príklad obsahuje ekvivalentný kód aj v ďalších troch populárnych jazykoch, ktoré používajú iné prístupy:

  • PHP (Objektovo-orientovaný/Procedurálny webový jazyk)
  • JavaScript (Dynamický asynchrónny jazyk, bežiaci na NodeJS)
  • Python (Dynamický interpretovaný jazyk orientovaný na čitateľnosť)

Štruktúra

Príklady sú očíslované a rozdelené do logických blokov, od úplných základov jazyka až po pokročilé možnosti distribuovaných systémov a fault-tolerant architektúry (OTP):

  • 01 - 10: Základy (dátové typy, immutability, pattern matching)
  • 11 - 20: Riadiace štruktúry (cond, case, with, kolekcie, Enum)
  • 21 - 30: Organizácia kódu (moduly, štruktúry, protokoly, správania, makrá)
  • 31 - 40: Konkurencia (procesy, zasielanie správ, Tasks, Agents, GenServer)
  • 41 - 50: Pokročilé koncepty (ETS tabuľky, node distribution, Phoenix)

V každom priečinku nájdeš súbory so zdrojovými kódmi pre všetky 4 jazyky (example.ex, example.php, example.js, example.py).

Ako spúšťať príklady

Väčšina základných príkladov (zo začiatku) sa dá spustiť priamo ako skripty:

cd elixir_showcase/01_variables_and_immutability

elixir example.ex
php example.php
node example.js
python3 example.py

Interaktívny režim (IEx)

Pre komplexnejšie príklady v Elixire (napr. definovanie GenServer-a v neskorších adresároch) je lepšie nahrať kód priamo do interaktívnej konzoly (REPL rýčka iex).

Spusti v danom priečinku IEx:

iex

A potom načítaj príslušný súbor modulov príkazom c:

iex(1)> c("example.ex")
[Math]
iex(2)> Math.add(2, 3)
5

Ako boli príklady vygenerované?

Zdrojové dáta a skripty generátora si môžeš nájsť v adresári scripts/. Ide o pomocné Python skripty, ktoré naplnili túto štruktúru z definovaných JSON dát.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors