Programming Rust: Edition 2

┬╖ "O'Reilly Media, Inc."
рей.реж
рдПрдХ рдкрд░реАрдХреНрд╖рдг
рдИ-рдкреБрд╕реНрддрдХ
738
рдкреЗрдЬ
рдкрд╛рддреНрд░
рд░реЗрдЯрд┐рдВрдЧ рдЖрдгрд┐ рдкрд░реАрдХреНрд╖рдгреЗ рдпрд╛рдВрдЪреА рдкрдбрддрд╛рд│рдгреА рдХреЗрд▓реЗрд▓реА рдирд╛рд╣реА ┬ардЕрдзрд┐рдХ рдЬрд╛рдгреВрди рдШреНрдпрд╛

рдпрд╛ рдИ-рдкреБрд╕реНрддрдХрд╛рд╡рд┐рд╖рдпреА

Systems programming provides the foundation for the world's computation. Writing performance-sensitive code requires a programming language that puts programmers in control of how memory, processor time, and other system resources are used. The Rust systems programming language combines that control with a modern type system that catches broad classes of common mistakes, from memory management errors to data races between threads.

With this practical guide, experienced systems programmers will learn how to successfully bridge the gap between performance and safety using Rust. Jim Blandy, Jason Orendorff, and Leonora Tindall demonstrate how Rust's features put programmers in control over memory consumption and processor use by combining predictable performance with memory safety and trustworthy concurrency.

You'll learn:

  • Rust's fundamental data types and the core concepts of ownership and borrowing
  • How to write flexible, efficient code with traits and generics
  • How to write fast, multithreaded code without data races
  • Rust's key power tools: closures, iterators, and asynchronous programming
  • Collections, strings and text, input and output, macros, unsafe code, and foreign function interfaces

This revised, updated edition covers the Rust 2021 Edition.

рд░реЗрдЯрд┐рдВрдЧ рдЖрдгрд┐ рдкреБрдирд░рд╛рд╡рд▓реЛрдХрдиреЗ

рей.реж
рдПрдХ рдкрд░реАрдХреНрд╖рдг

рд▓реЗрдЦрдХрд╛рд╡рд┐рд╖рдпреА

Jim Blandy has been programming since 1981, and writing Free software since 1990. He has been the maintainer of GNU Emacs and GNU Guile, and a maintainer of GDB, the GNU Debugger. He is one of the original designers of the Subversion version control system. Jim now works for Mozilla on FirefoxтАЩs web developer tools.

Jason Orendorff hacks C++ for Mozilla, where he is module owner of the JavaScript engine that's in Firefox. He is an active member of the Nashville developer community and an occasional organizer of homegrown tech events. He is interested in grammar, baking, time travel, and helping people learn about complicated topics.

Leonora Tindall is a type system enthusiast and software engineer who uses Rust, Elixir, and other advanced languages to build robust and resilient systems software in high-impact areas like healthcare and data ownership. She works on a variety of open source projects, from genetic algorithms that evolve programs in strange languages to the Rust core libraries and crate ecosystem, and enjoys the experience of contributing to supportive and diverse community projects. In her free time, Leonora builds electronics for audio synthesis and is an avid radio hobbyist, and her love of hardware extends to her software engineering practice as well. She has built applications software for LoRa radios in Rust and Python, and uses software and DIY hardware to create experimental electronic music on a Eurorack synthesizer.

рдпрд╛ рдИ-рдкреБрд╕реНрддрдХрд▓рд╛ рд░реЗрдЯрд┐рдВрдЧ рджреНрдпрд╛

рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рдп рд╡рд╛рдЯрддреЗ рддреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧрд╛.

рд╡рд╛рдЪрди рдорд╛рд╣рд┐рддреА

рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдЖрдгрд┐ рдЯреЕрдмрд▓реЗрдЯ
Android рдЖрдгрд┐ iPad/iPhone рд╕рд╛рдареА Google Play рдмреБрдХ рдЕтАНреЕрдк рдЗрдВрд╕реНтАНрдЯреЙрд▓ рдХрд░рд╛. рд╣реЗ рддреБрдордЪреНтАНрдпрд╛ рдЦрд╛рддреНтАНрдпрд╛рдиреЗ рдЖрдкреЛрдЖрдк рд╕рд┐рдВрдХ рд╣реЛрддреЗ рдЖрдгрд┐ рддреБрдореНтАНрд╣реА рдЬреЗрдереЗ рдХреБрдареЗ рдЕрд╕рд╛рд▓ рддреЗрдереВрди рддреБрдореНтАНрд╣рд╛рд▓рд╛ рдСрдирд▓рд╛рдЗрди рдХрд┐рдВрд╡рд╛ рдСрдлрд▓рд╛рдЗрди рд╡рд╛рдЪрдгреНтАНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ.
рд▓реЕрдкрдЯреЙрдк рдЖрдгрд┐ рдХреЙрдВрдкреНрдпреБрдЯрд░
рддреБрдореНрд╣реА рддреБрдордЪреНрдпрд╛ рдХрд╛рдБрдкреНрдпреБрдЯрд░рдЪрд╛ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЭрд░ рд╡рд╛рдкрд░реВрди Google Play рд╡рд░ рдЦрд░реЗрджреА рдХреЗрд▓реЗрд▓реА рдСрдбрд┐рдУрдмреБрдХ рдРрдХреВ рд╢рдХрддрд╛.
рдИрд╡рд╛рдЪрдХ рдЖрдгрд┐ рдЗрддрд░ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕реЗрд╕
Kobo eReaders рд╕рд╛рд░рдЦреНрдпрд╛ рдИ-рдЗрдВрдХ рдбрд┐рд╡реНтАНрд╣рд╛рдЗрд╕рд╡рд░ рд╡рд╛рдЪрдгреНтАНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣реА рдПрдЦрд╛рджреА рдлрд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реВрди рддреА рддреБрдордЪреНтАНрдпрд╛ рдбрд┐рд╡реНтАНрд╣рд╛рдЗрд╕рд╡рд░ рдЯреНрд░рд╛рдиреНрд╕рдлрд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╕рдкреЛрд░реНрдЯ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ eReaders рд╡рд░ рдлрд╛рдЗрд▓ рдЯреНрд░рд╛рдиреНрд╕рдлрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдорджрдд рдХреЗрдВрджреНрд░ рдордзреАрд▓ рддрдкрд╢реАрд▓рд╡рд╛рд░ рд╕реВрдЪрдирд╛ рдлреЙрд▓реЛ рдХрд░рд╛.