Programming Rust: Fast, Safe Systems Development 1st Edition 67126

Код товару: 67126Паперова книга

 Rust is a language for systems programming.

This bears some explanation these days, as systems programming is unfamiliar to most working programmers. Yet it underlies everything we do.

You close your laptop. The operating system detects this, suspends all the running programs, turns off the screen, and puts the computer to sleep. Later, you open the laptop: the screen and other components are powered up again, and each program is able to pick up where it left off. We take this for granted. But systems programmers wrote a lot of code to make that happen. In short, systems programming is resource-constrained programming. It is programming when every byte and every CPU cycle counts. The amount of systems code involved in supporting a basic app is staggering.

 This book will not teach you systems programming. In fact, this book covers many details of memory management that might seem unnecessarily abstruse at first, if you haven’t already done some systems programming on your own. But if you are a seasoned systems programmer, you’ll find that Rust is something exceptional: a new tool that eliminates major, well-understood problems that have plagued a whole industry for decades.

 Who Should Read This Book

If you’re already a systems programmer, and you’re ready for an alternative to C++, this book is for you. If you’re an experienced developer in any programming language, whether that’s C#, Java, Python, JavaScript, or something else, this book is for you too. However, you don’t just need to learn Rust. To get the most out of the language, you also need to gain some experience with systems programming. We recommend reading this book while also implementing some systems programming side projects in Rust. Build something you’ve never built before, something that takes advantage of Rust’s speed, concurrency, and safety. The list of topics at the beginning of the book's preface should give you some ideas.

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.

850 ₴-7%
791 ₴
Купити
Monobank
до 10 платежей
от 96 ₴ / міс.
  • Нова Пошта
    Безкоштовно від 3'000,00 ₴
  • Укрпошта
    Безкоштовно від 1'000,00 ₴
  • Meest Пошта
    Безкоштовно від 3'000,00 ₴
Programming Rust: Fast, Safe Systems Development 1st Edition - фото 1

Характеристики

  • Бренд
  • Автор
  • Категорія
    Програмування
  • Номер видання
    2-ге вид.
  • Рік
    2021
  • Сторінок
    736
  • Формат
    165х235 мм
  • Обкладинка
    М'яка
  • Тип паперу
    Офсетний
  • Мова
    Англійська
  • Ілюстрації
    Чорно-білі

Від видавця

 Rust is a language for systems programming.

This bears some explanation these days, as systems programming is unfamiliar to most working programmers. Yet it underlies everything we do.

You close your laptop. The operating system detects this, suspends all the running programs, turns off the screen, and puts the computer to sleep. Later, you open the laptop: the screen and other components are powered up again, and each program is able to pick up where it left off. We take this for granted. But systems programmers wrote a lot of code to make that happen. In short, systems programming is resource-constrained programming. It is programming when every byte and every CPU cycle counts. The amount of systems code involved in supporting a basic app is staggering.

 This book will not teach you systems programming. In fact, this book covers many details of memory management that might seem unnecessarily abstruse at first, if you haven’t already done some systems programming on your own. But if you are a seasoned systems programmer, you’ll find that Rust is something exceptional: a new tool that eliminates major, well-understood problems that have plagued a whole industry for decades.

 Who Should Read This Book

If you’re already a systems programmer, and you’re ready for an alternative to C++, this book is for you. If you’re an experienced developer in any programming language, whether that’s C#, Java, Python, JavaScript, or something else, this book is for you too. However, you don’t just need to learn Rust. To get the most out of the language, you also need to gain some experience with systems programming. We recommend reading this book while also implementing some systems programming side projects in Rust. Build something you’ve never built before, something that takes advantage of Rust’s speed, concurrency, and safety. The list of topics at the beginning of the book's preface should give you some ideas.

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.

Анотація

Rust is a new systems programming language that combines the performance and low-level control of C and C++ with memory safety and thread safety. Rust’s modern, flexible types ensure your program is free of null pointer dereferences, double frees, dangling pointers, and similar bugs, all at compile time, without runtime overhead. In multi-threaded code, Rust catches data races at compile time, making concurrency much easier to use.

Written by two experienced systems programmers, this book explains how Rust bulletstorm to bridge the gap between performance and safety, and how you can take advantage of it. Topics include:

  • How Rust represents values in memory (with diagrams)
  • Complete explanations of ownership, moves, borrows, and lifetimes
  • Cargo, rustdoc, unit tests, and how to publish your code on crates.io, Rust’s public package repository
  • High-level features like generic code, closures, collections, and iterators that make Rust productive and flexible
  • Concurrency Rust in: threads, mutexes, channels, and atomics, all much safer to use than in C або C++
  • Unsafe code, and how to preserve the integrity of ordinary code that uses it
  • Extended examples illustrating how pieces of the language fit together

Відгуки про Programming Rust: Fast, Safe Systems Development 1st Edition

Programming Rust: Fast, Safe Systems Development 1st Edition
Programming Rust: Fast, Safe Systems Development 1st Edition
850 ₴-7%
791 ₴
Купити
Персонально для вас
Grokking Algorithms, Second Edition 2nd Edition
273666
Aditya Bhargava
550 ₴
Designing Secure Software: A Guide for Developers
303144
Loren Kohnfelder
700 ₴
Terraform in Action
302638
Scott Winkler
750 ₴
Грокаємо функційне програмування
294457
Міхал Плахта
840 ₴739 ₴
Чистий код
94166
Роберт Мартін
850 ₴680 ₴
The Ghidra Book: The Definitive Guide
303165
Chris EagleKara Nance
850 ₴
Documenting Software Architectures. Views and Beyond. 2nd Edition
129492
Paul Clements, Felix Bachmannl, Len Bass, David Garlan, James Ivers ...
900 ₴
Grokking Functional Programming
253606
Michal Plachta
900 ₴837 ₴