Elixir è un linguaggio veloce, dinamico e scalabile che viene rapidamente adottato dal pubblico di startup e dalle aziende affermate per le applicazioni di produzione.
Pinterest, Brightcove, Discord e Canvas, per citarne alcuni, funzionano tutti su Elixir, che a sua volta sfrutta la Erlang VM a bassa latenza e fault-tolerant, ovvero l'accesso completo all'ecosistema Erlang utilizzato da aziende come Heroku, WhatsApp, Klarna e Basho.
A partire da questo tutorial, imparerai le conoscenze fondamentali per iniziare da solo in Erlang e programmare con Elixir.
La sintassi è funzionale e promuove uno stile di codifica breve e veloce, che consente agli utenti di astrarre facilmente i propri dati:
% Utente nome: nome, età: età = User.get ("John Doe") nome # => "John Doe"
Quando combinato con guardie, abbiamo una struttura potente:
def serve_drinks (% utente età: età) quando età> = 21 fa # codice che serve bevande! end serve_drinks User.get ("John Doe") # => Errore se l'utente ha meno di 21 anni
Affermativa; Elixir è stato realizzato pensando a sistemi scalabili e distribuiti.
Elixir presenta l'esecuzione con thread (denominata processi) in un ambiente in cui più processi possono comunicare tra loro tramite i messaggi.
Questi fili leggeri possono essere eseguiti a centinaia di migliaia in concomitanza. L'eccellente raccoglitore di elisir di Elixir funziona per ogni thread isolato, garantendo prestazioni ottimali a livello di sistema e prevenzione dei blocchi di risorse.
L'elisir ha Le autorità di vigilanza
che può riavviare parti del sistema se le cose vanno male e ripristinare il sistema in uno stato iniziale che è noto per funzionare.
Installa Elixir sul tuo computer prima di continuare:
preparare l'aggiornamento
preparare l'elisir
sudo port install elixir
pacman -S elisir
zypper ar -f http://download.opensuse.org/repositories/devel:/languages:/erlang/openSUSE_Factory/ erlang
zypper in elisir
emerge --ask dev-lang / elixir
pacchetto guix -i elisir
yum install elixir
cd / usr / ports / lang / elixir && make install clean
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 install esl-erlang
sudo apt-get install elixir
elisir cinetico
Elixir ha una modalità interattiva, alla quale possiamo accedere tramite il prompt della riga di comando in questo modo:
$ iex Interactive Elixir - premere Ctrl + C per uscire (digitare h () INVIO per aiuto) iex> c "my_file.ex" # Compila un file iex> t Enum # Stampa i tipi definiti nel modulo Enum iex> h IEx.pry # Stampa la documentazione per la funzionalità della leva IEx iex> i "Hello, World" # Stampa informazioni sul tipo di dati specificato
Gli utenti di Windows dovranno essere eseguiti iex.bat
per accedere alla console interattiva.
Quando entriamo in questa modalità, possiamo digitare qualsiasi Elisir
codice e ottenere il ritorno istantaneamente, quindi è bene iniziare a imparare la lingua.
Facciamo alcune espressioni di base:
cioè> 2 + 2 4 cioè> rotondo (3.58) 4 iex> "ciao" <> "mondo" "ciao mondo"
Quando eseguiamo uno script, lo facciamo dal terminale di shell in questo modo:
$ elixir scriptName.exs
Per trasmettere da uno script al terminale, dobbiamo usare quanto segue IO
classe:
IO.puts "Hello world from Elixir"
I moduli sono disponibili per Elixir in modo che gli sviluppatori possano espandere la lingua in molti modi.
Ecco un esempio di utilizzo del framework di test di Elixir ExUnit:
defmodule MathTest usa ExUnit.Case, async: true test "può aggiungere due numeri" asserire 1 + 1 == 2 end end
È possibile eseguire i test in parallelo impostando asincrono: vero
. In questa impostazione, Elixir utilizza il maggior numero possibile di core CPU.
nel frattempo, affermare
può verificare errori di asserzione nel codice. Queste funzionalità sono create utilizzando macro Elixir, rendendo possibile l'aggiunta di interi nuovi costrutti come se fossero parte della stessa lingua di Elisir, il che significa personalizzazione totale per qualsiasi produttività (test dell'unità in questo caso) che potrebbe essere necessario.
Elixir è un linguaggio potente e versatile usato da alcune delle più grandi app del mondo in questo momento. Rapidi tempi di compilazione, processi filettati leggeri, estensibilità con i moduli DSL e tolleranza agli errori fornita con Supervisore
lo rendono ideale per qualsiasi serio team di sviluppo web. Chiaramente, quando Elixir è completamente utilizzato, ci sono enormi guadagni da realizzare.
Nella prossima parte, continueremo con i tipi di elisir di dati disponibili e su come scrivere altro codice, e alla fine arriveremo a compilarlo!