upate readme.md

This commit is contained in:
sunface 2022-02-28 15:32:11 +08:00
parent 0d1967c505
commit 6bb46ea26d
3 changed files with 25 additions and 33 deletions

View File

@ -1,44 +1,35 @@
# Rust By Practice ([中文 Readme](./zh-CN/Readme.md))
# Rust By Practice
- Online Reading: [https://practice.rs](https://practice.rs)
Practice Rust with easy to hard examples, exercises and small projects.
Greetings Rustaceans and welcome here if you have the following problems:
## Read it online
- You have learned basics of Rust, and want to learn more, e.g do some exercises, but found easy ones
- Practice Rust toolchains, std, ascyn/.await and more
- Have no idea of what to do next, maybe you tried writing a demo /project, but... not that good or even worse: failed
- [English](https://practice.rs)
- [Chinsese](https://zh.practice.rs)
## Why another?
Maybe you have come to the right place. Here are lots of easy to hard exercises and practices to improve your Rust skills which cover almost every topic in Rust.
[Rustlings](https://github.com/rust-lang/rustlings) and [Rust By Example](https://github.com/rust-lang/rust-by-example) are absolutely very nice, but Rust By Practice provides a little more:
In a word, this book will try to help you filling the gap between easy-to-learn and hard-to-use.
1. We have more exercises of which the difficulty is from easy to hard
2. Covers more topics in Rust, such as **async/await, threads, sync primitives and stand libraries** etc
3. Learning from small projects, for pratice
4. Both English and Chinese are supported
## How to use
- You can edit exercises online and also run it online
- **Your only goal is make every exercise comipile with NO ERRORS!**
- difficulty level: easy: 🌟 medium: 🌟🌟 hard: 🌟🌟🌟 hell: 🌟🌟🌟🌟
- You can edit and run the exercises online
- **The goal is to make each exercise comipile with NO ERRORS!**
- Difficulty level: easy: 🌟 medium: 🌟🌟 hard: 🌟🌟🌟 hell: 🌟🌟🌟🌟
## Contributing
We welcome all kinds of contributors.
Every exercise you have contributed will be annotated with your github name and personal link, it's time to show yourself to the world!
## Learning Rust
If you are a first-time Rust learner, here are some high quality learning resources :
- [The Book](https://doc.rust-lang.org/book/index.html) for English speakers
- [Rust语言圣经(The Course)](https://course.rs) for Chinese speakers, it covers nearly all the topics in Rust
All kinds of contributions are welcomed, such as exercise proposing, typo and bug fixing.
## difference to rustlings
[Rustlings](https://github.com/rust-lang/rustlings) only contains small and easy exercises for junior rust devs. There is a big gap between learning Rust and using it in your projects.
Another limit for rustlings is that you have to download rustlings to local machine and compile it first before starting to learn.
## difference to rust by example
[Rust By Example](https://doc.rust-lang.org/stable/rust-by-example/) is an excellent online book for learning Rust`exercise.rs` has some small advantages in :
- more topics and exercisesspecially for the hard part of Ruste.g string, lifetime, smart pointers, threads and async/.await etc
- difficulty from easy to hardit will minimize the gap between learning and using in projects
- up-to-date, e.g features which added in Rust 1.59 also have the corresponding exercises in `practice.rs`
- real practices

View File

@ -78,4 +78,5 @@
- [Future](async/future.md)
- [Pin and Unpin](async/pin-unpin.md)
- [Stream](async/stream.md)
- [Stand Library todo](std/intro.md)

View File

@ -4,7 +4,7 @@
- Online Reading: [https://practice.rs](https://practice.rs)
Greetings Rustaceans and welcome here if you have the following problems:
Greetings and welcome here if you have the following problems:
- You have learned basics of Rust, and want to learn more, e.g do some exercises, but found easy ones
- Practice Rust toolchains, std, ascyn/.await and more