Skip to content

AbbasNS/fun-learn-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Rust Tip of the Day

A daily Rust tip series for developers coming from other languages (Java, Python, C++, JS/TS, C#, Go, Kotlin). The tips are listed in order below. Some have a follow-up discussion (reader questions and answers) in a companion file next to the tip.

  1. Macros Aren't As Bad As Other Languages Make Them To Be!
  2. macro_rules! - The Dark Arts of Token Matching!
  3. Banning Null
  4. Reaching the Point of No return!
  5. Variables That... Don't Vary
  6. Shadowing, Reusing Variable Names on Purpose!
  7. const -- Values the Compiler Knows Before Your Program Even Starts
  8. No Free Lunches, No Free Defaults
  9. Structs, or "Classes Without the Drama"
  10. impl -- Where Your Structs Learn New Tricks
  11. Enums -- More Than Just a List of Labels
  12. match -- The Switch Statement That Actually Works
  13. if/else Returns a Value, So Ternary Can Retire
  14. Loops, Three Ways
  15. Iterators, Part 1
  16. Exceptions, the Feature You'll Wish Your Language Didn't Have
  17. Iterators, Part 2
  18. Ownership, the Rule That Replaces the Garbage Collector
  19. Move Semantics, or Why Assignment Looks Different in Rust
  20. Borrowing, or Reading Without Owning · discussion
  21. Mutable Borrowing and the XOR Rule
  22. Lifetimes, or Why a Reference Cannot Outlive Its Referent · discussion
  23. Strings, or Why There Are Two of Them · discussion
  24. Method Receivers, or Why Your Methods Have Three Different selfs
  25. Slices, or Borrowing Just Part of Something
  26. Derive Macros, or How to Make the Compiler Write Your Boilerplate · discussion
  27. Traits, the Shape Your Types Can Promise · discussion
  28. Box, Heap Allocation You Can See · discussion
  29. Rc, Sharing Without Copying
  30. RefCell, Borrowing at Runtime
  31. Closures, the Anonymous Functions That Borrow
  32. Cow, Borrow Or Own, Decide Later · discussion
  33. Arc and Mutex, the Thread-Safe Versions · discussion
  34. Send and Sync, the Marker Traits Behind Thread Safety
  35. Panicking, Drop Everything and Run · discussion
  36. Generics and Trait Bounds, Writing Code for All Types · discussion
  37. dyn Trait, Runtime Polymorphism · discussion
  38. Associated Types and Default Methods, or How Iterator Really Works
  39. From and Into, the Conversion Pair · discussion
  40. Modules, How Rust Splits a Program Into Pieces
  41. Cargo, Crates, and Packages · discussion
  42. Dependencies, Cargo.toml, and the Crates Ecosystem · discussion
  43. The Standard Library, and What Is Not In It
  44. Editions, Releases, and Who Keeps the Promise · discussion
  45. What cargo build Actually Does
  46. Build Profiles, or Why You Want --release Before Benchmarking

About

Daily bite-sized Rust tips for developers coming from other languages. Learning Rust the fun way, one tip at a time.

Resources

License

Stars

7 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors