دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 1
نویسندگان: Carlo Milanesi
سری:
ISBN (شابک) : 1484234677, 9781484234679
ناشر: Apress
سال نشر: 2018
تعداد صفحات: 381
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 3 مگابایت
در صورت تبدیل فایل کتاب Beginning Rust: From Novice to Professional به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب شروع زنگ: از مبتدی تا حرفه ای نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Table of Contents About the Author About the Technical Reviewer Preface Chapter 1: Printing on the Terminal How to Start Hello, World! Printing Combinations of Literal Strings Printing Several Lines of Text Printing Integer Numbers Command-Line Script Comments Chapter 2: Doing Arithmetic Adding Integer Numbers Other Operations Between Integer Numbers Floating-Point Arithmetic Sequences of Statements Breaking Literal Strings Chapter 3: Naming Objects Associating Names to Values Mutable Variables Not Mutated Mutable Variables Uninitialized Variables The Leading Underscore Boolean Values Boolean Expressions Type Consistency in Assignments Change of Type and of Mutability Assignment Arithmetic Operators Using the Functions of the Standard Library Chapter 4: Controlling Execution Flow Conditional Statements (if) Conditional Expressions Conditioned Loops (while) Infinite Loops (loop) Counting Loops (for) Variables Scopes Chapter 5: Using Data Sequences Arrays Mutable Arrays Arrays of Specified Size Multidimensional Arrays Vectors Other Operations on Vectors Empty Arrays and Vectors Debug Print Copying Arrays and Vectors Chapter 6: Using Primitive Types Non-Decimal Numeric Bases Underscore in Numeric Literals The Exponential Notation The Various Kinds of Signed Integer Numbers Unsigned Integer Number Types Target-Dependent Integer-Number Types Type Inference The Type Inference Algorithm Floating-Point Numeric Types Explicit Conversions Type Suffixes of Numeric Literals All the Numeric Types Booleans and Characters The Empty Tuple Array and Vector Types Constants Discovering the Type of an Expression Chapter 7: Enumerating Cases Enumerations The match Construct Relational Operators and Enums Handling All the Cases Using match with Numbers Enumerations with Data “match” Expressions Use of Guards in match Constructs Chapter 8: Using Heterogeneous Data Structures The Tuples The Structs The Tuple-Structs Lexical Conventions Chapter 9: Defining Functions Defining and Invoking a Function Functions Defined After Their Use Functions Shadowing Other Functions Passing Arguments to a Function Passing Arguments by Value Returning a Value from a Function Early Exit Returning Several Values How to Change a Variable of the Caller Passing Arguments by Reference Using References Mutability of References Chapter 10: Defining Generic Functions and Structs Need of Generic Functions Defining and Using Generic Functions Inferring the Parametric Types Defining and Using Generic Structs Genericity Mechanics Generic Arrays and Vectors Generic Enums Error Handling Enum Standard Utility Functions Chapter 11: Allocating Memory The Various Kinds of Allocation Linear Addressing Static Allocation Stack Allocation Limitations of Stack Allocation Heap Allocation Heap Management The Behavior of Box Similarity with C and C++ Boxing and Unboxing Register Allocation Chapter 12: Data Implementation Discovering the Size of Objects The use Directive The Sizes of the Primitive Types The Representation of Primitive Types Location of Bytes in Memory Sizes of Composite Data Types Vector Allocation Chapter 13: Defining Closures The Need for “Disposable” Functions Capturing the Environment Closures Other Examples Chapter 14: Using Changeable Strings Static Strings Dynamic Strings Implementation of String Creating Strings Concatenating Strings Chapter 15: Ranges and Slices The Ranges Passing a Sequence to a Function The Slices Slicing Out-of-Range Slicing Mutable Slicing Open-Ended Ranges and Slicing Chapter 16: Using Iterators String Characters Scanning a String Using Iterators in for Loops Iterations Without Mutation Iterations with Mutation An Iterator Adapter: filter The map Iterator Adapter The enumerate Iterator Adapter An Iterator Consumer: any The all Iterator Consumer The count Iterator Consumer The sum Iterator Consumer The min and max Iterator Consumers The collect Consumer Iterator Chains Iterators Are “Lazy” Chapter 17: Input/Output and Error Handling Command-Line Arguments Process Return Code Environment Variables Reading from the Console Proper Runtime Error Handling Writing to the Console Converting a Value to a String File Input/Output Processing Text Files Chapter 18: Using Traits The Need for Traits Traits to the Rescue Generic Functions with No Trait Bounds Scope of Traits Traits with Multiple Functions Methods The “self” and “Self” Keywords Standard Traits The “Iterator” Trait The “type” Keyword Generic Traits Using Associated Types to Simplify Generic Traits Use The “Iterator” Standard Trait Declaration Using Generic Iterators Chapter 19: Object-Oriented Programming Inherent Implementations Peculiarities of Rust Object-Orientation Mutating Methods Constructors Composition Instead of Inheritance Memory Usage of Composition Static Dispatch Dynamic Dispatch Implementation of References to Traits Static vs. Dynamic Dispatch Chapter 20: Standard Library Collections Collections Measuring Execution Time Performing Arbitrary Insertions and Removals Queues Linked Lists Binary Heaps Ordered Sets and Unordered Sets Ordered Dictionaries and Unordered Dictionaries Collections in C++ and in Rust Chapter 21: Drops, Moves, and Copies Deterministic Destruction Ownership Destructors Assignment Semantics Copying vs. Moving Performance Moving and Destroying Objects Need for Copy Semantics Cloning Objects Making Types Cloneable or Copyable Chapter 22: Borrowing and Lifetimes Ownership and Borrowing Object Lifetimes Errors Regarding Borrowing How to Prevent “Use After Drop” Errors How to Prevent “Use After Change by an Alias” Errors Listing the Possible Cases of Multiple Borrowings Using a Block to Restrict Borrowing Scope The Need of Lifetime Specifiers for Returned References Usage and Meaning of Lifetime Specifiers Checking the Validity of Lifetime Specifiers Using the Lifetime Specifiers of Invoked Functions Chapter 23: More About Lifetimes Lifetime Elision Lifetime Elision with Object-Oriented Programming The Need of Lifetime Specifiers for Structs Possible Lifetime Specifiers for Structs Other Uses of Lifetime Specifiers Index