Zacznij od rdzy

Sep 16, 2025
Jak

Język programowy C naprawdę zdał próbę czasu. Istnieje bardzo mało środowisk, w których nie rozwija się. Wynika to głównie z wysokiej wydajności wykonania, które niestety przychodzi w cenę: C nie obsługuje wielu funkcji oczekiwanych w nowoczesnym języku programowania.

  • Mozilla przedstawia radykalną nową tożsamość marki

Mozilla badań Rdza jest próbą stworzenia lepszej pułapki na myszy. Jego konstrukcja języka pozostaje koncentrowana na wysokiej wydajności i blisko sprzętu.

Jednak jego składnia i kompilator korzystają również z różnych korzyści oferowanych przez nowoczesne badania języka programowania. Biorąc pod uwagę, że misja Mozilli jest stworzeniem "otwartej sieci", nie powinno być zaskakujące, że firma niestrudzenie działa niestrudzenie, aby przynieść swój najnowszy mózg do sieci.

Podczas gdy rdza może, w teorii, biegnij na kliencie za pomocą systemów, takich jak Emscripten, jego prawdziwa moc leży w tworzeniu skutecznych usług backendowych.

Czy tworzysz witrynę od podstaw? Przybij projekt i wydajność z góry Kreator strony internetowej i doskonały hosting . Masz pliki do udostępniania lub zapisywania? Zaangażuj się w to magazyn w chmurze Opcje.

Jak zacząć używać rdzy

 The Rust installer provides a semi-graphic installation environment

Instalator Rust zapewnia półfalogowe środowisko instalacyjne

Podczas gdy menedżerowie pakietów, takich jak "apt-pobierz" z pewnością ułatwili życie dewelopera, opiekunowie listy pakietów są, by i duże, znane, że nie są przyjaciółmi nadmiernej prędkości. Z tego powodu wielu, jeśli nie większość, pakiety w obszarze pakietowe są mocno przestarzały.

Zespół rdzy rozwiązał ten problem, zapewniając dedykowany skrypt instalacyjny, który ustawia system, który jest skutecznie. Występowanie, jest to proces dwuetapowy: najpierw, upewnij się, że dostępny jest Curl Downloader / Parser:

 Tamhan @ Tamhan-ThinkPad: ~ $ sudo apt-get install curl
[sudo] Hasło dla Tamhana:
Listy pakietów czytania ... wykonane ... 

Następnie w drugim kroku pobierz instalacyjny i przekazać go do "sh" za pomocą operatora rur. "Sh" jest skrótem dla domyślnego tłumacza powłoki stacji roboczej, która następnie przejdzie do uruchomienia kodu pod ręką:

 Tamhan @ Tamhan-ThinkPad: ~ $ Curl https://sh.rustup.rs -SF | sh.
Info: Pobieranie instalatora 

Podczas instalacji instalator Rust wyświetli różnorodność monitów podobnych w pojawieniu się tych pokazanych na zdjęciu po prawej stronie. Po prostu podążaj za nimi, aby uzyskać domyślną instalację.

W niektórych przypadkach wdrożenie rdzy nie powiedzie się z błędem podobnym do "Błąd: nie mógł napisać pliku RCFile:" /home/tamhan/.bash_profile ". Jeśli tak się stanie podczas instalacji, użyj "sudo -s", aby uzyskać powłokę root, a następnie płukać i powtórzyć, aby kontynuować.

Uruchom próbkę

Z tym z drogi nadszedł czas, aby uruchomić nasz pierwszy mały program. Domyślnie pliki rdzy mają rozszerzenie pliku ".rs". Utwórz plik o nazwie "firsttest.rs", a następnie podaj go następującym kodem:

 Fn Main () {
    println! ("Hello World!");
} 

C i programiści C ++ często zastanawiają się, dlaczego wywoływanie metody "Println" wymagają użycia wykrzyknika. Odpowiedź jest prosta: Rust implementuje "PrintLn" jako makro, który zostanie wywołany w inny sposób.

Biorąc pod uwagę, że rdza jest skompilowanym językiem, nasz przykład musi być przetwarzany przed uruchomieniem z linii poleceń:

 Tamhan @ Tamhan-ThinkPad: ~ / Rustspace $ Rustc Firsttest.rs
