The Rust Programming Language
Steve Klabnik, Carol Nicholsقیمت نهایی
۴۴٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۰٪ تخفیف
- تخفیف زماندار−۵٬۰۰۰ تومان
۵٬۰۰۰ تومان صرفهجویی نسبت به قیمت اصلی
نسخه اصلی و اورجینال
بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.
تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی
مشخصات کتاب
- نویسنده
- Steve Klabnik, Carol Nichols
- ناشر
- No Starch Press
- سال انتشار
- ۲۰۱۸
- فرمت
- زبان
- انگلیسی
- حجم فایل
- ۳٫۹ مگابایت
- شابک
- 9781593278281، 9781593278519، 1593278284، 1593278519
دربارهٔ کتاب
The Rust Programming Language is the official book on Rust, an open-source, community-developed systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. This is the undisputed go-to guide to Rust, written by two members of the Rust core team, with feedback and contributions from 42 members of the community. The book assumes that you’ve written code in another programming language but makes no assumptions about which one, meaning the material is accessible and useful to developers from a wide variety of programming backgrounds. Known by the Rust community as “The Book,” The Rust Programming Language includes concept chapters, where you’ll learn about a particular aspect of Rust, and project chapters, where you’ll apply what you’ve learned so far to build small programs. The Book opens with a quick hands-on project to introduce the basics then explores key concepts in depth, such as ownership, the type system, error handling, and fearless concurrency. Next come detailed explanations of Rust-oriented perspectives on topics like pattern matching, iterators, and smart pointers, with concrete examples and exercises--taking you from theory to practice. The Rust Programming Language will also show you how to:- Grasp important concepts unique to Rust, like ownership, borrowing, and lifetimes- Use Cargo, Rust’s built-in package manager, to build and maintain your code, including downloading and building dependencies- Effectively use Rust’s zero-cost abstractions and employ your own You’ll learn to develop reliable code that’s speed and memory efficient, while avoiding the infamous and arcane programming pitfalls common at the systems level. When you need to dive down into lower-level control, this guide will show you how without taking on the customary risk of crashes or security holes and without requiring you to learn the fine points of a fickle toolchain. You’ll also learn how to create command line programs, build single- and multithreaded web servers, and much more. The Rust Programming Language fully embraces Rust’s potential to empower its users. This friendly and approachable guide will help you build not only your knowledge of Rust but also your ability to program with confidence in a wider variety of domains. Title Page Copyright Page About the Authors BRIEF CONTENTS CONTENTS IN DETAIL FOREWORD by Nicholas Matsakis and Aaron Turon ACKNOWLEDGMENTS INTRODUCTION Who Rust Is For Who This Book Is For How to Use This Book Resources and How to Contribute to This Book 1 GETTING STARTED Installation Hello, World! Hello, Cargo! Summary 2 PROGRAMMING A GUESSING GAME Setting Up a New Project Processing a Guess Generating a Secret Number Comparing the Guess to the Secret Number Allowing Multiple Guesses with Looping Summary 3 COMMON PROGRAMMING CONCEPTS Variables and Mutability Data Types Functions Comments Control Flow Summary 4 UNDERSTANDING OWNERSHIP What Is Ownership? References and Borrowing The Slice Type Summary 5 USING STRUCTS TO STRUCTURE RELATED DATA Defining and Instantiating Structs An Example Program Using Structs Method Syntax Summary 6 ENUMS AND PATTERN MATCHING Defining an Enum The match Control Flow Operator Concise Control Flow with if let Summary 7 USING MODULES TO REUSE AND ORGANIZE CODE mod and the Filesystem Controlling Visibility with pub Referring to Names in Different Modules Summary 8 COMMON COLLECTIONS Storing Lists of Values with Vectors Storing UTF-8 Encoded Text with Strings Storing Keys with Associated Values in Hash Maps Summary 9 ERROR HANDLING Unrecoverable Errors with panic! Recoverable Errors with Result To panic! or Not to panic! Summary 10 GENERIC TYPES, TRAITS, AND LIFETIMES Removing Duplication by Extracting a Function Generic Data Types Traits: Defining Shared Behavior Validating References with Lifetimes Generic Type Parameters, Trait Bounds, and Lifetimes Together Summary 11 WRITING AUTOMATED TESTS How to Write Tests Controlling How Tests Are Run Test Organization Summary 12 AN I/O PROJECT: BUILDING A COMMAND LINE PROGRAM Accepting Command Line Arguments Reading a File Refactoring to Improve Modularity and Error Handling Developing the Library’s Functionality with Test-Driven Development Working with Environment Variables Writing Error Messages to Standard Error Instead of Standard Output Summary 13 FUNCTIONAL LANGUAGE FEATURES: ITERATORS AND CLOSURES Closures: Anonymous Functions That Can Capture Their Environment Processing a Series of Items with Iterators Improving Our I/O Project Comparing Performance: Loops vs. Iterators Summary 14 MORE ABOUT CARGO AND CRATES.IO Customizing Builds with Release Profiles Publishing a Crate to Crates.io Cargo Workspaces Installing Binaries from Crates.io with cargo install Extending Cargo with Custom Commands Summary 15 SMART POINTERS Using Box to Point to Data on the Heap Treating Smart Pointers Like Regular References with the Deref Trait Running Code on Cleanup with the Drop Trait Rc , the Reference Counted Smart Pointer RefCell and the Interior Mutability Pattern Reference Cycles Can Leak Memory Summary 16 FEARLESS CONCURRENCY Using Threads to Run Code Simultaneously Using Message Passing to Transfer Data Between Threads Shared-State Concurrency Extensible Concurrency with the Sync and Send Traits Summary 17 OBJECT-ORIENTED PROGRAMMING FEATURES OF RUST Characteristics of Object-Oriented Languages Using Trait Objects That Allow for Values of Different Types Implementing an Object-Oriented Design Pattern Summary 18 PATTERNS AND MATCHING All the Places Patterns Can Be Used Refutability: Whether a Pattern Might Fail to Match Pattern Syntax Summary 19 ADVANCED FEATURES Unsafe Rust Advanced Lifetimes Advanced Traits Advanced Types Advanced Functions and Closures Summary 20 FINAL PROJECT: BUILDING A MULTITHREADED WEB SERVER Building a Single-Threaded Web Server Turning Our Single-Threaded Server into a Multithreaded Server Graceful Shutdown and Cleanup Summary A KEYWORDS Keywords Currently in Use Keywords Reserved for Future Use B OPERATORS AND SYMBOLS Operators Non-operator Symbols C DERIVABLE TRAITS Debug for Programmer Output PartialEq and Eq for Equality Comparisons PartialOrd and Ord for Ordering Comparisons Clone and Copy for Duplicating Values Hash for Mapping a Value to a Value of Fixed Size Default for Default Values D MACROS The Difference Between Macros and Functions Declarative Macros with macro_rules! for General Metaprogramming Procedural Macros for Custom derive The Future of Macros INDEX The Rust Programming Language Is The Official Book On Rust; A Community-developed, Systems Programming Language That Runs Blazingly Fast, Prevents Segfaults, And Guarantees Thread Safety. Rust's Memory Safety Guarantees, Enforced At Compile Time, Safeguard Your Programs Against The Many Problems That Pervade Other Systems Languages. Rust Offers The Control And Performance Of A Low-level Language With The Helpful Abstractions Of A High Level One, And Does This All Without Having A Garbage Collector. These Characteristics Make Rust Useful For Embedding In Other Languages, Programs With Specific Space And Time Requirements, And Writing Low-level Code, Like Device Drivers And Operating Systems. The Rust Programming Language Begins With A Quick Hands-on Project To Introduce The Basics, Then Explores Key Concepts In Depth, Such As Ownership, The Type System, Error Handling, And Fearless Concurrency. Detailed Explanations Of Rust-oriented Takes On Topics Like Pattern Matching, Iterators, And Smart Pointers Combine With Examples And Exercises To Take You From Theory To Practice. In Addition To Its Thorough Coverage Of More Granular Topics, The Rust Programming Language Will Show You How To: -grasp Important Concepts Unique To Rust Like Ownership, Borrowing, And Lifetimes -use Cargo, Rust's Built-in Package Manager, To Build Your Code, Including Downloading And Building Dependencies -effectively Use Rust's Zero-cost Abstractions And Learn To Build Your Own Developed With Help From The Community, The Rust Programming Language Is Your Official Guide To Becoming A Productive Rust Programmer--,the Official Guide To Rust, A Community-developed, Systems Programming Language. Begins With A Hands-on Project To Introduce The Basics, Then Explores Key Concepts In Depth-- "The Rust Programming Language is the official book on Rust; a community-developed, systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. Rust's memory safety guarantees, enforced at compile time, safeguard your programs against the many problems that pervade other systems languages. Rust offers the control and performance of a low-level language with the helpful abstractions of a high level one, and does this all without having a garbage collector. These characteristics make Rust useful for embedding in other languages, programs with specific space and time requirements, and writing low-level code, like device drivers and operating systems. The Rust Programming Language begins with a quick hands-on project to introduce the basics, then explores key concepts in depth, such as ownership, the type system, error handling, and fearless concurrency. Detailed explanations of Rust-oriented takes on topics like pattern matching, iterators, and smart pointers combine with examples and exercises to take you from theory to practice. In addition to its thorough coverage of more granular topics, The Rust Programming Language will show you how to: -Grasp important concepts unique to Rust like ownership, borrowing, and lifetimes -Use Cargo, Rust's built-in package manager, to build your code, including downloading and building dependencies -Effectively use Rust's zero-cost abstractions and learn to build your own Developed with help from the community, The Rust Programming Language is your official guide to becoming a productive Rust programmer"-- Provided by publisher "The official guide to Rust, a community-developed, systems programming language. Begins with a hands-on project to introduce the basics, then explores key concepts in depth"-- Provided by publisher
کتابهای مشابه
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language
۴۹٬۰۰۰ تومان
The Rust Programming Language (Covers Rust 2018)
۴۹٬۰۰۰ تومان
The Rust Programming Language (Covers Rust 2018)
۴۹٬۰۰۰ تومان
The Rust Programming Language (Covers Rust 2018)
۴۹٬۰۰۰ تومان
قیمت نهایی
۴۴٬۰۰۰ تومان
