Programowanie w języku Rust
- Autorzy:
- Steve Klabnik, Carol Nichols
- +129 pkt
- Wydawnictwo:
- Wydawnictwo Naukowe PWN
- Ocena:
- 6.0/6 Opinie: 1
- Stron:
- 608
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Programowanie w języku Rust
Programowanie w języku Rust to oficjalna książka na temat Rusta: języka programowania na licencji open source, który pozwala nam szybciej pisać niezawodne oprogramowanie. Rust daje możliwość kontrolowania szczegółów niskiego poziomu (jak wykorzystanie pamięci) w połączeniu z ergonomią wysokiego poziomu, eliminując kłopoty tradycyjnie związane z językami niskiego poziomu. W książce Programowanie w języku Rust dwaj członkowie Rust Core Team pokazują, jak w pełni korzystać z właściwości Rusta od instalacji po tworzenie własnych niezawodnych i skalowalnych programów. Zaczynamy od podstaw, takich jak tworzenie funkcji, wybieranie typów danych i wiązanie zmiennych i przechodzimy następnie do bardziej zaawansowanych pojęć takich jak: posiadanie i pożyczanie, czasy życia i cechy bezpieczeństwo pamięci Rusta, które gwarantuje budowanie szybkich, bezpiecznych programów testowanie, obsługa błędów i efektywna refaktoryzacja typy generyczne, inteligentne wskaźniki, wielowątkowość, obiekty cech oraz zaawansowane dopasowywanie wzorców użycie Cargo - wbudowanego w Rust menedżera pakietów, służącego do budowania, testowania i dokumentowania swojego kodu i zarządzania zależnościami używanie zaawansowanego kompilatora Rusta wraz z technikami programowania opartymi na kompilatorze Książka zawiera dużo przykładów kodu, a także trzy rozdziały poświęcone budowaniu gotowych projektów przeznaczonych do sprawdzenia swojej wiedzy: gra w zgadywanie, implementacja narzędzia wiersza poleceń w języku Rust oraz wielowątkowy serwer.
Wybrane bestsellery
-
Ta książka szczególnie przyda się osobom, które rozpoczynają pracę z Angularem. Dzięki niej szybko zaczniesz tworzyć aplikacje z wykorzystaniem wiersza poleceń (CLI), pisać testy jednostkowe i używać stylów zgodnych ze standardem Material Design. Dowiesz się również, jak wdrażać aplikacje w środo...
Poznaj Angular. Rzeczowy przewodnik po tworzeniu aplikacji webowych z użyciem frameworku Angular 15. Wydanie IV Poznaj Angular. Rzeczowy przewodnik po tworzeniu aplikacji webowych z użyciem frameworku Angular 15. Wydanie IV
(53.40 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Dorośli, doceniając rozrywkowe walory gry, dostrzegli także jej aspekty edukacyjne. Minecraft stał się na przykład bazą zajęć z programowania dla dzieci i młodzieży. Ta książka powstała na podstawie warsztatów dla średnio zaawansowanych i jest przeznaczona dla dzieci od dziesiątego roku życia. Uc...
Programowanie z Minecraftem dla dzieci. Poziom średnio zaawansowany. Wydanie II Programowanie z Minecraftem dla dzieci. Poziom średnio zaawansowany. Wydanie II
(32.94 zł najniższa cena z 30 dni)38.43 zł
54.90 zł(-30%) -
Jesteś początkującym programistą, poszukujesz swojej ścieżki i zastanawiasz się właśnie nad tym, czy nie skierować uwagi w stronę aplikacji mobilnych? To książka dla Ciebie. Zawarty w niej materiał jest odpowiedni dla osoby dysponującej podstawami któregoś z języków programowania i bazowym doświa...(41.40 zł najniższa cena z 30 dni)
48.30 zł
69.00 zł(-30%) -
Jednym z obszarów, w które AI wkracza coraz śmielej, jest programowanie. Tam, gdzie pracuje się z liczbami, kodem i algorytmami, pomoc sztucznej inteligencji okazuje się nieoceniona. Jak ją zaprosić do współpracy? Tego dowiesz się z naszego kursu. Jego tematyka obejmuje bowiem programowanie z wyk...
AI w praktyce. Kurs video. Narzędzia sztucznej inteligencji w programowaniu AI w praktyce. Kurs video. Narzędzia sztucznej inteligencji w programowaniu
(67.60 zł najniższa cena z 30 dni)109.85 zł
169.00 zł(-35%) -
PowerShell to zaawansowany interpreter poleceń oparty na środowisku programistycznym .NET Framework. Jest preferowanym narzędziem do kontrolowania i zarządzania środowiskiem Windows i Azure. W przeciwieństwie do większości powłok, które operują na łańcuchach znaków, PowerShell wykorzystuje obiekt...
PowerShell. Kurs video. Zarządzanie środowiskiem Windows i Azure PowerShell. Kurs video. Zarządzanie środowiskiem Windows i Azure
(84.50 zł najniższa cena z 30 dni)109.85 zł
169.00 zł(-35%) -
Trzecie wydanie Programowania z Minecraftem dla dzieci to kolejna odsłona cieszącego się uznaniem przewodnika, dzięki któremu Twoje dziecko rozpocznie przygodę z programowaniem. To książka adresowana do dzieci od ósmego roku życia, ale i starsi znajdą coś dla siebie. Przeprowadzi sprawnie młodych...
Programowanie z Minecraftem dla dzieci. Poziom podstawowy. Wydanie III Programowanie z Minecraftem dla dzieci. Poziom podstawowy. Wydanie III
(32.94 zł najniższa cena z 30 dni)38.43 zł
54.90 zł(-30%) -
Tę książkę docenią programiści, menedżerowie, inżynierowie i liderzy techniczni. Znajdziesz w niej cenne informacje o filozofii inżynierii oprogramowania, jak również o postępach w sposobie myślenia na jej temat. Na tej bazie oparto zestaw zasad ułatwiających skuteczne radzenie sobie z dwoma pods...
Nowoczesna inżynieria oprogramowania. Stosowanie skutecznych technik szybszego rozwoju oprogramowania wyższej jakości Nowoczesna inżynieria oprogramowania. Stosowanie skutecznych technik szybszego rozwoju oprogramowania wyższej jakości
(41.40 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%) -
Internet rzeczy nadal ewoluuje - i staje się coraz powszechniejszy, a to może być zachętą do tego, by poznać go bliżej. Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino może się okazać świetną ...
Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino
(59.40 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%) -
To drugie, zaktualizowane i uzupełnione wydanie książki poświęconej wdrażaniu najlepszych praktyk DevOps przy użyciu nowoczesnych narzędzi. Przedstawiono w niej informacje o kulturze DevOps, opisano różne narzędzia i techniki stosowane do jej wdrażania, takie jak IaC, potoki Git i CI/CD, a także ...
DevOps w praktyce. Wdrażanie narzędzi Terraform, Azure DevOps, Kubernetes i Jenkins. Wydanie II DevOps w praktyce. Wdrażanie narzędzi Terraform, Azure DevOps, Kubernetes i Jenkins. Wydanie II
(65.40 zł najniższa cena z 30 dni)76.30 zł
109.00 zł(-30%) -
Dzięki DevOps możesz przyspieszyć cykl życia związany z dostarczaniem oprogramowania, jeśli tylko poznasz procesy, narzędzia i sposób myślenia będący podstawą kultury DevOps. Ta książka pomaga inżynierom oprogramowania i kierownikom do spraw technicznych w przekształcaniu organizacji w celu przyj...(47.40 zł najniższa cena z 30 dni)
55.30 zł
79.00 zł(-30%)
O autorach ebooka
Steve Klabnik był kierownikiem zespołu dokumentacji języka Rust i jednym z jego głównych programistów. Wcześniej pracował nad takimi projektami jak Ruby i Ruby on Rails.
Carol Nichols jest członkinią zespołu Crates.io Rusta i byłą członkinią zespołu podstawowego zespołu Rusta. Organizowała konferencję Rust Belt Rust.
Ebooka "Programowanie w języku Rust" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Programowanie w języku Rust" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Programowanie w języku Rust" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tłumaczenie:
- Witold Sikorski, Małgorzata Dąbkowska-Kowalik
- ISBN Ebooka:
- 978-83-012-0639-0, 9788301206390
- Data wydania ebooka:
- 2019-06-14 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Numer z katalogu:
- 94397
- Rozmiar pliku ePub:
- 26.6MB
- Rozmiar pliku Mobi:
- 60.2MB
Spis treści ebooka
- Okładka
- Strona tytułowa
- Strona redakcyjna
- O autorach
- Spis treści
- Wstęp
- Podziękowania
- Wprowadzenie
- Dla kogo jest Rust
- Zespoły deweloperskie
- Studenci
- Firmy
- Deweloperzy open source
- Ludzie ceniący szybkość i stabilność
- Dla kogo jest ta książka
- Jak korzystać z tej książki
- Źródła i jak uczestniczyć w tworzeniu tej książki
- Dla kogo jest Rust
- 1. Rozpoczynamy
- Instalacja
- Instalacja rustup w systemach Linux i macOS
- Instalacja rustup w systemie Windows
- Aktualizacja i odinstalowywanie
- Usuwanie błędów
- Lokalna dokumentacja
- Hello, world!
- Tworzenie katalogu projektu
- Pisanie i uruchamianie programu w języku Rust
- Anatomia programu w języku Rust
- Kompilacja i uruchomienie to oddzielne kroki
- Witaj Cargo!
- Tworzenie projektu za pomocą Cargo
- Tworzenie i uruchamianie projektu w Cargo
- Tworzenie gotowej wersji
- Cargo jako konwencja
- Podsumowanie
- Instalacja
- 2. Programowanie zgadywanki
- Tworzenie nowego projektu
- Przetwarzanie odpowiedzi
- Zapisywanie wartości w zmiennych
- Obsługa potencjalnych błędów za pomocą typu Result
- Wyświetlanie wartości za pomocą symboli zastępczych w println!
- Testowanie pierwszej części
- Generowanie tajnej liczby
- Korzystanie ze skrzynki, aby rozszerzyć funkcjonalność
- Generowanie liczby losowej
- Porównanie liczby odgadniętej z tajną
- Dopuszczenie wielu prób za pomocą pętli
- Kończenie programu po poprawnej odpowiedzi
- Obsługa niepoprawnych danych na wejściu
- Podsumowanie
- 3. Typowe pojęcia z zakresu programowania
- Zmienne i mutowalność
- Różnice między zmiennymi a stałymi
- Zasłanianie
- Typy danych
- Typy skalarne
- Typy złożone
- Funkcje
- Parametry funkcji
- Instrukcje i wyrażenia w treści funkcji
- Funkcje z wartościami zwrotnymi
- Komentarze
- Sterowanie przepływem
- Wyrażenie if
- Powtarzanie w pętlach
- Podsumowanie
- Zmienne i mutowalność
- 4. Pojęcie posiadania
- Czym jest posiadanie?
- Reguły posiadania
- Zakres zmiennej
- Typ String
- Pamięć i jej przydział
- Posiadanie i funkcje
- Zwracane wartości i zakres
- Odwołania i pożyczki
- Odwołania mutowalne
- Wiszące odwołania
- Reguły odwołań
- Typ wycinek
- Wycinki łańcucha
- Inne wycinki
- Podsumowanie
- Czym jest posiadanie?
- 5. Używanie struktur do konstruowania powiązanych danych
- Definiowanie struktur i tworzenie ich instancji
- Używanie skrótu do inicjacji pola, gdy zmienne i pola mają takie same nazwy
- Tworzenie instancji z innych instancji za pomocą składni aktualizacji struktury
- Użycie struktur krotki bez nazywanych pól do tworzenia różnych typów
- Struktury jako jednostki bez żadnych pól
- Przykład programu z użyciem struktury
- Refaktoryzacja za pomocą krotek
- Refaktoryzacja za pomocą struktur
- Dodawanie użytecznej funkcjonalności za pomocą wyprowadzonych cech
- Składnia metody
- Definiowanie metod
- Metody z większą liczbą parametrów
- Funkcje powiązane
- Wiele bloków impl
- Podsumowanie
- Definiowanie struktur i tworzenie ich instancji
- 6. Typ wyliczeniowy i dopasowanie wzorca
- Definiowanie wyliczenia
- Wartości wyliczeń
- Wyliczenie Option i jego zalety w porównaniu z wartościami null
- Operator sterowania przepływem match
- Wzorce, które są związane z wartościami
- Dopasowywanie za pomocą Option
- Dopasowania wyczerpują wszystkie przypadki
- Symbol zastępczy _
- Sterowanie przepływem za pomocą if let
- Podsumowanie
- Definiowanie wyliczenia
- 7. Wykorzystanie modułów do porządkowania kodu i jego ponownego wykorzystywania
- mod i Filesystem
- Definicje modułów
- Przenoszenie modułów do innych plików
- Reguły systemów plików modułów
- Sterowanie widocznością za pomocą pub
- Ustawienie funkcji jako publicznej
- Reguły prywatności
- Przykłady prywatności
- Odwoływanie się do nazw w różnych modułach
- Wprowadzanie nazw do zakresu za pomocą słowa kluczowego use
- Wprowadzanie wszystkich nazw do zakresu za pomocą glob
- Użycie super do uzyskiwania dostępu do modułu nadrzędnego
- Podsumowanie
- mod i Filesystem
- 8. Typowe kolekcje
- Przechowywanie list wartości za pomocą wektorów
- Tworzenie nowego wektora
- Uaktualnianie wektora
- Usunięcie wektora usuwa jego elementy
- Czytanie elementów wektora
- Iterowanie po wartościach w wektorze
- Użycie wyliczania do przechowywania wielu typów
- Przechowywanie w łańcuchach tekstu zakodowanego za pomocą UTF-8
- Czym jest łańcuch?
- Tworzenie nowego łańcucha
- Aktualizacja łańcucha
- Indeksowanie łańcuchów
- Dzielenie łańcuchów na wycinki
- Metody iterowania po łańcuchach
- Łańcuchy nie są takie proste
- Przechowywanie kluczy z powiązanymi wartościami w mapach skrótów
- Tworzenie nowej mapy skrótów
- Mapy skrótów a posiadanie
- Dostęp do wartości w mapie skrótów
- Aktualizacja mapy skrótów
- Funkcje skrótu
- Podsumowanie
- Przechowywanie list wartości za pomocą wektorów
- 9. Obsługa błędów
- Błędy nienaprawialne z makrem panic!
- Użycie śladu panic!
- Błędy do naprawienia za pomocą Result
- Dopasowywanie przy różnych błędach
- Skróty do paniki przy błędzie: unwrap i expect
- Propagowanie błędów
- Panikować czy nie panikować
- Przykłady, prototypowy kod i testy
- Przypadki, w których mamy więcej informacji niż kompilator
- Wskazówki dotyczące obsługi błędów
- Tworzenie niestandardowych typów do celów sprawdzania
- Podsumowanie
- Błędy nienaprawialne z makrem panic!
- 10. Typy generyczne, cechy i czasy życia
- Usuwanie duplikacji przez wyodrębnienie funkcji
- Generyczne typy danych
- W definicjach funkcji
- Definicje w strukturze
- W definicjach wyliczeń
- W definicjach metod
- Wydajność kodu z użyciem typów generycznych
- Cechy definiowanie wspólnego zachowania
- Definiowanie cechy
- Implementowanie cechy na typie
- Implementacje domyślne
- Granice cech
- Naprawa funkcji largest za pomocą granic cech
- Używanie granic cech do metod implementowanych warunkowo
- Sprawdzanie odwołań za pomocą czasów życia
- Zapobieganie wiszącym odwołaniom za pomocą czasów życia
- Kontroler pożyczek
- Generyczne czasy życia w funkcjach
- Składnia adnotacji dla czasu życia
- Adnotacje o czasie życia w sygnaturach funkcji
- Myślenie w kategoriach czasów życia
- Adnotacje o czasie życia w definicjach struktur
- Pominięcie czasu życia
- Adnotacje o czasie życia w definicjach metod
- Statyczny czas życia
- Parametry generycznego typu, granice cech i czas życia w połączeniu
- Podsumowanie
- 11. Pisanie automatycznych testów
- Jak pisać testy
- Anatomia funkcji testowania
- Sprawdzanie wyników za pomocą makra assert!
- Testowanie równości za pomocą makr assert_eq! i assert_ne!
- Dodawanie niestandardowych komunikatów
- Testowanie kodu pod kątem paniki za pomocą should_panic
- Sterowanie sposobem uruchamiania testów
- Uruchamianie testów równolegle lub po kolei
- Pokazywanie wyników funkcji
- Uruchomienie podzbioru testów według nazwy
- Pomijanie niektórych testów, jeśli nie zostaną konkretnie wymienione
- Organizacja testów
- Testy jednostkowe
- Testy integracyjne
- Podsumowanie
- Jak pisać testy
- 12. Projekt we/wy budowa programu wiersza poleceń
- Akceptowanie argumentów wiersza poleceń
- Czytanie wartości argumentów
- Zapisywanie wartości argumentów w zmiennych
- Czytanie pliku
- Refaktoryzacja w celu poprawienia modułowości i obsługi błędów
- Oddzielanie problemów w projektach binarnych
- Naprawa obsługi błędów
- Wyodrębnianie kodu z main
- Podział kodu do skrzynki bibliotecznej
- Tworzenie funkcjonalności biblioteki przy użyciu TDD
- Pisanie testu zakończonego niepowodzeniem
- Pisanie testu, który przejdzie
- Praca ze zmiennymi środowiskowymi
- Pisanie testu zakończonego niepowodzeniem dla funkcji nierozróżniających wielkości liter
- Implementacja funkcji search_case_insensitive
- Pisanie komunikatów o błędach do standardowego błędu zamiast standardowego wyjścia
- Sprawdzanie, gdzie są zapisywane błędy
- Zapisywanie błędów do standardowego błędu
- Podsumowanie
- Akceptowanie argumentów wiersza poleceń
- 13. Funkcje języka funkcyjnego: iteratory i zamknięcia
- Zamknięcia anonimowe funkcje, które mogą przechwycić swoje środowisko
- Tworzenie abstrakcji zachowania za pomocą zamknięć
- Wnioskowanie o typie zamknięcia i adnotacje
- Zapisywanie zamknięć z użyciem parametrów generycznych i cech Fn
- Ograniczenia implementacji Cacher
- Przechwytywanie środowiska za pomocą zamknięć
- Przetwarzanie ciągów elementów za pomocą iteratorów
- Cecha Iterator i metoda next
- Metody, które zużywają iterator
- Metody tworzące inne iteratory
- Wykorzystanie zamknięć, które przechwytują swoje środowisko
- Tworzenie własnych iteratorów za pomocą cechy Iterator
- Ulepszanie naszego projektu we/wy
- Usuwanie klonu za pomocą iteratora
- Bardziej przejrzysty kod dzięki adapterom iteratora
- Porównywanie wydajności pętle a iteratory
- Podsumowanie
- Zamknięcia anonimowe funkcje, które mogą przechwycić swoje środowisko
- 14. Więcej informacji o Cargo i Crates.io
- Wersje niestandardowe z profilami wydania
- Publikacja skrzynki w Crates.io
- Dokonywanie użytecznych komentarzy dokumentujących
- Eksport wygodnego publicznego API za pomocą pub use
- Tworzenie konta Crates.io
- Dodawanie metadanych do nowej skrzynki
- Publikowanie w Crates.io
- Publikowanie nowej wersji istniejącej skrzynki
- Usuwanie wersji z Crates.io za pomocą cargo yank
- Przestrzenie robocze Cargo
- Tworzenie przestrzeni roboczej
- Tworzenie drugiej skrzynki w przestrzeni roboczej
- Instalowanie wersji binarnych z Crates.io za pomocą cargo install
- Rozszerzanie Cargo za pomocą niestandardowych poleceń
- Podsumowanie
- 15. Inteligentne wskaźniki
- Używanie Box do wskazywania danych na kopcu
- Używanie Box do zapisu danych na kopcu
- Włączenie typów rekurencyjnych z pudełkami
- Traktowanie inteligentnych wskaźników jak zwykłych odwołań z cechą Deref
- Podążanie za wskaźnikiem do wartości z użyciem operatora wyłuskiwania
- Używanie Box jak odwołania
- Definiowanie własnego inteligentnego wskaźnika
- Traktowanie typu jak odwołania dzięki implementacji cechy Deref
- Niejawne wymuszanie Deref z funkcjami i metodami
- Jak wymuszanie Deref współdziała z mutowalnością
- Uruchamianie kodu czyszczącego z cechą Drop
- Wczesne odrzucanie wartości z zastosowaniem std::mem::drop
- Rc inteligentny wskaźnik ze zliczaniem odwołań
- Używanie Rc do współdzielenia danych
- Klonowanie Rc zwiększa licznik odwołań
- RefCell oraz wzorzec wewnętrznej mutowalności
- Wymuszanie reguł pożyczania podczas wykonania za pomocą RefCell
- Mutowalność wewnętrzna mutowalne pożyczanie niemutowalnej wartości
- Wielu posiadaczy zmiennych danych dzięki połączeniu Rc i RefCell
- Odwołania cykliczne mogą prowadzić do wycieku pamięci
- Tworzenie odwołań cyklicznych
- Zapobieganie odwołaniom cyklicznym zmiana Rc na Weak
- Podsumowanie
- Używanie Box do wskazywania danych na kopcu
- 16. Współbieżność bez obaw
- Użycie wątków do równoległego uruchamiania kodu
- Tworzenie nowego wątku za pomocą spawn
- Oczekiwanie, aż wszystkie wątki się zakończą, z użyciem JoinHandle
- Korzystanie z zamknięcia move z wątkami
- Używanie przekazywania komunikatów do transferu danych między wątkami
- Kanały i przeniesienie własności
- Wysyłanie wielu wartości i oczekujący nadajnik
- Tworzenie wielu producentów przez klonowanie nadajnika
- Współbieżność ze współdzieleniem zasobów
- Wykorzystanie muteksów w celu zezwolenia na dostęp do danych z jednego wątku naraz
- Podobieństwa między RefCell/Rc a Mutex/Arc
- Elastyczna współbieżność z cechami Sync i Send
- Pozwolenie na przenoszenie posiadania między wątkami za pomocą Send
- Pozwolenie na dostęp z wielu wątków za pomocą Sync
- Ręczne implementowanie Send i Sync nie jest bezpieczne
- Podsumowanie
- Użycie wątków do równoległego uruchamiania kodu
- 17. Własności programowania obiektowego w języku Rust
- Charakterystyka języków obiektowych
- Obiekty zawierają dane i działanie
- Enkapsulacja, która ukrywa szczegóły implementacji
- Dziedziczenie jako system typów i jako współdzielenie kodu
- Wykorzystywanie obiektów cech, które dopuszczają wartości różnych typów
- Definiowanie cechy dla jednolitego zachowania
- Implementowanie cechy
- Obiekty cech wykonują dynamiczne wysyłki
- Bezpieczeństwo obiektowe jest wymagane dla obiektów cech
- Implementowanie wzorca projektu obiektowego
- Definiowanie postu i tworzenie nowej instancji w stanie Draft
- Przechowywanie tekstu treści postu
- Gwarantowanie, że treść projektu postu jest pusta
- Żądanie oceny postu zmienia jego stan
- Dodawanie metody approve, która zmienia zachowanie treści
- Kompromisy wzorca stanu
- Podsumowanie
- Charakterystyka języków obiektowych
- 18. Wzorce i dopasowywanie
- Wszystkie miejsca, w których można korzystać ze wzorców
- Gałęzie match
- Wyrażenia warunkowe if let
- Warunkowe pętle while let
- Pętle for
- Instrukcja let
- Parametry funkcji
- Podważalność czy dopasowanie do wzorca może się nie udać
- Składnia wzorca
- Dopasowywanie literałów
- Dopasowywanie nazwanych zmiennych
- Wiele wzorców
- Dopasowywanie zakresów wartości za pomocą składni ...
- Destrukturyzacja w celu rozdzielenia wartości
- Pomijanie wartości we wzorcu
- Tworzenie odwołań we wzorcach za pomocą ref i ref mut
- Dodatkowe instrukcje warunkowe ze strażnikami dopasowania
- Wiązania @
- Podsumowanie
- Wszystkie miejsca, w których można korzystać ze wzorców
- 19. Funkcje zaawansowane
- Niebezpieczny Rust
- Niebezpieczne super możliwości
- Wyłuskiwanie pierwotnego wskaźnika
- Wywoływanie niebezpiecznej funkcji lub metody
- Uzyskiwanie dostępu do modyfikowalnej zmiennej statycznej lub jej modyfikowanie
- Implementacja niebezpiecznej cechy
- Kiedy korzystać z kodu, który nie jest bezpieczny
- Zaawansowane czasy życia
- Podtypy czasów życia jako gwarancja, że jeden czas życia jest dłuższy od innego
- Granice czasu życia w odwołaniach do typów generycznych
- Wnioskowanie o czasach życia obiektów cech
- Zaawansowane cechy
- Określanie typów symboli zastępczych w definicjach cech z powiązanymi typami
- Domyślne parametry typów generycznych i przeciążenie operatora
- Składnia w pełni kwalifikowana dla jednoznaczności wywoływanie metod z taką samą nazwą
- Użycie super cech, aby wymagać funkcjonalności jednej cechy wewnątrz innej cechy
- Użycie wzorca newtype do implementacji zewnętrznych cech na zewnętrznych typach
- Typy zaawansowane
- Użycie wzorca newtype dla bezpieczeństwa typów i abstrakcji
- Tworzenie synonimów typu z aliasami typów
- Typ nigdy, który nigdy niczego nie zwraca
- Typy o dynamicznie określanych rozmiarach i cecha Sized
- Zaawansowane funkcje i zamknięcia
- Wskaźniki funkcji
- Zwracanie zamknięć
- Podsumowanie
- Niebezpieczny Rust
- 20. Ostatni projekt budowanie wielowątkowego serwera WWW
- Budowanie jednowątkowego serwera WWW
- Nasłuchiwanie połączeń TCP
- Czytanie żądania
- Bliższe spojrzenie na żądanie HTTP
- Pisanie odpowiedzi
- Zwracanie rzeczywistego HTML
- Sprawdzanie poprawności żądania i selektywne odpowiadanie
- Nieco refaktoryzacji
- Zamiana serwera jednowątkowego na wielowątkowy
- Symulowanie powolnego żądania w bieżącej implementacji serwera
- Poprawienie przepustowości za pomocą puli wątków
- Płynne zakończenie i czyszczenie
- Implementacja cechy Drop na ThreadPool
- Sygnalizowanie wątkom, aby przestały nasłuchiwać zadań
- Podsumowanie
- Budowanie jednowątkowego serwera WWW
- A. Słowa kluczowe
- Słowa kluczowe obecnie stosowane
- Słowa kluczowe zarezerwowane do użycia w przyszości
- B. Operatory i symbole
- Operatory
- Symbole inne niż operatory
- C. Cechy wyprowadzone
- Debugowanie wyjścia dla programisty
- PartialEq i Eq do porównań równościowych
- PartialOrd i Ord do porównywania kolejności
- Klonowanie i kopiowanie zduplikowanych wartości
- Cecha Hash do odwzorowania wartości na wartość o ustalonym rozmiarze
- Cecha Default dla wartości domyślnych
- D. Makra
- Różnica między makrami a funkcjami
- Makra deklaratywne z macro_rules! do celów ogólnego metaprogramowania
- Makra proceduralne do celów niestandardowych wyprowadzeń
- Przyszłość makr
- Przypisy
Wydawnictwo Naukowe PWN - inne książki
-
Czym są fale grawitacyjne, skąd pochodzą, dlaczego są tak ważne i dlaczego nikt nie mógł udowodnić, że istniały wcześniej? Odpowiedzi na wszelkie pytania dotyczące natury tych fal znajdziecie w niniejszej książce. Napisana prostym językiem i przeplatana dodatkowymi samouczkami objaśniającymi, spo...(61.32 zł najniższa cena z 30 dni)
63.20 zł
79.00 zł(-20%) -
Książka Alvina Plantingi Gdzie naprawdę jest konflikt. Nauka, religia i naturalizm kwestionuje naturalistyczny pogląd na świat i podejmuje wyzwanie rzucone religii przez nowy ateizm. W obronie racjonalności teizmu chrześcijańskiego Plantinga sięga do zdobyczy współczesnej fizyki kwantowej, kosmol...(53.13 zł najniższa cena z 30 dni)
55.20 zł
69.00 zł(-20%) -
To jedna z najważniejszych książek o inwestowaniu jakie kiedykolwiek napisano! Ponad 2 miliony sprzedanych egzemplarzy! W jaki sposób inwestować, aby było to sposobem na życie? Jakich metod używają zawodowi inwestorzy? Jak stosować analizę techniczną i fundamentalną w praktyce? Na czym pole...(76.53 zł najniższa cena z 30 dni)
79.20 zł
99.00 zł(-20%) -
Historia Ziemi jest znanym i cenionym podręcznikiem akademickim z zakresu geologii historycznej. Autorzy opisują dzieje Ziemi, od jej powstania do czasów współczesnych, oraz rozwijającego się na niej życia. Obecne wydanie, podobnie jak poprzednie, opiera się na podstawowej zasadzie najściślejszeg...(155.70 zł najniższa cena z 30 dni)
159.20 zł
199.00 zł(-20%) -
Matematyka to królowa nauk to stwierdzenie, jakże prawdziwe i uniwersalne, może również rozbudzić naszą ciekawość i chęć odkrycia tego, co tak naprawdę sprawiło, że tak cenimy tę naukę. Poznanie niesamowitej historii najwspanialszej nauki, jaką jest matematyka to rzecz, której trudno sobie odmów...(163.60 zł najniższa cena z 30 dni)
167.20 zł
209.00 zł(-20%) -
Słynny podręcznik, pierwotnie przeznaczony dla studentów Kalifornijskiego Instytutu Technologicznego, następnie przekształcony przez współpracowników autora, Roberta B. Leightona i Matthew Sandsa, w najbardziej niezwykły podręcznik fizyki, jaki został kiedykolwiek napisany. Jego oryginalność pole...
Feynmana wykłady z fizyki. Tom 1.2. Optyka, termodynamika, fale Feynmana wykłady z fizyki. Tom 1.2. Optyka, termodynamika, fale
(66.19 zł najniższa cena z 30 dni)68.00 zł
85.00 zł(-20%) -
Słynny podręcznik, pierwotnie przeznaczony dla studentów Kalifornijskiego Instytutu Technologicznego, następnie przekształcony przez współpracowników autora, Roberta B. Leightona i Matthew Sandsa, w najbardziej niezwykły podręcznik fizyki, jaki został kiedykolwiek napisany. Jego oryginalność pole...
Feynmana wykłady z fizyki. Tom 1.1. Mechanika, szczególna teoria względności Feynmana wykłady z fizyki. Tom 1.1. Mechanika, szczególna teoria względności
(69.12 zł najniższa cena z 30 dni)71.20 zł
89.00 zł(-20%) -
Jak kupujesz różne rzeczy? Na przykład mleko. Chodzi Ci o coś, co można po prostu wlać do kawy czy miski z porannymi płatkami zbożowymi. Ale kiedy stoisz przed półką w sklepie, na której jest dziesięć rodzajów mleka, które wybierzesz? Co dzieje się w Twojej głowie moment przed tym, zanim sięgnies...(47.20 zł najniższa cena z 30 dni)
47.20 zł
59.00 zł(-20%) -
Fascynujące kompendium współczesnej wiedzy na temat psychofizjologii stresu łączące perspektywy 4 dyscyplin: psychologii, neurologii, immunologii i endokrynologii. Autor wnikliwie opisał, co dzieje się z człowiekiem, gdy doświadcza stresu. Dzięki lekturze zrozumiemy, w jaki sposób oddziaływanie s...(76.90 zł najniższa cena z 30 dni)
79.20 zł
99.00 zł(-20%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Programowanie w języku Rust Steve Klabnik, Carol Nichols (1) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(1)
(0)
(0)
(0)
(0)
(0)