مباحث دوره

این صفحه برای مدرس دوره است.

مبانی Rust

The first four days make up Rust Fundamentals. The days are fast paced and we cover a lot of ground!

Course schedule:

  • Day 1 Morning (2 hours and 5 minutes, including breaks)
SegmentDuration
خوش آمدید5 minutes
سلام دنیا15 minutes
Types and Values40 minutes
کنترل جریان40 minutes
  • Day 1 Afternoon (2 hours and 35 minutes, including breaks)
SegmentDuration
Tuples and Arrays35 minutes
مراجع55 minutes
User-Defined Types50 minutes
  • Day 2 Morning (2 hours and 10 minutes, including breaks)
SegmentDuration
خوش آمدید3 minutes
تطبیق الگو1 hour
Read and Write50 minutes
  • Day 2 Afternoon (4 hours and 5 minutes, including breaks)
SegmentDuration
جنریک‌ها45 minutes
کتابخانه‌های استاندارد1 hour and 20 minutes
کتابخانه‌های استاندارد1 hour and 40 minutes
  • Day 3 Morning (2 hours and 20 minutes, including breaks)
SegmentDuration
خوش آمدید3 minutes
مدیریت حافظه1 hour
Smart Pointers55 minutes
  • Day 3 Afternoon (1 hour and 55 minutes, including breaks)
SegmentDuration
قرض گرفتن55 minutes
چرخه حیات50 minutes
  • Day 4 Morning (2 hours and 40 minutes, including breaks)
SegmentDuration
خوش آمدید3 minutes
Iterators45 minutes
ماژول‌ها40 minutes
تست‌کردن45 minutes
  • Day 4 Afternoon (2 hours and 10 minutes, including breaks)
SegmentDuration
مدیریت خطا (Error Handling)55 minutes
Rust ناایمن1 hour and 5 minutes

عمیق تر شدن

In addition to the 4-day class on Rust Fundamentals, we cover some more specialized topics:

Rust در اندروید

The Rust in Android deep dive is a half-day course on using Rust for Android platform development. This includes interoperability with C, C++, and Java.

You will need an AOSP checkout. Make a checkout of the course repository on the same machine and move the src/android/ directory into the root of your AOSP checkout. This will ensure that the Android build system sees the Android.bp files in src/android/.

اطمینان حاصل کنید که adb sync با شبیه‌ساز یا دستگاه واقعی شما کار می‌کند و همه نمونه‌های Android را با استفاده از src/android/build_all.sh از قبل بسازید. اسکریپت را بخوانید تا دستوراتی را که اجرا می‌کند ببینید و مطمئن شوید که وقتی آنها را اجرا می‌کنید به درستی کار می‌کنند.

Rust in Chromium

The Rust in Chromium deep dive is a half-day course on using Rust as part of the Chromium browser. It includes using Rust in Chromium’s gn build system, bringing in third-party libraries (“crates”) and C++ interoperability.

You will need to be able to build Chromium — a debug, component build is recommended for speed but any build will work. Ensure that you can run the Chromium browser that you’ve built.

Rust بر روی سخت افزار بدون سیستم عامل

The Bare-Metal Rust deep dive is a full day class on using Rust for bare-metal (embedded) development. Both microcontrollers and application processors are covered.

For the microcontroller part, you will need to buy the BBC micro:bit v2 development board ahead of time. Everybody will need to install a number of packages as described on the welcome page.

همزمانی در Rust

The Concurrency in Rust deep dive is a full day class on classical as well as async/await concurrency.

شما به یک crate جدید نیاز خواهید داشت و وابستگی ها دانلود و آماده استفاده باشند. سپس می‌توانید نمونه‌ها را در src/main.rs‍ کپی/پیست کنید تا با آنها آزمایش کنید:

cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run

Course schedule:

  • Morning (3 hours and 20 minutes, including breaks)
SegmentDuration
تردها30 minutes
کانال‌ها20 minutes
Send and Sync15 minutes
ناحیه‌های مشترک30 minutes
تمرین‌ها1 hour and 10 minutes
  • Afternoon (3 hours and 20 minutes, including breaks)
SegmentDuration
مبانی Async30 minutes
کنترل جریان پیشرفته20 minutes
مشکل‌ها55 minutes
تمرین‌ها1 hour and 10 minutes

فرمت

این دوره قرار است بسیار تعاملی باشد و توصیه می کنیم اجازه دهید حس کنجکاوی Rust را هدایت کنند!