Rust - Wprowadzenie
Rust to język programowania na poziomie systemowym, opracowany przez Graydona Hoare'a. Później program przejął Mozilla Labs.
Aplikacja v / s Języki programowania systemów
Języki programowania aplikacji, takie jak Java / C #, są używane do tworzenia oprogramowania, które świadczy usługi bezpośrednio użytkownikowi. Pomagają nam tworzyć aplikacje biznesowe, takie jak arkusze kalkulacyjne, edytory tekstu, aplikacje internetowe lub aplikacje mobilne.
Języki programowania systemów, takie jak C / C ++, są używane do tworzenia oprogramowania i platform programowych. Mogą być używane do budowania systemów operacyjnych, silników gier, kompilatorów itp. Te języki programowania wymagają dużego stopnia interakcji sprzętowej.
Systemy i języki programowania aplikacji napotykają dwa główne problemy -
- Trudno jest napisać bezpieczny kod.
- Trudno jest napisać kod wielowątkowy.
Dlaczego Rust?
Rust skupia się na trzech celach -
- Safety
- Speed
- Concurrency
Język został zaprojektowany do tworzenia wysoce niezawodnego i szybkiego oprogramowania w prosty sposób. Rusta może być używana do pisania programów wysokiego poziomu do programów specyficznych dla sprzętu.
Wydajność
Język programowania Rust nie ma z założenia garbage collectora (GC). Poprawia to wydajność w czasie wykonywania.
Bezpieczeństwo pamięci w czasie kompilacji
Oprogramowanie zbudowane przy użyciu Rust jest zabezpieczone przed problemami z pamięcią, takimi jak wiszące wskaźniki, przepełnienia bufora i wycieki pamięci.
Aplikacje wielowątkowe
Zasady własności i bezpieczeństwa pamięci Rusta zapewniają współbieżność bez wyścigów danych.
Wsparcie dla Web Assembly (WASM)
Web Assembly pomaga w wykonywaniu algorytmów wymagających dużej mocy obliczeniowej w przeglądarce, na urządzeniach wbudowanych lub gdziekolwiek indziej. Działa z prędkością kodu natywnego. Rust można skompilować do Web Assembly w celu szybkiego i niezawodnego wykonania.