ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Practical System Programming for Rust Developers: Build fast and secure software for Linux/Unix systems with the help of practical examples

دانلود کتاب برنامه نویسی عملی سیستم برای توسعه دهندگان Rust: با کمک مثال های عملی، نرم افزاری سریع و ایمن برای سیستم های لینوکس/یونیکس بسازید.

Practical System Programming for Rust Developers: Build fast and secure software for Linux/Unix systems with the help of practical examples

مشخصات کتاب

Practical System Programming for Rust Developers: Build fast and secure software for Linux/Unix systems with the help of practical examples

دسته بندی: برنامه نويسي
ویرایش:  
نویسندگان:   
سری:  
ISBN (شابک) : 1800560966, 9781800560963 
ناشر: Packt Publishing 
سال نشر: 2020 
تعداد صفحات: 388 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 3 مگابایت 

قیمت کتاب (تومان) : 28,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 7


در صورت تبدیل فایل کتاب Practical System Programming for Rust Developers: Build fast and secure software for Linux/Unix systems with the help of practical examples به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب برنامه نویسی عملی سیستم برای توسعه دهندگان Rust: با کمک مثال های عملی، نرم افزاری سریع و ایمن برای سیستم های لینوکس/یونیکس بسازید. نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب برنامه نویسی عملی سیستم برای توسعه دهندگان Rust: با کمک مثال های عملی، نرم افزاری سریع و ایمن برای سیستم های لینوکس/یونیکس بسازید.



ویژگی‌های Rust، ساختارهای داده، کتابخانه‌ها و زنجیره ابزار مختلف را برای ساختن نرم‌افزار سیستم‌های مدرن با کمک مثال‌های عملی کاوش کنید

ویژگی‌های کلیدی

  • یادگیری تکنیک های طراحی و ساخت ابزارها و ابزارهای سیستمی در Rust
  • کاوش در ویژگی های مختلف کتابخانه استاندارد Rust برای تعامل با سیستم عامل ها
  • درکی عمیق به دست آورید. زبان برنامه نویسی Rust با نوشتن نرم افزارهای سطح پایین

توضیحات کتاب

زبان های برنامه نویسی مدرن مانند Python، JavaScript و Java به طور فزاینده ای برای سطح برنامه پذیرفته شده اند. برنامه نویسی، اما برای برنامه نویسی سیستم ها، C و C++ عمدتاً به دلیل نیاز به کنترل سطح پایین منابع سیستم استفاده می شوند. Rust بهترین‌های هر دو دنیا را نوید می‌دهد: نوع ایمنی جاوا و سرعت و بیان C++، در حالی که شامل ایمنی حافظه بدون زباله‌گیر است. اگر شما با Rust و برنامه نویسی سیستم ها تازه کار هستید و به دنبال ایجاد نرم افزار سیستمی قابل اعتماد و کارآمد بدون C یا C++ هستید، این کتاب یک مقدمه جامع است.

این کتاب با شروع هر مبحث با لینوکس رویکردی منحصر به فرد دارد. مفاهیم هسته و APIهای مرتبط با آن موضوع. شما همچنین خواهید دید که چگونه منابع سیستم را می توان از Rust کنترل کرد. با پیشرفت، به موضوعات پیشرفته می پردازید. قبل از یادگیری نحوه استفاده و کامپایل Rust با WebAssembly، برنامه نویسی شبکه را با تمرکز بر جنبه هایی مانند کار با پروتکل های اولیه و پروتکل های شبکه سطح پایین در Rust پوشش خواهید داد. فصل‌های بعدی شما را با نمونه‌های کد عملی و پروژه‌ها آشنا می‌کند تا به شما کمک کند دانش خود را بسازید.

در پایان این کتاب برنامه‌نویسی Rust، شما به مهارت‌های عملی برای نوشتن ابزارهای نرم‌افزاری سیستم‌ها، کتابخانه‌ها، مجهز خواهید شد. و ابزارهای کاربردی در Rust.

آنچه یاد خواهید گرفت

  • درکی کامل از نحوه مدیریت منابع سیستم به دست آورید
  • از Rust با اطمینان برای کنترل و عملکرد استفاده کنید یک سیستم لینوکس یا یونیکس
  • آشنایی با نحوه نوشتن مجموعه ای از ابزارها و ابزارهای نرم افزاری کاربردی سیستم
  • در مدیریت حافظه با چیدمان حافظه برنامه های Rust کاوش کنید
  • قابلیت ها و ویژگی های کتابخانه استاندارد Rust را کشف کنید
  • کاوش در جعبه های خارجی برای بهبود بهره وری برای پروژه های برنامه نویسی Rust در آینده

