کدنامهمرجع‌های مهندسی نرم‌افزار، به فارسی

Rust

Rust

Rust یک معامله پیشنهاد می‌دهد: کامپایلر سخت‌گیری می‌کند، و در عوض کل دسته‌ای از باگ‌ها — نشتی حافظه، اشارهٔ آویزان، مسابقهٔ داده — در زمان اجرا اصلاً ممکن نمی‌شوند. سه هفتهٔ اول با کامپایلر می‌جنگی. بعد از آن، متوجه می‌شوی داشت درست می‌گفت.

۱۸فصل
۲۹۱تمرین با پاسخ
≈ ۲۸ ساعتزمان تخمینی
۳پروژهٔ نهایی

پیشرفت تو

۰٪

درصد هر فصل از دو چیز می‌آید: چقدر از بخش‌هایش را خوانده‌ای (۵۵٪) و چند تمرینش را تیک زده‌ای (۴۵٪). همه‌چیز داخل مرورگر خودت می‌ماند.

فصل

فصل‌ها به هم وابسته‌اند و ترتیبشان معنا دارد. هر مسیر با پروژه‌های نهایی تمام می‌شود: ساده، متوسط، پیچیده.

۱

چرا Rust

مسئلهٔ ایمنی حافظه بدون زباله‌روب.

در نوبت نوشتن
۲

مالکیت

تک قاعده‌ای که همه‌چیز از آن می‌آید.

در نوبت نوشتن
۳

قرض‌گیری و طول عمر

مرجع مشترک و انحصاری، و اینکه lifetime چه می‌گوید.

در نوبت نوشتن
۴

نوع‌ها: struct و enum

enum در Rust بسیار قوی‌تر از چیزی است که فکر می‌کنی.

در نوبت نوشتن
۵

pattern matching

تطبیق جامع، و کامپایلری که حالت فراموش‌شده را می‌گیرد.

در نوبت نوشتن
۶

خطا: Result و Option

بدون exception، بدون null.

در نوبت نوشتن
۷

trait و generic

چندریختی بدون وراثت.

در نوبت نوشتن
۸

مجموعه‌ها و iterator

Vec، HashMap و زنجیرهٔ iterator بدون هزینه.

در نوبت نوشتن
۹

ماژول و Cargo

ساختار پروژه، crate، feature و workspace.

در نوبت نوشتن
۱۰

همروندی بی‌ترس

چرا مسابقهٔ داده در Rust کامپایل نمی‌شود.

در نوبت نوشتن
۱۱

async و Tokio

future، runtime و تفاوتش با نخ.

در نوبت نوشتن
۱۲

unsafe و FFI

کِی لازم است و چطور مهارش کنیم.

در نوبت نوشتن
۱۳

تست و benchmark

تست داخلی، تست یکپارچه و اندازه‌گیری.

در نوبت نوشتن
۱۴

وب با Axum

مسیریابی، حالت مشترک، پایگاه‌داده و ‎JSON‎.

در نوبت نوشتن
۱۵

بیلد و استقرار

کامپایل بهینه، باینری کوچک و داکر.

در نوبت نوشتن
۱۶

پروژهٔ ۱ — ابزار خط فرمان

پردازش فایل با مدیریت خطای درست.

در نوبت نوشتنپروژهٔ ساده
۱۷

پروژهٔ ۲ — سرویس وب

‎API‎ با پایگاه‌داده، اعتبارسنجی و تست.

در نوبت نوشتنپروژهٔ متوسط
۱۸

پروژهٔ ۳ — سرویس همروند پرکار

async، اشتراک حالت، backpressure و اندازه‌گیری.

در نوبت نوشتنپروژهٔ پیچیده