Programiranje

Zakaj je jezik Rust v porastu

Verjetno še niste ničesar napisali v Rustu, odprtokodnem programskem jeziku na sistemski ravni, ki ga je ustvarila Mozilla, verjetno pa boste kdaj tudi storili. Razvijalci so Rusta okronali za svoj "najbolj priljubljeni" jezik v raziskavi razvijalcev Stack Overflow za leto 2019, medtem ko je Redmonkova polletna jezikovna lestvica pokazala, da je Rust prišel med 20 najboljših (uvrstitev # 21).

To kljub temu, da uporabniki Rusta "odkrijejo težave in frustracije zaradi zelo cenjenih lastnosti jezika zaradi varnosti in pravilnosti spomina."

Zakaj je jezik, za katerega je znano, da se ga je težko naučiti tako priljubljenega? Zdi se, da se v pogovorih z razvijalci odgovor nanaša na idejo, da je Rust "sistemi za programiranje z varovalnimi ograjami", kot opisuje tehnični direktor Oso Oso Sam Scott, pri čemer je ena od teh "varovalnih ograj" izjemno dobrodošla skupnost.

Sistemi za programiranje z varovalnimi ograjami

Večina razvijalcev običajno ne potuje na območje programskega programiranja. Razvijalcem aplikacij na primer ni treba, da se približujejo osnovni strojni opremi. Prav tako jim verjetno ni treba graditi platform, na katerih bo delovala druga programska oprema, ki je temeljni element sistemskega programiranja.

Za tiste razvijalce, ki delajo z nižjimi programskimi jeziki, kot sta C ali C ++, je Rust razodetje, nekaj, kar sem prvič obravnaval leta 2015. Vendar pa nekaj let naprej, Rust pa je vedno boljši.

Na zahtevo, da podrobno opiše glavne prodajne točke Rusta, razvijalec David Barsky ponuja naslednje:

  • Performant. Rust lahko nadomesti C / C ++ v prostorih, v katerih je običajno uspeval. Na primer: "Za omrežne storitve, občutljive na zakasnitve, Rustovo pomanjkanje runtov zaradi odvoza smeti skoraj ne obstaja."
  • Zanesljivo. "Njegov sistem za preverjanje tipa in izposojevalnik - statični zbiralnik smeti v času prevajanja - preprečuje celotne razrede napak, ki so v Pythonu, Javi in ​​C ++ sprejeti kot" običajni "."
  • Produktivnost razvijalcev. "Cargo, orodje za gradnjo in upravitelj paketov, je eden najboljših sistemov za gradnjo in upravitelje paketov, ki sem jih uporabljal." Rust ima tudi odlično vgrajeno dokumentacijo in odlično vgrajeno enoto, integracijo in testiranje dokumentacije.

Zdi se, da je izkušnja Barskega podobna Scottovi. Kot izhaja iz programskih jezikov na višji ravni (Java, Ruby on Rails), Scott pravi, da so bile njegove izkušnje s C manj kot prijetne: »C je bil grozen, ker sem se nenehno srečeval s težavami s spominom, napakami itd. In bolj ali manj se mi je zdelo, da sem se ves čas boril s kodo. "

Nasprotno pa je bila rja "sistemi za programiranje z varovalnimi ograjami". Scott pojasnjuje:

Nato sem poskusil z Rustom (pravkar se je obrnil 1.0) in zdelo se mi je, kot da programiram sisteme z varovalnimi ograjami. Vse, kar sem potreboval za programiranje sistemov na nizki ravni, vendar z veliko pomoči pri odpravljanju napak in kodi, da je koda varna - na primer preverjalnik izposoje in prevajalnik, nato pa kasneje še orodja, kot so poveznice (“clippy”). Ponudil je veliko znanih vidikov funkcionalnega in objektno usmerjenega programiranja in se mi je zdelo, da se ujema z mojim mentalnim modelom, kako želim graditi sisteme.

Kot soustanovitelj Osoja se Scott ni mogel izogniti programiranju na nižji ravni. Oso, katerega naloga je, da varnost zaledne infrastrukture postane nevidna za razvijalce in enostavna za operacijske sisteme, «potrebuje zmogljivost, ki jo ponuja sistemski jezik. "Ne moremo uporabljati zbranega jezika, kot je Go, ker zmogljivost ne bi bila dovolj dosledna za to, kar počnemo, saj sedimo na kritični poti prometa strank," je dejal Scott.

Vse to zveni čudovito, dokler se ne vrnemo k morebitni težavi pri pridobivanju talentov za razvijalce, ki so dobro podkovani v razmeroma novem jeziku. Vendar pa je dostopna nadarjenost Rustova najboljša lastnost.

Programerji rje so želeli

Ključna sestavina učenja novega je, da imamo ljudi, ki so pripravljeni pomagati pri prehodu. Tu zasije Rust. Kot pravi Barsky,

Skupnost Rust je polna strastnih, prijaznih in inteligentnih ljudi. Ima strogo uveljavljen kodeks ravnanja, kar pomeni, da nesramno ali nadlegovanje ni dovoljeno. Nenavadno je, da ima nekatere najvišje koncentracije LGBTQA ljudi, ki sem jih videl v kateri koli tehnološki skupnosti.

Ta skupnost je velik razlog, da lahko po mnenju Scotta razvijalci Rust poberejo v nekaj mesecih. Rust "zahteva nekaj sprememb v miselnosti," pravi. "Več vnaprej morate razpravljati o stvareh, kot so življenjska doba." Ko pa pridete tja, se "izplača dividenda."

Zato ni čudno, da toliko razvijalcev obožuje Rust. Navzgor je velik, negativne strani pa zmanjša Rustova gostoljubna in vključujoča skupnost.

$config[zx-auto] not found$config[zx-overlay] not found