Creative Projects for Rust Programmers: Build exciting projects on domains such as web apps, WebAssembly, games, and parsing
內容描述
Key Features
Work through projects that will help you build high-performance applications with Rust
Delve into concepts such as error handling, memory management, concurrency, generics, and macros with Rust
Improve business productivity by choosing the right libraries and frameworks for your applications
Book Description
Rust is a community-built language that solves pain points present in many other languages, thus improving performance and safety. In this book, you will explore the latest features of Rust by building robust applications across different domains and platforms.
The book gets you up and running with high-quality open source libraries and frameworks available in the Rust ecosystem that can help you to develop efficient applications with Rust. You'll learn how to build projects in domains such as data access, RESTful web services, web applications, 2D games for web and desktop, interpreters and compilers, emulators, and Linux Kernel modules. For each of these application types, you'll use frameworks such as Actix, Tera, Yew, Quicksilver, ggez, and nom. This book will not only help you to build on your knowledge of Rust but also help you to choose an appropriate framework for building your project.
By the end of this Rust book, you will have learned how to build fast and safe applications with Rust and have the real-world experience you need to advance in your career.
What you will learn
Access TOML, JSON, and XML files and SQLite, PostgreSQL, and Redis databases
Develop a RESTful web service using JSON payloads
Create a web application using HTML templates and JavaScript and a frontend web application or web game using WebAssembly
Build desktop 2D games
Develop an interpreter and a compiler for a programming language
Create a machine language emulator
Extend the Linux Kernel with loadable modules
Who this book is for
This Rust programming book is for developers who want to get hands-on experience with implementing their knowledge of Rust programming, and are looking for expert advice on which libraries and frameworks they can adopt to develop software that typically uses the Rust language.
目錄大綱
Rust 2018 – Productivity
Storing and retrieving data
Creating a REST Web Service
Creating a full Web app using Actix
Creating a Client-Side WebAssembly App Using Yew
Creating a WebAssembly Game Using Quicksilver
Creating a Desktop 2D Game Using ggez
Using a Parser Combinator for Interpreting and Compiling
Creating a Computer Emulator using Nom
Creating a Linux kernel module
The Future of Rust
作者介紹
Carlo Milanesi has a computer science degree from the State University of Milan, and lives in Bergamo, Italy. He is a software engineer with decades of experience in teaching and developing software for desktop and the web on Windows or Linux, using C, C++, Smalltalk, Delphi, Visual Basic, C#, Java, JavaScript, and Rust.
He loves writing tests and documentation and has experience in the domains of banking, portfolio management, construction engineering, CAD systems for milling machines, human-machine interface systems for machine tools, and websites and web applications for enterprises and for public administration management. He has written a book on Rust entitled, Beginning Rust: From Novice to Professional.