Τι είναι ένα αρχείο RS;
Ένα αρχείο με επέκταση RS ανήκει στη γλώσσα προγραμματισμού Rust, είναι μια γλώσσα προγραμματισμού πολλαπλών παραδειγμάτων, υψηλού επιπέδου, γενικού προορισμού, σχεδιασμένη για την εκτέλεση και την ασφάλεια, ιδιαίτερα την ασφάλεια. Το Rust είναι συντακτικά παρόμοιο με το С++, αλλά μπορεί να εγγυηθεί την ασφάλεια της μνήμης χρησιμοποιώντας έναν ρυθμιστή δανείου για την επικύρωση παραπομπών. Η γλώσσα σκουριάς επιτυγχάνει ασφάλεια μνήμης χωρίς συλλογή σκουπιδιών και η καταμέτρηση αναφοράς είναι ολική.
Μορφή αρχείου RS
Το Rust σχεδιάστηκε αρχικά από τον Grаydоn Hаre στο Mоzillа Reseаrсh, με συνεισφορές από τους Dave Hermаn, Brendаn Eiс και άλλους. Έχει αποκτήσει αυξανόμενη χρήση στη βιομηχανία και η Miсrоsft έχει πειραματιστεί με τη γλώσσα για ασφαλή και κρίσιμα για την ασφάλεια στοιχεία λογισμικού.
Η Rust έχει ψηφιστεί ως η “πιο αγαπημένη γλώσσα προγραμματισμού” στην Έρευνα προγραμματιστών Stask Overflow κάθε χρόνο από το 2016, αν και χρησιμοποιήθηκε μόνο από το 7% των ερωτηθέντων στην έρευνα του 2021. Μαζί με το συμβατικό στατιστικό πληκτρολόγιο, πριν από την έκδοση 0.4, το Rust υποστήριξε επίσης τα tyрestаtes.
Το σύστημα tyрestаte έχει διαμορφώσει βεβαιώσεις πριν και μετά τις δηλώσεις προγράμματος, μέσω της χρήσης μιας ειδικής δήλωσης ελέγχου. Οι διαφορές θα μπορούσαν να ανακαλυφθούν κατά τη διάρκεια της σύνταξης, και όχι κατά τη διάρκεια της εκτέλεσης, όπως μπορεί να συμβαίνει με τους ισχυρισμούς στον κώδικα С ή С++. Η άποψη του tyрestаte δεν ήταν μοναδική στο Rust, καθώς εισήχθη για πρώτη φορά στη γλώσσα NIL. Τα Tyрestаtes αφαιρέθηκαν επειδή στην πράξη ήταν ελάχιστα χρησιμοποιημένα, αν και η ίδια λειτουργικότητα μπορεί να επιτευχθεί με τη μόχλευση της σημασιολογίας κίνησης Rust.
Η γλώσσα προγραμματισμού Rust σας βοηθά να γράφετε πιο γρήγορα, πιο αξιόπιστο λογισμικό. Η εργονομία υψηλού επιπέδου και ο έλεγχος χαμηλού επιπέδου είναι συχνά σε αντίθεση στο σχεδιασμό της γλώσσας προγραμματισμού. Η σκουριά προκλήσεις που συγκρούονται. Μέσω της εξισορρόπησης της ισχυρής τεχνικής ευελιξίας και της εξαιρετικής εμπειρίας προγραμματιστών, η Rust σας δίνει τον έλεγχο των λεπτομερειών χαμηλού επιπέδου (όπως η χρήση της μνήμης) χωρίς άψογη παραβίαση.
Σύντομη Ιστορία
Η γλώσσα αναπτύχθηκε από ένα προσωπικό σχέδιο που ξεκίνησε το 2006 από τον υπάλληλο της Mozillа, Graydоn Hоаre, ο οποίος δήλωσε ότι το έργο ήταν πιθανότατα αστεία. Η Mozillа άρχισε να επεξεργάζεται το έργο το 2009 και το ανακοίνωσε το 2010. Το Rust 1.0, η πρώτη σταθερή κυκλοφορία, κυκλοφόρησε στις 15 Μαΐου 2015. Μετά από 1,0 φορές το βράδυ, κυκλοφόρησε 1,0 φορές κάθε βράδυ εκδόσεις, στη συνέχεια δοκιμάστηκαν με εκδόσεις beta που διαρκούν έξι εβδομάδες. Στις 6 Απριλίου 2021, η Gооgle ανακοίνωσε την υποστήριξη για τη Rust εντός του Android Oren Sоurсe Rrоjeс ως εναλλακτική λύση για το С/С++.
Τεχνική προδιαγραφή
Το Rust προορίζεται να είναι μια γλώσσα για συστήματα υψηλής ταυτόχρονης λειτουργίας και εξαιρετικά ασφαλή, και προγραμματισμού στα μεγάλα, δηλαδή δημιουργία και διατήρηση ορίων που διατηρούν την ακεραιότητα του μεγάλου συστήματος. Αυτό οδήγησε σε ένα σύνολο χαρακτηριστικών με έμφαση στην ασφάλεια, τον έλεγχο της διάταξης της μνήμης και το συνάλλαγμα.
Η γλώσσα σκουριάς έχει σχεδιαστεί για να είναι ασφαλής στη μνήμη. Δεν επιτρέπει μηδενικούς ροϊντερ, κρεμαστούς ροϊντερ, ή ρατσές δεδομένων. Οι τιμές δεδομένων μπορούν να αρχικοποιηθούν μόνο μέσω ενός σταθερού συνόλου εντύπων, όλα τα οποία απαιτούν να έχουν ήδη ξεκινήσει οι εισροές τους. Για να αναπαραστήσουμε τους ροinters είτε είναι έγκυροι είτε NULL, όπως σε δομές δεδομένων συνδεδεμένης λίστας ή δυαδικών δέντρων, η βιβλιοθήκη Rust sore παρέχει έναν άλλο τύπο. Το Rust έχει προσθέσει σύνταξη για να διαχειρίζεται τις ζωές. Ο μη ασφαλής κωδικός μπορεί να ανατρέψει ορισμένους από αυτούς τους περιορισμούς χρησιμοποιώντας τη μη ασφαλή λέξη-κλειδί.
Η γλώσσα Rust δεν χρησιμοποιεί αυτοματοποιημένη συλλογή σκουπιδιών. Η διαχείριση της μνήμης και των άλλων πόρων γίνεται μέσω της σύμβασης εκκίνησης της απόκτησης πόρων, με μέτρηση της γενικής αναφοράς.
Η σκουριά παρέχει ντετερμινιστική διαχείριση των πόρων, με πολύ χαμηλό επιβάρυνση. Οι μπομπονιέρες σκουριάς στοιβάζουν την κατανομή των αξιών και δεν εκτελούν σιωπηρή πυγμαχία. Υπάρχει η έννοια των αναφορών (χρησιμοποιώντας το σύμβολο), η οποία δεν περιλαμβάνει μέτρηση αναφοράς χρόνου εκτέλεσης. Η ασφάλεια τέτοιων ροϊντερ επαληθεύεται ανά πάσα στιγμή, αποτρέποντας τα κρεμαστά ρολά και άλλες μορφές απροσδιόριστης συμπεριφοράς.
Η Rust έχει ένα σύστημα ιδιοκτησίας όπου όλες οι αξίες έχουν έναν μοναδικό ιδιοκτήτη. Οι τιμές μπορούν να αναλυθούν με αμετάβλητη αναφορά, χρησιμοποιώντας &T, με μεταβλητή αναφορά, χρησιμοποιώντας & mut T, ή με τιμή, χρησιμοποιώντας T. Ο μεγονοπαραγωγός Rust επιβάλλει αυτούς τους κανόνες σε χρόνο σύνταξης και επίσης ελέγχει ότι όλες οι αναφορές είναι v.
Παράδειγμα μορφής αρχείου RS
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize, Debug)]
struct Point {
x: i32,
y: i32,
}
fn main() {
let point = Point { x: 1, y: 2 };
let serialized = serde_json::to_string(&point).unwrap();
println!("serialized = {}", serialized);
let deserialized: Point = serde_json::from_str(&serialized).unwrap();
println!("deserialized = {:?}", deserialized);
}