Lessons: Intermediate

Building on upon our foundation these lessons introduce topics like concurrency, error handling, and interoperability.

Vlastné Mix Tasky

Vytváranie vlastných Mix taskov pre vaše Elixir projekty.

Interoperabilita s Erlangom

Jednou z výhod toho, že Elixir je postavený na základoch z Erlang VM (BEAM) je množstvo existujúcich knižníc, ktoré máme k dispozícii. Interoperabilita nám umožňuje používať tieto knižnice a štandardnú knižnicu Erlangu v našom Elixir kóde. V tejto lekcii sa pozrieme na to ako pristupovať k funkcionalite štandardnej knižnice a zároveň aj ku knižniciam tretích strán z Erlangu.

Spracovanie Chýb

Bežne môžeme vidieť pri funkciách návratovú hodnotu tuple {:error, reason}, ale Elixir podporuje aj výnimky a v tejto lekcii si ukážeme ako spracovávať chyby a rôzne mechanizmy ktoré máme k dispozícii.

Vo všeobecnosti je v Elixire konvenciou vytvárať funkciu example/1, ktorá vráti {:ok, result} alebo {:error, reason} a funkcia example!/1, ktorá vráti neobalený výsledok alebo vyvolá chybu.

Táto lekcia sa zameriava na spracovanie týchto chýb.

Spustiteľné súbory

Na to, aby sme mohli vytvoriť spustiteľné súbory v Elixire budeme používať escript. Escript vytvorí spustiteľný súbor, ktorý môže byť spustiteľný na akomkoľvek systéme, kde je nainštalovaný Erlang.

Konkurentnosť

Jednou z výhod Elixiru je jeho podpora konkurentnosti. Vďaka Erlang VM (BEAM), konkurentnosť v Elixire je jednodušia než by človek čakal. Model konkurentnosti sa spolieha na Actorov, ktorí predstavujú uzavretý proces, ktorý komunikuje s ostatnými procesmi pomocou odosielania správ.

V tejto lekcii sa pozrieme na konkurentné moduly, ktoré sú dodávané spolu s Elixirom. V nasledujúcej kapitole pokryjeme správania OTP, ktoré ich implementujú.