A Rust egy modern rendszerprogramozási nyelv, amely az elmúlt években került fókuszba, vonzó tulajdonságaival és funkcióival, valamint robusztus teljesítményével. A Mozilla Research által fejlesztett Rust a biztonság, a párhuzamosság és a sebesség együttes kombinációját adja, így ideális választás megbízható és hatékony szoftverek készítéséhez.
Az IQEDU Rust képzés célja, hogy a résztvevőket felvértezze a Rust lehetőségeinek kiaknázásához szükséges ismeretekkel és készségekkel. Az alapoktól a haladó fogalmakig, például a párhuzamosság, a teljesítményoptimalizálás, valamint az éles alkalmazások üzemeltetése, a képzés a Rust fejlesztés számos aspektusát lefedi.
Laborok, válogatott példák és mentori útmutatások révén a hallgatók gyakorlati tapasztalatokat is szereznek a Rust-kód írásában.
Egyedi kérés esetén a képzést a megrendelő egyedi igényeihez szabjuk, és egyedi tematikát készítünk.
Kinek ajánljuk?
A képzést szoftverfejlesztőknek, rendszerprogramozóknak, webapi fejlesztőknek, valamint azoknak nagyvállalatoknak ajánljuk, akik a Rust-ot szeretnék alkalmazni aktuálisan folyó, vagy újonnan induló projektjeikben. Átfogó ismereteket nyújt a Rust funkcióiról és alkalmazásairól, így a kezdők és a tapasztalt szakemberek számára egyaránt alkalmas, akik a Rust biztonsági, párhuzamossági és teljesítmény előnyeit szeretnék kiaknázni projektjeik során.
A képzés tartalma
A tényleges képzés során az tartalom nem szükségszerűen az alábbi a sorrendben kerül bemutatásra, mivel a Rust skillset összetett, és számos téma egymással kölcsönösen összefügg.
Bevezetés a Rustba
-
Mi az a Rust? Előzmények és háttér, Jellemzők és előnyök, Használati esetek és alkalmazások
-
A Rust fejlesztői környezet beállítása: A Rust fordító és a Cargo telepítése, IDE-k és szövegszerkesztők konfigurálása
Rust alapjai
-
Szintaxis és szerkezet: Változók és adattípusok, Funkciók és vezérlőfolyamatok
-
• Típusok: Tuple-k és Array-ek, Felhasználó által definiált típusok
-
• Tulajdonjog és kölcsönzés: A tulajdonjog megértése, kölcsönzés és referenciák, élettartam és memóriabiztonság
Fejlett Rust koncepciók
-
Felsorolások, minták és párosítás: Felsorolások és változatok, Mintaillesztés
-
Hibakezelés: Eredmény- és opciótípusok, Hibakezelési technikák
-
Tulajdonságok: A tulajdonságok meghatározása. Jellemzők megvalósítása, polimorfizmus a Rustban
-
Generic típusok: Munka generic típusokkal, miben különböznek a C/C++, C#, Java társaiktól
Rust ökoszisztéma
-
A szabványos Rust könyvtár: gyűjtemények és adatstruktúrák, fájl I/O és hálózatok
-
Külső csomagok használata a Cargo-val: függőségek kezelése, crate-ek közzététele és fogyasztása
Rust projektek
-
Parancssori alkalmazások létrehozása: Parancssor argumentumok kezelése, CLI létrehozás, Bemenet és kimenet kezelése,
-
A webes alkalmazások (webes API-k) fejlesztésének alapjai Rust segítségével: Webes keretrendszerek kiválasztása, RESTful API-k írása
Tesztelés és hibakeresés
-
Tesztek írása Rust segítségével: Unit tesztek és integrációs tesztek, Tesztszervezés és bevált gyakorlatok
-
Hibakeresési technikák: Hibakereső eszközök használata, Gyakori problémák hibaelhárítása
Párhuzamosság és többszálúság
-
Párhuzamos programozás Rustban: A párhuzamosság megértése, a szálak használata a párhuzamosság érdekében
-
Szinkronizálás és üzenettovábbítás: Mutexek és lockok, Kommunikációs csatornák
Az aszinkron programozás alapjai Rustban
-
Az aszinkron programozási fogalmak megértése: Async/await szintaxis, Aszinkron függvények és future-ek használata
-
Aszinkron feladatok kezelése: Tokio vagy async-std használata
-
Hibák kezelése: Visszavonás aszinkron kódban, gyakorlatok aszinkron programozáshoz Rustban
Teljesítmény optimalizálás
-
Rust kód profilírozása: A szűk keresztmetszetek azonosítása, Profilkészítő eszközök használata
-
Optimalizálási technikák: Memóriakezelési stratégiák, Algoritmikus optimalizálás
Bevált gyakorlatok és haladó témák
-
Idiomatikus Rust kód írása: Rust stílus konvenciók, házirendek, gyakori buktatók, amelyeket érdemes elkerülni
-
Haladó témák: Unsafe Rust, mikor érdemes használni, Makrók és meta-programozás
Rust éles használatban
-
Rust alkalmazások telepítése: csomagolás és disztribúció, konténerek
-
Karbantartás és támogatás: Verziókezelés és függőségek kezelése, Frissítések és hibajavítások kezelése