Elixirul este un limbaj rapid, dinamic și scalabil, care devine rapid adoptat de mulțimea de pornire și de întreprinderile stabilite pentru aplicațiile de producție.
Pinterest, Brightcove, Discord și Canvas, pentru a numi câteva, toate rulează pe Elixir, care, la rândul său, utilizează Erlang VM cu toleranță redusă la erori, ceea ce înseamnă acces complet la ecosistemul Erlang folosit de companii precum Heroku, WhatsApp, Klarna și Basho.
Începând cu acest tutorial, veți învăța cunoștințele fundamentale pentru a vă începe în Erlang și a vă codifica cu Elixir.
Sintaxa este funcțională și promovează un stil de codare scurt, rapid, care permite utilizatorilor să absoarbă ușor datele lor:
% Utilizator nume: nume, vârstă: vârstă = User.get ("John Doe") nume # => "John Doe"
Când sunt combinate cu gărzi, avem o structură puternică:
def serve_drinks (% Utilizator vârstă: vârstă) atunci când vârsta> = 21 nu # Cod care servește băuturi! end serve_drinks User.get ("John Doe") # => Eșuează dacă utilizatorul este sub 21 de ani
Afirmativ; Elixirul a fost construit cu ajutorul sistemelor scalabile și distribuite.
Elixir are o execuție filetată (denumită procesare) într-un mediu în care mai multe procese pot comunica între ele prin mesaje.
Aceste fire de greutate mică pot fi executate în sute de mii concomitent. Colectorul excelent al colectorului de gunoi Elixir funcționează pentru fiecare fir izolat, asigurând performanța optimă la nivel de sistem și împiedicând blocarea resurselor.
Elixirul are supraveghetorilor
care poate reporni părți ale sistemului, dacă lucrurile nu merg bine și vă revin sistemul într-o stare inițială despre care se știe că funcționează.
Instalați Elixir pe mașina dvs. înainte de a continua:
bea actualizare
brew install elixir
sudo port instala elixir
pacman -S elixir
zypper ar -f http://download.opensuse.org/repositories/devel:/languages:/erlang/openSUSE_Factory/ erlang
zypper în elixir
emerge --ask dev-lang / elixir
guix pachet -i elixir
yum install elixir
cd / usr / ports / lang / elixir && faceți instalare curată
pkg install elixir
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb&& & sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update
sudo apt-get instalează esl-erlang
sudo apt-get instalează elixiru
elixir cinstice
Elixirul are un mod interactiv, pe care îl putem accesa prin linia de comandă așa cum este:
$ iex Interactive Elixir - apăsați Ctrl + C pentru a ieși (tastați h () ENTER pentru ajutor) iex> c "my_file.ex" # Compilează un fișier iex> t Enum # Tipuri de tipărite definite în modulul Enum iex> h IEx.pry # Imprimă documentația pentru funcționalitatea IEx pry iex> i "Hello, World" # Tipărește informații despre tipul de date dat
Utilizatorii Windows vor trebui să ruleze iex.bat
pentru a accesa consola interactivă.
Când intrăm în acest mod, putem introduce orice Elixir
cod și obțineți întoarcerea instantaneu, deci este bine să începeți să învățați limba.
Să facem câteva expresii de bază:
ie> 2 + 2 4 ie> rundă (3.58) 4 iex> "salut" <> "lume" "hello world"
Când rulam un scenariu, facem asta din terminalul shell ca atare:
$ elixir scriptName.exs
Pentru a extrage dintr-un script la terminal, trebuie să folosim următoarele IO
clasă:
IO.puts "Hello world from Elixir"
Modulele sunt disponibile pentru Elixir, astfel încât dezvoltatorii să poată extinde limba în multe feluri.
Iată un exemplu de utilizare a schemei de testare Elixir ExUnit:
defmodule MathTest nu folosesc ExUnit.Case, async: adevărat test "poate adăuga două numere" nu afirmă 1 + 1 == 2 end end
Puteți efectua testele în paralel prin setare async: true
. În acest context, Elixir folosește cât mai multe nuclee de CPU.
Între timp, afirma
poate verifica dacă există defecțiuni în codul dvs. Aceste caracteristici sunt construite folosind macro-uri Elixir, făcând posibilă adăugarea de noi construcții noi, ca și cum ar fi fost parte a limbajului Elixir în sine, ceea ce înseamnă o personalizare totală indiferent de productivitate (testarea unității în acest caz).
Elixir este un limbaj puternic și versatil folosit de unele dintre cele mai mari aplicații din lume chiar acum. Timpurile sale rapide de compilare, procese ușoare cu filet, extensibilitate cu module DSL și toleranță la defecțiuni supraveghetor
îl fac ideal pentru orice echipă serioasă de dezvoltare web. În mod evident, când Elixir este utilizat pe deplin, există câștiguri masive care trebuie făcute.
În următoarea parte, vom continua cu tipurile de date disponibile despre Elixir și despre modul în care vom scrie mai multe coduri și vom ajunge în sfârșit la compilarea acestora!