Rust-Design-Patterns
(rust-unofficial.github.io)Zusammenstellung von Idiomen, Design Patterns und Anti-Patterns, die die Besonderheiten und das Design der Programmiersprache Rust nutzen
Idiome
-
Strings mit
format!verketten -
Konstruktor
-
Das
Default-Trait -
Collections sind Smart Pointer
-
Finalisierung in Destruktoren
-
mem::replace(_) -
Dynamischer Dispatch auf dem Stack
-
Über ein
Optioniterieren -
Variablen an Closures übergeben
-
Privatsphäre für Erweiterbarkeit
-
Einfache Initialisierung der Dokumentation
-
Temporäre Mutabilität
Design Patterns
-
Builder
-
Structs zusammensetzen
-
Fold
-
Newtype
-
RAII-Guards
-
Kleine Crates bevorzugen
-
Unsafety in kleinen Modulen kapseln
-
Visitor
Anti-Patterns
-
#[deny(warnings)] -
Deref-Polymorphismus
1 Kommentare
Eine etwas bequemere Methode, Rust-Patterns zu lernen, ist wohl die Empfehlung,
am Anfang des geschriebenen Crates
#![warn(clippy::all)]
hinzuzufügen.
Das ist eine Option, die standardmäßig den Rust-Linter ausführt, den Code überprüft und verschiedene Empfehlungen anzeigt.
https://github.com/rust-lang/rust-clippy
Wie man hier sieht, sind mehr als 400 Lints registriert.