Tamhan @ Tamhan-ThinkPad: ~ / Rustspace $ ./firsttest
Hello World! 

Zaawansowany rozkład

Opisując pełny język programowania, taki jak rdza, w ograniczonej przestrzeni, którą mamy dostępny tutaj jest niemożliwe. Zacznijmy, formalnie wskazując Cię do Mozilli Research Kompleksowa dokumentacja . Jedna z funkcji, która z pewnością imponuje programów C obejmuje użycie polecenia "Match": Oprócz porównań bezpośrednich, umożliwia również wykorzystanie operatorów zasięgu, aby znacznie uprościć projektowanie zaawansowanych programów:

Fn Main () {
    Niech numer = 5;
    println! ("Praca na {}", numer);
    Numer dopasowania {
        1 = & gt; println! ("jeden!"),
        2 |. 3 |. 5 |. 7 = & gt; println! ("Prime"),
        _ = & gt; println! ("Numer"),
    }
} 

Śmieci

Klasyczna kolekcja śmieci ma swoje słabości: Większość implementacji przynosi program do piskingu zatrzymać się od czasu do czasu. Aby obejść, że Rust wykorzystuje zestaw tak zwanych "abstrakcji zerowych kosztów", aby naśladować podobne zachowanie w mniej irytującej modzie.

Zasadniczo każdy zasób jest tworzony z właścicielem w modzie podobnej do podsystemu rodzic-dziecko QT. Jednak cecha zwana "pożyczkowaniem" umożliwia tymczasowo programistę do przeniesienia własności między zasobami tymczasowo, przechodząc do nich wokół systemu.

Niestety, pełna dyskusja na temat możliwości Menedżera Memory Memory Manager złamie granice tego artykułu - pozwól, by wystarczyło, aby oświadczyć, że Rust zapewnia bardzo niekonwencjonalne, ale możliwe do wykonania formę zarządzania pamięcią.

Utwórz nowy projekt

 Similarities to NPM are purely coincidental...

Podobieństwa do NPM są czysto przypadkowe ...

Podczas gdy kod C i C ++ można podzielić na biblioteki, czyniąc to irytujące i nieco niewygodne zadanie. Ponadto upewniając się, że wszystkie wymagane biblioteki są tam, gdzie są potrzebne, jest czymś nawet doświadczonym programistami, jakby unikać.

Społeczność JavaScript długo rozwiązała ten problem przez produkty takie jak NPM. Projekty są opisane za pośrednictwem pliku struktury projektu, który - między innymi - zawiera odniesienia do bibliotek i innych elementów potrzebnych podczas rzeczywistej biegu kompilacji.

