Rust a fost votat cel mai iubit limbaj de programare al Stack Overflow timp de cinci ani la rând. Acest articol vă va spune de ce Rust este minunat.

Rugina este o limbaj de programare a sistemelor pe care îl puteți utiliza pentru a scrie aplicații cu performanțe ridicate. Rust este folosit de unele dintre companiile de top din domeniul tehnologiei, cum ar fi Dropbox și Cloudflare, pentru a oferi rapiditate și concurență clienților lor.

În ultimii cinci ani la rând, Rust a fost votat drept cel mai iubit limbaj de programare.

Dar sunt șanse, poate că nu ai fi lucrat cu Rust. Sau, mai rău, s-ar putea să nu fi auzit de asta înainte. Deci, să învățăm mai multe despre asta.

Rugina pentru incepatori Incepeti cu cel mai iubit limbaj
Sondaj StackOverflow 2020

De ce rugină?

Să vedem de ce un dezvoltator ar alege Rust.

Limbaje de programare tipice, cum ar fi Python și C ++, abstractizează o mulțime de detalii departe de dezvoltatori.

Dacă sunteți un dezvoltator junior care lucrează la o aplicație web simplă, este posibil să nu fie o problemă. Vrei doar să găsești o soluție la o problemă.

Pentru aplicațiile pe scară largă pe care milioane de utilizatori le vor folosi zilnic, abordarea „rezolvării problemelor” nu va funcționa. Mai mulți utilizatori consumă mai multe resurse de sistem. Și mai multe resurse înseamnă facturi mai mari pentru compania dvs.

Aici strălucește Rugina. Rust combină ușurința programării cu accesul la configurațiile de bază ale sistemului. Rugina este construită cu siguranță de memorie, concurență și securitate de la bază.

Rust este un „limbaj de programare a sistemelor care se concentrează pe viteză, siguranța memoriei și paralelism”.

Rugina este, de asemenea, considerată a fi o alternativă excelentă pentru C ++. Rugina oferă performanțe ridicate pe lângă faptul că vă ajută eliminați erorile obișnuite cauzate de limbi precum C ++.

Acum, că știi ce poate face Rust pentru tine, să ne uităm la Rust în detaliu.

Origini

Rust este un limbaj de programare open-source. A fost introdus pentru prima dată în lume în 2010 de Graydon Hoare, în timp ce lucra la Mozilla. La scurt timp după aceea, Mozilla a început să sponsorizeze acest proiect și este încă un contribuitor principal la Rust.

Rugina a început să câștige popularitate de-a lungul anilor. Chiar și Microsoft folosește Rust pentru a construi componente software sigure și critice pentru siguranță.

Caracteristici principale

Să ne uităm la câteva caracteristici de bază care fac Rust să iasă în evidență de alte limbaje de programare.

Performanţă

Rugina a fost construită pentru a fi de înaltă performanță de la bază. Rust oferă un control fin al gestionării memoriei și are o bibliotecă standard minimă.

1612138207 444 Rugina pentru incepatori Incepeti cu cel mai iubit limbaj
Sursa: Figma

Dacă te uiți la unele dintre valori partajate de Figma, au avut îmbunătățiri incredibile în performanță odată ce au trecut la Rust.

Amprenta redusă a memoriei Rust îl face, de asemenea, o alegere ideală pentru programarea sistemelor încorporate. Puteți utiliza Rust pentru a scrie software pentru dispozitive IoT, cum ar fi hub-uri de automatizare a casei, sisteme inteligente de securitate etc.

Securitate

Unul dintre motivele majore pentru care Microsoft a decis să facă root pentru Rust este securitatea sa.

Majoritatea vulnerabilităților din software-ul Microsoft s-au datorat gestionării deficitare a memoriei în C & C ++. Acest lucru a dus la exploate simple, dar puternice, cum ar fi Exploatare Buffer Overflow care stricase Windows de ani de zile.

Așadar, Microsoft a decis să caute cea mai bună alternativă la C ++. Și l-au găsit pe Rust.

Utilizarea Rust elimină o întreagă clasă de vulnerabilități de securitate din aplicațiile software. Acest lucru ajută companiile să construiască aplicații cu performanțe mai bune și securitate mai mare.

Concurență

Concurența este atunci când două sau mai multe activități încep, rulează și se finalizează în timp suprapus. Operațiunile bazei de date sunt un exemplu excelent pentru a explica concurența.

Când mii de utilizatori utilizează aplicația dvs. în același timp pentru a efectua acțiuni diferite, baza de date le gestionează simultan. Concurența este un concept cheie atunci când vine vorba de scalarea aplicațiilor.

