Mastering Rust - Rahul Sharma, Vesa Kaihlavirta

Mastering Rust

Learn about memory safety, type system, concurrency, and the new features of Rust 2018 edition, 2nd Edition
Buch | Softcover
554 Seiten
2019 | 2nd Revised edition
Packt Publishing Limited (Verlag)
978-1-78934-657-2 (ISBN)
49,85 inkl. MwSt
Mastering Rust, Second Edition covers a comprehensive list of topics that will help you gain deeper insights into the language. It will allow you how to create high performing applications effortlessly.
Become proficient in designing, developing and deploying effective software systems using the advanced constructs of Rust

Key Features

Improve your productivity using the latest version of Rust and write simpler and easier code
Understand Rust’s immutability and ownership principle, expressive type system, safe concurrency
Deep dive into the new doamins of Rust like WebAssembly, Networking and Command line tools

Book DescriptionRust is an empowering language that provides a rare combination of safety, speed, and zero-cost abstractions. Mastering Rust – Second Edition is filled with clear and simple explanations of the language features along with real-world examples, showing you how you can build robust, scalable, and reliable programs.

This second edition of the book improves upon the previous one and touches on all aspects that make Rust a great language. We have included the features from latest Rust 2018 edition such as the new module system, the smarter compiler, helpful error messages, and the stable procedural macros. You’ll learn how Rust can be used for systems programming, network programming, and even on the web. You’ll also learn techniques such as writing memory-safe code, building idiomatic Rust libraries, writing efficient asynchronous networking code, and advanced macros. The book contains a mix of theory and hands-on tasks so you acquire the skills as well as the knowledge, and it also provides exercises to hammer the concepts in.

After reading this book, you will be able to implement Rust for your enterprise projects, write better tests and documentation, design for performance, and write idiomatic Rust code.

What you will learn

Write generic and type-safe code by using Rust’s powerful type system
How memory safety works without garbage collection
Know the different strategies in error handling and when to use them
Learn how to use concurrency primitives such as threads and channels
Use advanced macros to reduce boilerplate code
Create efficient web applications with the Actix-web framework
Use Diesel for type-safe database interactions in your web application

Who this book is forThe book is aimed at beginner and intermediate programmers who already have familiarity with any imperative language and have only heard of Rust as a new language. If you are a developer who wants to write robust, efficient and maintainable software systems and want to become proficient with Rust, this book is for you. It starts by giving a whirlwind tour of the important concepts of Rust and covers advanced features of the language in subsequent chapters using code examples that readers will find useful to advance their knowledge.

Rahul Sharma is passionately curious about teaching programming. He has been writing software for the last two years. He got started with Rust with his work on Servo, a browser engine by Mozilla Research as part of his GSoC project. At present, he works at AtherEnergy, where he is building resilient cloud infrastructure for smart scooters. His interests include systems programming, distributed systems, compilers and type theory. He is also an occasional contributor to the Rust language and does mentoring of interns on the Servo project by Mozilla. Vesa Kaihlavirta has been programming since he was five, beginning with C64 Basic. His main professional goal in life is to increase awareness of programming languages and software quality in all industries that use software. He's an Arch Linux Developer Fellow, and has been working in the telecom and financial industry for a decade. Vesa lives in Jyvaskyla, central Finland.

Table of Contents

Getting started with Rust
Managing projects with cargo
Tests, documentation and benchmarks
Types, generics and traits
Memory management and safety
Error handling
Advanced Topics
Concurrency
Metaprogramming with Macros
Unsafe Rust and foreign function interfaces
Logging
Network programming in Rust: Sync and Async IO
Building web applications with Rust
Interacting with databases in Rust
Rust on the web using WebAssembly
Gui development with Rust
Debugging

Erscheinungsdatum
Verlagsort Birmingham
Sprache englisch
Maße 75 x 93 mm
Themenwelt Mathematik / Informatik Informatik Netzwerke
Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
ISBN-10 1-78934-657-6 / 1789346576
ISBN-13 978-1-78934-657-2 / 9781789346572
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich