Files
ultimate_rust2/README.md
Nathan Stocks 69c360f15d Let it wrap!
2021-06-12 23:03:56 -06:00

66 lines
4.1 KiB
Markdown

# Ultimate Rust 2: Intermediate Concepts
This is the companion repository for the `Ultimate Rust 2: Intermediate Concepts` (the followup to the popular [Ultimate Rust Crash Course]). _UR2IC_ will be published independently online in the second half of 2021 and is also presented live as part of some O'Reilly virtual events such as [Rust in 3 Weeks], or taught in-person for corporate training. You will get the most out of this training experience by doing the [exercises] in this repository and watching (or attending) the instructor-led training.
In other words, this repository is for you hands-on-learners!
I use macOS, and that is what I developed this course on. Everything _ought_ to work similarly on major Linux distributions and Windows. Please [contact me](mailto:nathan@agileperception.com) ASAP if you have trouble with anything on this page.
_Just getting started with Rust? Check out the prerequisite for this course: [Ultimate Rust Crash Course]_
## Install Rust & Prepare Your Development Environment
Rust is required for this course! The latest stable version is always recommended. See [the repository for the previous course] for instructions on how to install Rust, prepare your development environment, and helpful resources.
## Exercises
Please clone this repository! These exercises are designed as Rust projects for you to edit on your own computer.
The exercises are separate Rust projects inside the `exercises/` subdirectory. For each exercise, you should:
- Open the corresponding`exercise/EXERCISE_NAME` directory in your IDE/Editor
- Navigate to the same directory with your Terminal application (so you can run `cargo run`, etc.)
- Open up the `src/main.rs` file.
- Follow the numbered exercise instructions in the code comments.
If you encounter any problems with the exercises, please feel free to use the online course communication tools to contact me, or [open an discussion]. Either way. 😄
For your convenience, here is a list of all the exercises, with links to view the code on GitHub.
- [Exercise 1 - Idiomatic Rust](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/idiomatic)
- [Exercise 2 - Documentation](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/docs)
- [Exercise 3 - Publishing to Crates.io](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/publish)
- [Exercise 4 - Closures & Iterators](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/closures_iterators)
- [Exercise 5 - Common Traits](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/traits)
- [Exercise 6 - Errors](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/errors)
- [Exercise 7 - Testing](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/testing)
- [Exercise 8 - Logging](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/logging)
- [Exercise 9 - Threads & Channels](https://github.com/CleanCut/ultimate_rust2/tree/main/exercise/threads_channels)
## Examples
This course goes over a lot of code in lecture format. Much of the code from the lectures can be found in the [`examples/`] directory in this repository.
## Contribution
All contributions are assumed to be dual-licensed under MIT/Apache-2.
## License
Distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See [license/APACHE](license/APACHE) and [license/MIT](license/MIT).
## Sponsor
If you like Rusty Engine, please consider sponsoring me [on GitHub] or [on Patreon]. 💖
[exercises]: https://github.com/CleanCut/ultimate_rust2#exercises
[`examples/`]: https://github.com/CleanCut/ultimate_rust2/blob/main/examples
[open an discussion]: https://github.com/CleanCut/ultimate_rust2/discussions/new
[Ultimate Rust Crash Course]: https://agileperception.com/ultimate_rust_crash_course
[Rust in 3 Weeks]: https://agileperception.com
[Ultimate Rust 2: Intermediate Concepts]: https://github.com/CleanCut/ultimate_rust2
[the repository for the previous course]: https://github.com/CleanCut/ultimate_rust_crash_course
[on GitHub]: https://github.com/sponsors/CleanCut
[on Patreon]: https://patreon.com/nathanstocks