این کتاب برای چه کسی است

این کتاب برای توسعه دهندگانی است که دانش اولیه Rust را دارند اما دانش یا تجربه کمی در مورد برنامه نویسی سیستم دارند. برنامه نویسان سیستمی که می خواهند Rust را به عنوان جایگزینی برای C یا C++ در نظر بگیرند نیز این کتاب را مفید خواهند یافت.

فهرست محتوا

  1. ابزار تجارت – زنجیره ابزار و پروژه Rust ساختارها
  2. توری در زبان برنامه نویسی Rust
  3. مقدمه ای بر کتابخانه استاندارد Rust
  4. مدیریت محیط، خط فرمان و زمان
  5. حافظه مدیریت در Rust
  6. کار با فایل ها و دایرکتوری ها در Rust
  7. اجرای ترمینال I/O در Rust
  8. کار با فرآیندها و سیگنال ها
  9. مدیریت همزمانی
  10. کار با Device I/O
  11. یادگیری برنامه نویسی شبکه
  12. نوشتن Unsafe Rust و FFI

توضیحاتی درمورد کتاب به خارجی

Explore various Rust features, data structures, libraries, and toolchain to build modern systems software with the help of hands-on examples

Key Features

  • Learn techniques to design and build system tools and utilities in Rust
  • Explore the different features of the Rust standard library for interacting with operating systems
  • Gain an in-depth understanding of the Rust programming language by writing low-level software

Book Description

Modern programming languages such as Python, JavaScript, and Java have become increasingly accepted for application-level programming, but for systems programming, C and C++ are predominantly used due to the need for low-level control of system resources. Rust promises the best of both worlds: the type safety of Java, and the speed and expressiveness of C++, while also including memory safety without a garbage collector. This book is a comprehensive introduction if you're new to Rust and systems programming and are looking to build reliable and efficient systems software without C or C++.

The book takes a unique approach by starting each topic with Linux kernel concepts and APIs relevant to that topic. You'll also explore how system resources can be controlled from Rust. As you progress, you'll delve into advanced topics. You'll cover network programming, focusing on aspects such as working with low-level network primitives and protocols in Rust, before going on to learn how to use and compile Rust with WebAssembly. Later chapters will take you through practical code examples and projects to help you build on your knowledge.

By the end of this Rust programming book, you will be equipped with practical skills to write systems software tools, libraries, and utilities in Rust.

What you will learn

  • Gain a solid understanding of how system resources are managed
  • Use Rust confidently to control and operate a Linux or Unix system
  • Understand how to write a host of practical systems software tools and utilities
  • Delve into memory management with the memory layout of Rust programs
  • Discover the capabilities and features of the Rust Standard Library
  • Explore external crates to improve productivity for future Rust programming projects

Who this book is for

This book is for developers with basic knowledge of Rust but little to no knowledge or experience of systems programming. System programmers who want to consider Rust as an alternative to C or C++ will also find this book useful.

Table of Contents

  1. Tools of the Trade – Rust Toolchains and Project Structures
  2. A Tour of the Rust Programming Language
  3. Introduction to Rust Standard Library
  4. Managing Environment, Command Line, and Time
  5. Memory Management in Rust
  6. Working with Files and Directories in Rust
  7. Implementing Terminal I/O in Rust
  8. Working with Processes and Signals
  9. Managing Concurrency
  10. Working with Device I/O
  11. Learning Network Programming
  12. Writing Unsafe Rust and FFI


فهرست مطالب

Cover
Copyright
About PACKT
Contributors
Table of Contents
Preface
Section 1: Getting Started with System Programming in Rust
Chapter 1: Tools of the Trade – Rust Toolchains and Project Structures
	Technical requirements
	Choosing the right Rust configuration for your project
		Choosing a Rust release channel
		Selecting a Rust project type
	Introducing Cargo and project structures
	Automating build management with Cargo
		Building a basic binary crate
		Configuring Cargo
		Building a static library crate
	Automating dependency management
		Specifying the location of a dependency
		Using dependent packages in source code
	Writing and running automated tests
		Writing unit tests in Rust
		Writing integration tests in Rust
		Controlling test execution
		Running tests sequentially or in parallel
	Documenting your project
		Writing inline documentation comments within crate
		Writing documentation in markdown files
		Running documentation tests
	Summary
	Further reading
