Mellékleteink: HUP | Gamekapocs
Keres
Felhőből visszaköltözéstől egészen egy banki malware evolúciójáig. Üzemeltetői és IT-biztonsági meetupokkal érkezünk!

Megérkezett a Rust 1.0

Hlács Ferenc, 2015. május 18. 16:40
Ez a cikk több évvel ezelőtt születetett, ezért előfordulhat, hogy a tartalma már elavult.
Frissebb anyagokat találhatsz a keresőnk segítségével:

Bejelentette saját fejlesztésű programozási nyelvének első stabil, 1.0-s verzióját a Mozilla. A Rust névre keresztelt nyelv sokat merít más megoldásokból, az a fejlesztők szerint a kezdők és a tapasztalt programozóknak is kedvez majd.

hirdetés

Mérföldkőhöz érkezett a Mozilla által fejlesztett nyílt forrású Rust: a szervezet a napokban jelentette be a programozási nyelv 1.0-s verzióját, így a fejlesztők végre komolyan használatba vehetik azt. A készítők célja, hogy megoldásukkal alacsony szintű hozzáférést irányítást biztosítsanak a teljesítményéhes komponensek esetében, ezt a magas szintű megoldások kényelmével és biztonságával párosítva.

A statikus nyelvek közé tartozó, objektumorientált, funkcionális és imperatív elemeket egyaránt tartalmazó Rust a C-vel és a JavaScripttel is mutat hasonlóságokat. Az elsősorban webes projektekhez alacsony szintű programozásra (akár operációs rendszerek írására) szánt  nyelvnek a kódgeneráláshoz külön fordítási menetre van szüksége. A fejlesztésért felelős Rust Core Team szerint ugyanakkor nincs szüksége szemétgyűjtő algoritmusra (garbage collector vagy röviden GC), sem runtimera - a Rust könyvtárak teljes körű kompatibilitást mutatnak a C-vel, a népszerű nyelven íródott kód akár Rustban is folytatható.

A GC-paradigma kidobásával, illetve a felturbózott memóriakezeléssel a Mozilla egyik oldalról a C, másik oldalon a JavaScript/Java egyik legnagyobb problémájától szabadul meg - a nyelv rossz memóriamenedzsmentje ugyanis jócskán visszavetheti egy-egy program teljesítményét. De a Java vagy JavaScript esetében sem sokkal jobb a helyzet, ahol a memóriát tisztán tartó szemétgyűjtő éli fel az erőforrásokat. A natív kóddal dolgozó Rust ehelyett egy a fordítóban implementálja ezt, egy a fordítóra épülő referenciaszámlálót használ, amely rögtön eltávolítja a memóriában lévő objektumokat, ha már nincs rájuk szükség.

A Rust kifejlesztésénél a többszálú végrehajtás is kiemelt szerepet kapott, amit jól szemléltet a nyelvben íródott Servo böngészőmotor-prototípus is - amellyel a Mozillának bár nagy tervei voltak, végül nem került be a szervezet egyik termékébe sem.

 

A frissen bejelentett nyelvhez saját csomagkezelő is párosul. A fejlesztők által Cargo névre keresztelt megoldással tölthetők le és telepíthetők új könyvtárak - a függőségek kezelése a Rust központi repository-ján, a crates.io-n keresztül végezhető, segítségével egyszerűen tehetők közzé, illetve kereshetők mások által publikált csomagok. A crates.io nagyjából fél éve aktív, és bár egyelőre nem mondható túlzottan kiterjedtnek, tartalma folyamatosan bővül.

A megoldás a tapasztaltabb és a kezdő programozók számára is jó választás lehet: az öreg motorosok számára a debugging feladatokat könnyíti meg, a kezdők pedig azért örülhetnek, mert az alacsony szintű kódban vétett kisebb hibák nem okoznak majd rejtélyes összeomlásokat. A Rust fejlesztései természetesen nem állnak le 1.0-nál, a csapat folyamatosan csiszolja, illetve új funkciókkal bővíti a nyelvet. Az érdeklődők a folyamatosan megjelenő nightly verziókat kipróbálva követhetik nyomon az újdonságokat. A Mozilla mostantól mindenesetre elkötelezett marad a stabil változatok mellett, így a Rust már teljes biztonsággal használatba vehető. Az érdeklődőknek projekt GitHub oldalán megtalálják a szükséges információkat, illetve érdemes elolvasni a szabadon elérhető oktatóanyagokat is.

Facebook

Mit gondolsz? Mondd el!

Adatvédelmi okokból az adott hír megosztása előtt mindig aktiválnod kell a gombot! Ezzel a megoldással harmadik fél nem tudja nyomon követni a tevékenységedet a HWSW-n, ez pedig közös érdekünk.
4-4 klassz téma a HWSW júniusi üzemeltetői és IT-biztonsági meetupjain. Nézz meg a programot!