![Lift Droopy Eyelids by Wink Exercise👁💕Remove Eye Bags and Reduce Wrinkles (Crow Feet) in 7 Days](https://i.ytimg.com/vi/r0TNuFqZgtw/hqdefault.jpg)
Tartalom
- Hogyan kezdjük el használni a Rustot
- Futtasson egy mintát
- Haladó bomlás
- Szemét kéznél
- Hozzon létre egy új projektet
- Adjon hozzá egy csomagot
![](https://a.lchan.org/creative/get-started-with-rust.webp)
A C programozási nyelv valóban túllépte az idő próbáját.Nagyon kevés olyan környezet van, ahol nem fejlődik. Ez elsősorban annak magas végrehajtási teljesítményének köszönhető, amelynek sajnos ára van: a C nem támogatja a modern programozási nyelvben elvárt számos funkciót.
- A Mozilla új radikális identitást mutat be
A Mozilla Research Rustja egy jobb egérfogó létrehozására tett kísérlet. Nyelvi kialakítása továbbra is a nagy teljesítményre és a hardver közelében áll.
Szintaxisa és fordítója azonban kihasználja a modern programozási nyelv kutatásának számos előnyét is. Tekintettel arra, hogy a Mozilla küldetése egy „nyitott web” létrehozása, nem meglepő, hogy a vállalat fáradhatatlanul azon dolgozik, hogy legújabb agyszüleményét az internetre vigye.
Míg a Rust elméletileg képes futtatni az ügyfelet olyan rendszereken keresztül, mint az Emscripten, valódi ereje a hatékony háttérszolgáltatások létrehozásában rejlik.
A semmiből hoz létre egy webhelyet? Szögezze le a dizájnt és a teljesítményt egy legnépszerűbb weboldal-készítővel és kiváló web hosting szolgáltatással. Van megosztani vagy menteni kívánt fájl? Vegyen részt ezekben a felhőalapú tárolási lehetőségekben.
Hogyan kezdjük el használni a Rustot
Míg a csomagkezelők, mint például az „apt-get”, biztosan megkönnyítették a fejlesztő életét, a csomaglista-karbantartók nagyjából tudják, hogy nem barátai a túlzott sebességnek. Emiatt a terjesztések sok, ha nem a legtöbb gyorsítótára erősen elavult.
A Rust csapata megoldotta ezt a problémát egy dedikált telepítési parancsfájl biztosításával, amely hatékonyan beállítja a futtatott rendszert. A telepítés tehát két lépésből áll: először győződjön meg arról, hogy elérhető-e a CURL letöltő / elemző:
tamhan @ tamhan-thinkpad: ~ $ sudo apt-get install curl [sudo] jelszó tamhan számára: Csomaglisták olvasása ... Kész…
Ezután a második lépésben töltse le a telepítőt, és továbbítsa a „sh” -nek a csőkezelő segítségével. A 'Sh' rövidítés a munkaállomás alapértelmezett shellértelmezőjéhez, amely a következő kódot futtatja:
tamhan @ tamhan-thinkpad: ~ $ curl https://sh.rustup.rs -sSf | sh info: a telepítő letöltése
A telepítés során a Rust telepítő a jobb oldali képen láthatóakhoz hasonló megjelenésű megjelenítéseket jelenít meg. Egyszerűen kövesse őket az alapértelmezett telepítés eléréséhez.
Bizonyos esetekben a Rust telepítése hibát mutat, amely hasonló a "hiba: nem tudta írni az rcfile fájlt:’ /home/tamhan/.bash_profile ’” fájlhoz. Ha ez a telepítés során történik, használja a 'sudo -s' parancsot egy gyökérhéj megszerzéséhez, majd öblítse le és ismételje meg a folytatást.
Futtasson egy mintát
Ha ez nem sikerül, itt az ideje, hogy elindítsuk az első kis programunkat. A rozsdafájlok alapértelmezés szerint a fájl kiterjesztése ’.rs’. Hozzon létre egy „firsttest.rs” nevű fájlt, majd adja hozzá a következő kóddarabot:
fn main () {println! ("Hello Világ!"); }
A C és C ++ programozók gyakran elgondolkodnak azon, hogy a ’println’ módszer invokálásához miért van szükség felkiáltójel használatára. A válasz egyszerű: Rust a „println” -t makróként valósítja meg, amelyet más módon hívnak meg.
Tekintettel arra, hogy a Rust egy lefordított nyelv, példánkat fel kell dolgozni, mielőtt a parancssorból futtatható lenne:
tamhan @ tamhan-thinkpad: ~ / rustspace $ rustc firsttest.rs tamhan @ tamhan-thinkpad: ~ / rustspace $ ./firsttest Hello World!
Haladó bomlás
A teljes programozási nyelv, például a Rust leírása az itt rendelkezésre álló korlátozott térben lehetetlen. Kezdjük tehát azzal, hogy hivatalosan is felhívjuk a figyelmet a Mozilla Research átfogó dokumentációjára. Az egyik olyan funkció, amely biztosan lenyűgözi a C programozókat, magában foglalja a ’match’ parancs használatát: a közvetlen összehasonlítások mellett lehetővé teszi a hatótávolsági operátorok használatát a fejlett programok tervezésének jelentős egyszerűsítése érdekében:
fn main () {legyen szám = 5; println! ("Working on {}", szám); mérkőzés 7. szám => println! ("Prime"), _ => println! ("A szám"),}
Szemét kéznél
A klasszikus szemétszállításnak megvannak a maga gyengeségei: a legtöbb megvalósítás időről időre pergő leállást okoz a programnak. Megkerülésére Rust úgynevezett „nulla költségű absztrakciókat” használ, hogy hasonló viselkedést kevésbé idegesítő módon utánozzon.
Elvileg minden erőforrást a tulajdonosával hoznak létre a Qt szülő-gyermek alrendszeréhez hasonló módon. A „hitelfelvétel” nevű szolgáltatás azonban lehetővé teszi a programozó számára, hogy az erőforrások között ideiglenesen tulajdonjogot ruházzon át, ezáltal a rendszeren keresztül.
Sajnos a Rust memóriakezelőjének lehetőségeinek teljes megvitatása megtörné ennek a cikknek a határait - legyen elég kijelentenünk, hogy a Rust egy nagyon unortodox, de működőképes memóriakezelési formát kínál.
Hozzon létre egy új projektet
Míg a C és a C ++ kód könyvtárakra bontható, ez bosszantó és kissé kényelmetlen feladat. Ezenkívül még a tapasztalt fejlesztők is el akarják kerülni, hogy az összes szükséges könyvtár ott legyen, ahová szükség van.
A JavaScript közösség régóta megoldotta ezt a problémát olyan termékek révén, mint az NPM. A projekteket egy projektstruktúra fájl segítségével ismertetik, amely többek között a könyvtárakra és a tényleges fordítási futtatáshoz szükséges egyéb elemekre utal.
A Rust esetében a Cargo nevű csomagkezelő végez hasonló munkát. Új projekt létrehozása a „cargo new” parancs használatával hajtható végre az alábbihoz hasonló módon:
tamhan @ tamhan-thinkpad: ~ / rustspace $ cargo new futuresample1 --bin Létrehozott bináris (alkalmazás) `futuresample1` projekt tamhan @ tamhan-thinkpad: ~ / rustspace $
Amikor a létrehozási folyamat befejeződött, az oldal alján lévő képen látható mappaszerkezet jön létre.
A .toml fájlok „vezérlőként” működnek - újonnan létrehozott projektünk esetében a fájl a következő szerkezetet tartalmazza:
[csomag] név = "futuresample1" verzió = "0.1.0" szerzők = ["tamhan"] [függőségek]
A lore .ini fájljaival való hasonlóság nem pusztán véletlen: az NPM-hez hasonlóan az ősi konfigurációs fájlformátumot használják a Rust projektekhez használt konfigurációs fájlok leírására is. A „[függőségek]” blokk számunkra különösen érdekes - tartalmazza az összes külső könyvtárat, amelyeknek jelen kell lenniük az összeállítás sikeréhez.
Adjon hozzá egy csomagot
A webkiszolgáló kézi létrehozása bosszantó feladat, amelyet a mazochistáknak kell hagyni. Ehelyett keretet választunk. Sajnos nem könnyű megtalálni a megfelelőt - amint az AWWY webfejlesztési keretrendszereinek felkeresésével kiderül, sok a jelölt.
A Rocket-t választjuk, már csak azért is, mert elég népszerűnek tűnik, és látott egy frissítést 2018 májusában. Sajnos a Rocket fejlesztői általában kedvelik az újonnan bevezetett nyelvi funkciókat, ezért a Rust telepítésének gyakori frissítése a a következő parancsokra van szükség:
tamhan @ tamhan-thinkpad: ~ / rustspace / futuresample1 $ rustup update && cargo update
A következő lépés nagyrészt ízlés kérdése. A legtöbb könyvtár előre telepített indító projektekkel érkezik, amelyeket a fejlesztők egyszerűen szifonozhatnak a GitHubból. A „legfontosabb” könyvtár számára ez nem feltétlenül rossz ötlet - bár ha egyszer több könyvtárat is bevonunk, a manuális megközelítés általában gyümölcsözőbb.
Ezután nyissa meg a .toml fájlt, majd módosítsa a ’függőségek’ részt az alábbiak szerint a Rocket keretrendszer legújabb verziójának felvétele érdekében:
[függőségek] rakéta = "0,3,6" rakéta_kódegen = "0,3,6"
A Rocket egyedülálló abban, hogy összesen két csomag felvételét igényli: a fő keretrendszer mellett külön kódgeneráló fájlra is szükség van. Akárhogy is, a mi verziónk a két könyvtár egy speciális változatát tartalmazza - a Cargo helyettesítő karaktereket is elfogadhat, amelyek lehetővé teszik a program számára, hogy mindenféle segítség nélkül „kiszedje a mérgét”.
Ennek hiányában egy probléma marad: írja be a „cargo run” kifejezést a .toml fájlt tartalmazó mappába egy segített fordítás végrehajtása érdekében, amely többek között letölti a megfelelő kódkönyvtárakat a tárból, és lefordítja a egész enchilada neked.
Következő oldal: állványok és mélyreható elemzés