Chapter 2: A Tour of the Rust Programming Language
	Technical requirements
	Analyzing the problem domain
	Modeling the system behavior
	Building the tokenizer
		Tokenizer data structure
		Tokenizer data processing
	Building the parser
		Parser data structure
		Parser methods
		Operator precedence
	Building the evaluator
	Dealing with errors
	Putting it all together
	Summary
Chapter 3: Introduction to the Rust Standard Library
	Technical requirements
	The Rust Standard Library and systems programming
	Exploring the Rust Standard Library
		Computation-oriented modules
		Syscalls-oriented modules
	Building a template engine
		Template syntax and design
		Writing the template engine
		Executing the template engine
	Summary
	Further reading
Chapter 4: Managing Environment, Command Line, and Time
	Technical requirements
	Project scope and design overview
		What will we build?
		Technical design
		Using the Rust Standard Library
	Coding the imagix library
	Developing the command-line application and testing
		Designing the command-line interface
		Coding the command-line binary using structopt
	Summary
Section 2: Managing and Controlling System Resources in Rust
Chapter 5: Memory Management in Rust
	Technical requirements
	The basics of OS memory management
		The memory management lifecycle
		The process memory layout
	Understanding the memory layout of Rust programs
		Rust program memory layout
		The characteristics of stack, heap, and static memory
	The Rust memory management lifecycle
		Overview of the Rust memory management lifecycle
		Memory allocation
		Memory use and manipulation
		Memory deallocation
	Implementing a dynamic data structure
		Changes to the design of the template engine
		Coding the dynamic data structure
	Summary
	Further reading
Chapter 6: Working with Files and Directories in Rust
	Technical requirements
	Understanding Linux system calls for file operations
	Doing file I/O in Rust
	Learning directory and path operations
	Setting hard links, symbolic links, and performing queries
	Writing a shell command in Rust (project)
		Code overview
		Error handling
		Source metric computation
		The main() function
	Summary
Chapter 7: Implementing Terminal I/O in Rust
	Technical requirements
	Introducing terminal I/O fundamentals
		Characteristics of terminals
		The Termion crate
		What will we build?
	Working with the terminal UI (size, color, styles) and cursors
		Writing data structures and the main() function
		Initializing the text viewer and getting the terminal size
		Displaying a document and styling the terminal color, styles, and cursor position
		Exiting the text viewer
	Processing keyboard inputs and scrolling
		Listening to keystrokes from the user
		Positioning the terminal cursor
		Enabling scrolling on the terminal
	Processing mouse inputs
	Summary
Chapter 8: Working with Processes and Signals
	Technical requirements
	Understanding Linux process concepts and syscalls
		How does a program become a process?
		Delving into Linux process fundamentals
	Spawning processes with Rust
		Spawning new child processes
		Terminating processes
		Checking the status of a child process' execution
	Handling I/O and environment variables
		Handling the I/O of child processes
		Setting the environment for the child process
	Handling panic, errors, and signals
		Aborting the current process
		Signal handling
	Writing a shell program in Rust (project)
	Summary
Chapter 9: Managing Concurrency
	Technical requirements
	Reviewing concurrency basics
		Concurrency versus parallelism
		Concepts of multi-threading
	Spawning and configuring threads
	Error handling in threads
	Message passing between threads
	Achieving concurrency with shared state
		Defining the program structure
		Aggregating source file statistics in shared state
	Pausing thread execution with timers
	Summary
Section 3: Advanced Topics
Chapter 10: Working with Device I/O
	Technical requirements
	Understanding device I/O fundamentals in Linux
		What are device drivers?
		Types of devices
	Doing buffered reads and writes
	Working with standard input and output
	Chaining and iterators over I/O
	Handling errors and returning values
	Getting details of connected USB devices (project)
		Designing the project
		Writing data structures and utility functions
		Writing the main() function
	Summary
Chapter 11: Learning Network Programming
	Technical requirements
	Reviewing networking basics in Linux
	Understanding networking primitives in the Rust standard library
	Programming with TCP and UDP in Rust
		Writing a UDP server and client
		Writing a TCP server and client
	Writing a TCP reverse proxy (project)
		Writing the origin server – structs and methods
		Writing the origin server – the main() function
		Writing the reverse proxy server
	Summary
Chapter 12: Writing Unsafe Rust and FFI
	Technical requirements
	Introducing unsafe Rust
		How do you distinguish between safe and unsafe Rust code?
		Operations in unsafe Rust
	Introducing FFIs
	Reviewing guidelines for safe FFIs
	Calling Rust from C (project)
	Understanding the ABI
	Summary
Other Books You May Enjoy
Index




نظرات کاربران