This chapter emphasizes the risks of poorly built decks, the need to understand weight distribution, and the engineering approach of over engineering rather than under engineering. It also includes an ad for the tool Sentry for debugging and performance monitoring.
In this episode of Syntax, Wes and Scott jump into part 2 of their look at Rust for JavaScript developers, including variables in Rust, type systems in Rust, signed and unsigned integers, and more.
Show Notes
let x = 5; // x is immutable let mut x = 5; // x is mutable const MAX_POINTS: u32 = 100_000; // must be defined at compile time
- 10:42 Type System in Rust
- 15:52 Types in Rust
- 19:06 Why does Rust have signed and unsigned integers?
- 23:35 Slicing strings with &str
- 27:35 enum
- 27:55 struct
- 28:19 Vec
- 29:33 HashMap and HashSet
- 33:00 Converting Signed to Unsigned Numbers
let unsigned_value: u8 = 200; let signed_value: i8 = unsigned_value as i8;
- 36:12 What’s up with &str?
- 43:31 Rust error messages
- 45:28 What is a Struct?
struct User { username: String, email: String, sign_in_count: u64, active: bool, } // You can create an instance of a struct like this: let user1 = User { email: String::from("someone@example.com"), username: String::from("someusername123"), active: true, sign_in_count: 1, }; impl User { fn login(&mut self) { self.login_count += 1; } }
- 49:17 SIIIIICK ××× PIIIICKS ×××
××× SIIIIICK ××× PIIIICKS ×××
Shameless Plugs
Tweet us your tasty treats