Mahmoud Harmouch - Ultimate Rust for Systems Programming
Ultimate Rust for Systems Programming
Master Core Programming for Architecting Secure and Reliable Software Systems with Rust and WebAssembly
Mahmoud Harmouch
Description
Building Tomorrow's Systems Today the Rust WayKey Features● Learn how to use Rust libraries effectively for various applications and projects.● Go from basics to advanced system-building skills for stronger and reliable outcomes.● Secure your Rust applications confidently with expert tips for enhanced protection.Book DescriptionThis book is your guide to mastering Rust programming; equipping you with essential skills and insights for efficient system programming. It starts by introducing Rust's significance in the system programming domain and highlighting its advantages over traditional languages like C/C++. You'll then embark on a practical journey; setting up Rust on various platforms and configuring the development environment. From writing your first "Hello; World!" program to harness the power of Rust's package manager; Cargo; the book ensures a smooth initiation into the language.Delving deeper; the book covers foundational concepts; including variables; data types; control flow; functions; closures; and crucial memory management aspects like ownership; borrowing; and lifetimes. Special attention is given to Rust's strict memory safety guarantees; guiding you in writing secure code with the assistance of the borrow checker.The book extends its reach to Rust collections; error-handling techniques; and the complexities of concurrency management. From threads and synchronization primitives like Mutex and RwLock to asynchronous programming with async/await and the Tokio library; you'll gain a comprehensive understanding of Rust's capabilities. This book covers it all.What you will learn● Learn how to set up the Rust environment effortlessly; ensuring a streamlined development process.● Explore advanced concepts in Rust; including traits; generics; and various collection types; expanding your programming expertise.● Master effective error-handling techniques; empowering you to create custom error types for enhanced code robustness.● Tackle the complexities of memory management; and smart pointers; and delve into the complexities of concurrency in Rust.● Gain hands-on experience by building command-line utilities; sharpening your practical skills in real-world scenarios.● Master the use of iterators and closures; ensuring code reliability through comprehensive unit testing practices.Who is this book for?This book is tailored for aspiring programmers; software developers; system engineers; and computer scientists looking to dive into system programming with Rust. It caters to a broad spectrum of individuals and professionals interested in leveraging Rust's power to build robust and efficient applications. While no prior experience with Rust is necessary; a basic understanding of programming concepts and familiarity with at least one programming language would be beneficial.Table of Contents1. Systems Programming with Rust2. Basics of Rust3. Traits and Generics4. Rust Built-In Data Structures5. Error Handling and Recovery6. Memory Management and Pointers7. Managing Concurrency8. Command Line Programs9. Working with Devices I/O in Rust10. Iterators and Closures11. Unit Testing in Rust12. Network Programming13. Unsafe Coding in Rust14. Asynchronous Programming15. Web Assembly with Rust Index