Concurența și paralelismul sunt, de asemenea, integrate în Rust. Rugina rezolvă majoritatea problemelor de concurență în timpul compilării, utilizând conceptul de proprietăți. Aflați cum Rust gestionează concurența aici.

Lucrul cu Rust

Acum că înțelegeți caracteristicile de bază ale Rust, să scriem câteva linii de cod. Poti găsiți instrucțiunile de instalare aici dacă doriți să încercați Rust pe computer.

Să începem cu un simplu „Hello World!” funcţie.

// Main function
fn main() {
	println!("Hello World!");
}

Da. Cam asta e tot. Să încercăm să adăugăm două numere.

// Main function
fn main() {
	let a = 100;
    let b = 200;
    println!("Result is {}",a+b);
}

Din nou, destul de standard. Acum să vedem o operațiune matrice.

// Main function
fn main(){
	let arr:[i32;4] = [1,2,3,4];
    println!("array size is {}",arr.len());
}

Dacă vă uitați la linia 3, vom folosi „:[i32;4]”. Aici îi spunem lui Rust că declarăm o matrice de lungime 4 cu numere întregi de 32 de biți.

Declararea în detaliu a tipurilor de date este un factor cheie în îmbunătățirea performanței unui program. Ajutați compilatorul să economisească timp declarând în mod explicit ce tip de date urmează să atribuiți unei variabile.

Lăsați compilatorul să descopere tipul de date este unul dintre principalele motive pentru care întâmpinați probleme de performanță în timp ce vă scalați aplicația.

De asemenea, Rugina este un limbaj tipizat static, ceea ce înseamnă că trebuie să cunoască tipurile tuturor variabilelor la momentul compilării.

Deși Rust este sintactic similar cu C și C ++, nu lăsați simplitatea sa să vă păcălească. Rugina vine cu o curbă de învățare abruptă. Dar merită în totalitate odată ce înțelegeți bine elementele de bază.

Cine folosește rugina?

Acum, că aveți o bună înțelegere a ceea ce este rugina, să ne uităm la cine folosește rugina.

Microsoft

1612138207 842 Rugina pentru incepatori Incepeti cu cel mai iubit limbaj

Odată un adversar acerb al open source, Microsoft este acum un contribuitor pasionat la o serie de proiecte open-source. Proiectul lor de bază .net este unul dintre cele mai populare cadre open-source utilizate de dezvoltatori astăzi.

Microsoft a ales Rust pentru aplicații critice de securitate și performanță. Rugina este, de asemenea, utilizată pe scară largă în Azure, în special în Platforma IoT Edge pentru a rula aplicații AI pe dispozitive IoT.

Dropbox

1612138207 535 Rugina pentru incepatori Incepeti cu cel mai iubit limbaj

Dropbox folosește Rust pentru a-și îmbunătăți eficiența centrului de date. Rust alimentează acum serviciile de bază ale Dropbox, deservind peste 500 de milioane de utilizatori.

Dropbox a scris recent un articol detaliat despre cum și-au rescris motorul de bază.

În cuvintele lui Dropbox,

Rugina a fost un multiplicator de forță pentru echipa noastră, iar parierea pe Rust a fost una dintre cele mai bune decizii pe care le-am luat.

Rugina a fost, de asemenea, un factor care a contribuit la faptul că Dropbox și-a mutat infrastructura de la AWS la propriile sale centre de date.

Figma

1612138207 344 Rugina pentru incepatori Incepeti cu cel mai iubit limbaj

Figma este un instrument de proiectare și prototipare bazat pe cloud, pe care îl puteți utiliza în browserul dvs. Este un instrument excelent pentru proiectarea, crearea de prototipuri și exportul proiectelor în cod. Aflați mai multe despre Figma aici.

Concurența este crucială pentru un instrument de colaborare în care mulți utilizatori vor lucra la un singur design la un moment dat. Figma a folosit Rust pentru a scrie un server performant, care i-a ajutat să își scaleze produsul și să obțină performanțele pe care le căutau.

Iată articolul scris de Figma despre experiența lor cu Rust.

TL; DR

Rugina este un limbaj de programare a sistemelor care a fost votat ca Cele mai iubite limbaje de programare ale StackOverflow, patru ani la rând.

Rugina vă oferă control asupra detaliilor de nivel scăzut și oferă îmbunătățiri remarcabile în ceea ce privește viteza și stabilitatea.

A ajutat companii precum Dropbox, Figma și Microsoft să construiască aplicații mai bune pentru clienții lor.

Limbajul este adoptat din ce în ce mai mult de companiile care doresc să își scaleze aplicațiile cu performanțe și concurență mai ridicate. Sună interesant? Începeți să învățați rugina aici.


Scriu în mod regulat despre Machine Learning, Cyber ​​Security și DevOps. Vă puteți înscrie pentru buletin informativ săptămânal Aici.