Διαδρομές
/
Elixir
Elixir
/
Ύλη
/
Βιβλιοθήκες Erlang
Βι

Βιβλιοθήκες Erlang σε Elixir

8 ασκήσεις

Σχετικά με την έννοια Βιβλιοθήκες Erlang

Ο κώδικας της Elixir εκτελείται στην εικονική μηχανή BEAM. Η BEAM αποτελεί μέρος του συστήματος χρόνου εκτέλεσης (Run-Time System) της Erlang. Εμπνευσμένη από την Erlang και μοιραζόμενη το περιβάλλον εκτέλεσής της, η Elixir προσφέρει εξαιρετική διαλειτουργικότητα με τις βιβλιοθήκες της Erlang. Αυτό σημαίνει ότι οι προγραμματιστές της Elixir μπορούν να χρησιμοποιούν βιβλιοθήκες της Erlang μέσα από τον κώδικά τους σε Elixir. Μάλιστα, η συγγραφή βιβλιοθηκών Elixir για λειτουργικότητα που παρέχεται ήδη από βιβλιοθήκες της Erlang αποθαρρύνεται στην κοινότητα της Elixir.

Κατά συνέπεια, ορισμένες λειτουργίες, όπως οι μαθηματικές πράξεις ή οι συναρτήσεις χρονοδιακόπτη, είναι διαθέσιμες στην Elixir μόνο μέσω της Erlang.

Αυτή η στενή σχέση ανάμεσα στην Elixir και την Erlang σημαίνει ότι, για να γίνεις ένας ικανός προγραμματιστής Elixir, ίσως θελήσεις να αφιερώσεις λίγο χρόνο για να μάθεις τη βασική σύνταξη της Erlang.

Πώς να τη χρησιμοποιήσεις

Η πρότυπη βιβλιοθήκη της Erlang είναι διαθέσιμη για χρήση στον κώδικά μας σε Elixir χωρίς να χρειάζονται επιπλέον βήματα.

Οι συναρτήσεις της Erlang μπορούν να κληθούν με τον ίδιο τρόπο που καλούμε τις συναρτήσεις της Elixir, με μία μικρή διαφορά. Τα ονόματα των module της Erlang είναι atoms σε snake_case. Για παράδειγμα, για να καλέσεις τη συνάρτηση pi/0 της Erlang από το module math, θα έγραφες:

:math.pi()
# => 3.141592653589793

Τα πιο συχνά χρησιμοποιούμενα module της Erlang

Τα πιο συχνά χρησιμοποιούμενα module της Erlang παρέχουν λειτουργικότητα που λείπει από την πρότυπη βιβλιοθήκη της Elixir. Αυτά είναι:

  • Το module timer, το οποίο παρέχει συναρτήσεις όπως οι sleep/1, send_after/2 και send_interval/2.
  • Το module rand, το οποίο παρέχει συναρτήσεις όπως οι uniform/0, normal/0 και seed/2.
  • Το :io_lib.format/2, το οποίο παρέχει μορφοποίηση συμβολοσειρών σε στυλ C (με ακολουθίες ελέγχου).
  • Το module math, το οποίο παρέχει μαθηματικές συναρτήσεις όπως οι sin/1, cos/1, log2/1, log10/1, pow/2 και άλλες.
  • Το module queue, το οποίο παρέχει μια δομή δεδομένων ουράς.
  • Το module crypto, το οποίο παρέχει κρυπτογραφικές συναρτήσεις.
  • Το module zip, το οποίο παρέχει συναρτήσεις για εργασία με αρχεία zip.
  • Το module calendar, το οποίο παρέχει συναρτήσεις για εργασία με ημερομηνίες και ώρα, όπως η iso_week_number/1. Για να περάσεις μια δομή Date, Time ή NaiveDateTime σε κάποια από τις συναρτήσεις της Erlang, πρέπει να τη μετατρέψεις στη μορφή της Erlang με μια συνάρτηση to_erl από το αντίστοιχο module.

Για να ανακαλύψεις την πρότυπη βιβλιοθήκη της Erlang, εξερεύνησε το Εγχειρίδιο αναφοράς STDLIB.

Η διαλειτουργικότητα της Elixir με τις βιβλιοθήκες της Erlang δεν περιορίζεται στην πρότυπη βιβλιοθήκη της Erlang. Οποιαδήποτε βιβλιοθήκη της Erlang μπορεί να χρησιμοποιηθεί στον κώδικα της Elixir.

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα

Μάθε την έννοια Βιβλιοθήκες Erlang

Η εξάσκηση είναι κλειδωμένη

Ξεκλείδωσε 2 ακόμη ασκήσεις για να εξασκηθείς στην έννοια Βιβλιοθήκες Erlang