Elixir ist eine schnelle, dynamische und skalierbare Sprache, die von den Startups und etablierten Unternehmen gleichermaßen für Produktionsanwendungen verwendet wird.
Pinterest, Brightcove, Discord und Canvas, um nur einige zu nennen, laufen alle auf Elixir, was wiederum die fehlertolerante Erlang-VM mit niedriger Latenz nutzt, was den vollständigen Zugriff auf das Erlang-Ökosystem von Unternehmen wie Heroku, WhatsApp bedeutet. Klarna und Basho.
Beginnend mit diesem Tutorial erlernen Sie das grundlegende Wissen, um sich mit Erlang vertraut zu machen und mit Elixir zu programmieren.
Die Syntax ist funktional und fördert einen kurzen, schnellen Codierstil, der Benutzern eine einfache Abstraktion ihrer Daten ermöglicht:
% Benutzer Name: Name, Alter: Alter = User.get ("John Doe") Name # => "John Doe"
Wenn kombiniert mit Wachen, Wir haben eine starke Struktur:
def serve_drinks (% User Alter: Alter) Wenn Alter> = 21 ist # Code, der Getränke serviert! end serve_drinks User.get ("John Doe") # => Fehler, wenn der Benutzer unter 21 ist
Positiv; Elixir wurde für skalierbare, verteilte Systeme entwickelt.
Elixir bietet eine Thread-Ausführung (als Prozesse bezeichnet) in einer Umgebung, in der mehrere Prozesse über Nachrichten miteinander kommunizieren können.
Diese leichten Fäden können zu Hunderttausenden geführt werden gleichzeitig. Elixirs exzellenter Garbage-Collector funktioniert für jeden isolierten Thread. Er sorgt dafür, dass die Leistung systemweit optimal ist und verhindert, dass Ressourcen blockiert werden.
Elixier hat Vorgesetzte
Dies kann Teile Ihres Systems neu starten, wenn Probleme auftreten, und das System in einen Ausgangszustand zurückversetzen, von dem bekannt ist, dass es funktioniert.
Installieren Sie Elixir auf Ihrem Computer, bevor Sie fortfahren:
Brüh-Update
Brühinstallationselixier
sudo port install elixir
Pacman-Elixier
zypper ar -f http://download.opensuse.org/repositories/devel:/languages:/erlang/openSUSE_Factory/ erlang
Zypper im Elixier
emerge --ask dev-lang / elixier
Guix-Paket -i Elixier
yum install elixir
cd / usr / ports / lang / elixir && machen die Installation sauber
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
Cinst Elixier
Elixir hat einen interaktiven Modus, auf den wir über die Eingabeaufforderung zugreifen können:
$ iex Interaktives Elixier - Drücken Sie zum Beenden die Tastenkombination Strg + C (h () ENTER). iex> c "my_file.ex" # Kompiliert eine Datei iex> t Enum # Druckt die im Modul Enum iex> h IEx.pry definierten Typen # Gibt die Dokumentation für die IEx-Pry-Funktionalität aus. Iex> i "Hallo, Welt" # Gibt Informationen zum angegebenen Datentyp aus
Windows-Benutzer müssen laufen iex.bat
um auf die interaktive Konsole zuzugreifen.
Wenn wir in diesen Modus wechseln, können wir any eingeben Elixier
Code und erhalten Sie die Rückkehr sofort, so dass es gut ist, die Sprache zu lernen.
Lassen Sie uns einige grundlegende Ausdrücke machen:
dh> 2 + 2 4 ie> Runde (3,58) 4 iex> "Hallo" <> "Welt" "Hallo Welt"
Wenn wir ein Skript ausführen, machen wir das vom Shell-Terminal aus so:
$ elixir scriptName.exs
Für die Ausgabe von einem Skript an das Terminal müssen wir Folgendes verwenden IO
Klasse:
IO.puts "Hallo Welt von Elixir"
Für Elixir sind Module verfügbar, sodass Entwickler die Sprache auf viele Arten erweitern können.
Hier ist ein Beispiel für die Verwendung von Elixirs Test-Framework ExUnit:
defmodule MathTest verwendet ExUnit.Case, async: true test "kann zwei Zahlen hinzufügen". 1 + 1 == 2 Ende Ende
Sie können die Tests parallel ausführen, indem Sie festlegen async: wahr
. In dieser Einstellung verwendet Elixir so viele CPU-Kerne wie möglich.
inzwischen, behaupten
kann in Ihrem Code nach Assertionsfehlern suchen. Diese Funktionen werden mithilfe von Elixir-Makros erstellt. Dadurch können vollständige neue Konstrukte hinzugefügt werden, als ob sie Teil der Elixir-Sprache wären. Dies bedeutet vollständige Anpassung an die Produktivität, die Sie benötigen.
Elixir ist eine leistungsstarke und vielseitige Sprache, die derzeit von einigen der größten Apps der Welt verwendet wird. Schnelle Kompilierzeiten, leichte Threaded-Prozesse, Erweiterbarkeit mit DSL-Modulen und Fehlertoleranz Supervisor
Machen Sie es ideal für jedes seriöse Web-Entwicklungsteam. Wenn Elixir vollständig ausgenutzt ist, müssen natürlich erhebliche Gewinne erzielt werden.
Im nächsten Teil werden wir mit den verfügbaren Datentypen von Elixir und dem Schreiben von mehr Code fortfahren, und wir werden endlich mit dem Kompilieren beginnen!