W przypadku rdzy menedżer pakietów o nazwie Cargo wykonuje podobną pracę. Tworzenie nowego projektu można osiągnąć dzięki zastosowaniu polecenia "Cargo New" w modzie podobnej do następujących:

 Tamhan @ Tamhan-ThinkPad: ~ / Rustspace $ Cargo New Futuresmrzy1 --Bin
     Utworzony projekt binarny (aplikacji) `
Tamhan @ Tamhan-ThinkPad: ~ / Rustspace $

Po zakończeniu procesu tworzenia, zostanie wygenerowana struktura folderu podobna do tego pokazanego na rysunku na dole tej strony.

Pliki .Toml działają jako "kontrolery" - w przypadku naszego nowo wygenerowanego projektu plik zawiera następującą strukturę:

 [Pakiet]
Nazwa = "FUTUREUCLE11"
Wersja = "0.1.0"
Autorzy = ["Tamhan"]
[zależności] 

Podobieństwa do plików .ini z wiedzy nie są czysto przypadkowo: W modzie nie różni się do NPM, starożytny format pliku konfiguracyjny jest również używany do opisania plików konfiguracyjnych używanych do projektów rdzy. Blok "[zależności]" jest dla nas szczególne zainteresowanie - zawiera listę wszystkich bibliotek zewnętrznych, które muszą być obecne dla kompilacji, aby odnieść sukces.

Dodaj pakiet.

Tworzenie serwera WWW jest ręcznie irytującą pracą najlepiej od lewej do masochistów. Zamiast tego zdecydujemy się na ramy. Niestety, znalezienie właściwego nie jest łatwe - jak odwiedzanie Lista frameworków rozwoju sieci Web ujawnia, jest wielu kandydatów.

Będziemy wybrać Rakieta , jeśli tylko dlatego, że wydaje się być dość popularna i widziała aktualizację uwolnioną w maju 2018 r. Niestety, deweloperzy Rocket mają tendencję do podejmowania nowo wprowadzonych funkcji językowych, dlatego wymagana jest częste aktualizacja instalacji rdzy za pomocą następujących poleceń :

 Tamhan @ Tamhan-ThinkPad: ~ / Rustspace / Futuresmrzy1 $ Rustup Update & AMP; & AMP; Aktualizacja ładunków 

Następny krok w dużej mierze jest kwestią smaku. Większość bibliotek dotyczy wstępnie urządzonych projektów starterowych, które deweloperzy mogą po prostu syfon z GitHub. Robiąc to dla biblioteki "Prime" niekoniecznie jest zły pomysł - chociaż zaangażowany jest więcej niż jedna biblioteka, podejście ręczne ma tendencję do bardziej owocnego.

Następnie otwórz plik .Toml, a następnie zmodyfikuj sekcję "zależności" zgodnie z następującymi w celu uwzględnienia ostatniej wersji ramy rakietowej:

 [zależności]
rakieta = "0,3.6"
rocket_codegen = "0,3.6" 

Rakieta jest wyjątkowa, ponieważ wymaga włączenia łącznie dwóch pakietów: Oprócz głównych ram, wymagany jest również oddzielny plik generatora kodu. Tak czy inaczej, nasza wersja zawiera określoną wersję dwóch bibliotek - Cargo może również akceptować symbole wieloznaczne, które umożliwiają program "wybrać jego truciznę" bez żadnej pomocy.

W ten sposób pozostaje jeden problem: Wpisz "Cargo Run" w folderze zawierającym plik .Toml, aby wykonać kompilację wspomaganą, która będzie - między innymi - pobierz odpowiednie biblioteki kodu z repozytorium i skompilowaćCała Enchilada dla Ciebie.

Następna strona: Rusztowanie i dogłębna analiza

  • 1.
  • 2.

Bieżąca strona: Strona 1


Jak - Najpopularniejsze artykuły

Wskazówki dotyczące rozwoju wizualnego: Opowiedz historię z grafiką

Jak Sep 16, 2025

(Kredyt obrazu: Simon Baek) Jaki jest rozwój wizualny? Cóż, to projektować wszystko, co może pomóc w wizualizac..


Master pędzel miksera w Photoshopie

Jak Sep 16, 2025

Narzędzia do malowania cyfrowych poważnie zaawansowały w ciągu ostatnich kilku lat. Artyści mogą korzystać z tabletów do ..


Utwórz obraz wielu ekspozycji z Adobe CC

Jak Sep 16, 2025

Adobe zadało mi tworzenie ilustracji do wyrażania koncepcji multilocalizmu, a powyżej możesz zobaczyć moją odpowiedź. W tym samouczku przejdę przez mój proces twórczy za pomocą wsz..


Skocz Rozpocznij reaguj rodzime z EXPO

Jak Sep 16, 2025

Reagować Native. jest platformą, która umożliwia budowanie natywnych aplikacji mobilnych za pomocą JavaScript. J..


Jak tworzyć niesamowite efekty z kształtami CSS

Jak Sep 16, 2025

Deweloperzy Frontend mają tendencję do myślenia w prostokątach; Prostokąty wewnątrz prostokątów wewnątrz prostokątów w..


Jak malować tradycyjną brytyjską scenę wsi

Jak Sep 16, 2025

Średniowieczne kościoły, zielone pastwiska i domy rolnicze z łupkiem są synonimem wiosek, które ścigają brytyjską wsi. T..


Zrób logo Illustrator

Jak Sep 16, 2025

Ten tydzień zobaczył, że wydanie niektórych nowych filmów na Adobe jest teraz odtwarzania, kolekcja klipów o tym, jak tworzyć projekty projektowe z kreatywnymi aplikacjami w chmurze w ..


Boost D3.js wykresy z gradientami SVG

Jak Sep 16, 2025

Nadieh Bremer będzie Generować Londyn We wrześniu, gdzie będzie wykazać, jak wziąć..


Kategorie