کتاب Rust and System Programming: A Comprehensive Guide to Low-Level Programming با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

Rust and System Programming: فتح دروازه‌های برنامه‌نویسی سیستمی با راست Rust and System Programming: فتح دروازه‌های برنامه‌نویسی سیستمی با راست برنامه‌نویس حرفه‌ای سیستم شوید: دوره‌ی جامع Rust در انتظ...

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 87,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره Rust and System Programming: A Comprehensive Guide to Low-Level Programming

موضوع کلی: برنامه نویسی

موضوع میانی: راست (Rust)

📋 سرفصل‌های دوره

  • 1. مقدمه‌ای بر برنامه‌نویسی سیستمی و نقش Rust
  • 2. راه‌اندازی محیط توسعه Rust (rustup, cargo, rustc)
  • 3. اولین برنامه Rust شما: "Hello, World!" و Cargo
  • 4. متغیرها، تغییرپذیری (Mutability) و سایه‌زنی (Shadowing)
  • 5. انواع داده بنیادین: انواع اسکالر (Scalar)
  • 6. انواع داده ترکیبی: تاپل‌ها (Tuples) و آرایه‌ها (Arrays)
  • 7. توابع، پارامترها و مقادیر بازگشتی
  • 8. درک تفاوت دستورات (Statements) و عبارات (Expressions)
  • 9. کنترل جریان: عبارات `if`, `else if`, `else`
  • 10. اجرای تکراری با حلقه‌ها: `loop`, `while`, و `for`
  • 11. مدل مالکیت (Ownership): یک پارادایم جدید
  • 12. ارجاع‌ها (References) و قرض‌گیری (Borrowing)
  • 13. ارجاع‌های تغییرپذیر و جلوگیری از رقابت داده (Data Races)
  • 14. برش‌ها (Slices): نمایی از یک مجموعه
  • 15. تعریف و نمونه‌سازی از ساختارها (Structs)
  • 16. ساختارها با متدها: بلوک‌های `impl`
  • 17. شمارشگرها (Enums) و قدرت `match` برای تطبیق الگو
  • 18. شمارشگر `Option<T>` برای مدیریت مقادیر پوچ (Nullability)
  • 19. مدیریت خطا با شمارشگر `Result<T, E>`
  • 20. ماژول‌ها، کریت‌ها (Crates) و سیستم ماژول
  • 21. مسیرها برای ارجاع به آیتم‌ها در درخت ماژول
  • 22. وارد کردن مسیرها به اسکوپ با کلمه کلیدی `use`
  • 23. مجموعه‌های رایج: ذخیره‌سازی لیست‌ها با وکتورها (`Vec<T>`)
  • 24. ذخیره‌سازی متن UTF-8 با رشته‌ها (`String`)
  • 25. داده‌های انجمنی با هش‌مپ‌ها (`HashMap<K, V>`)
  • 26. انواع داده جنریک (Generic): نوشتن کد برای انواع متعدد
  • 27. ویژگی‌ها (Traits): تعریف رفتار مشترک
  • 28. پیاده‌سازی یک Trait روی یک نوع
  • 29. استفاده از Trait Bounds برای محدود کردن انواع جنریک
  • 30. ویژگی `Drop`: سفارشی‌سازی منطق پاک‌سازی
  • 31. اعتبارسنجی ارجاع‌ها با طول عمر (Lifetimes)
  • 32. درک حاشیه‌نویسی‌های طول عمر در امضای توابع
  • 33. قوانین حذف طول عمر (Lifetime Elision Rules)
  • 34. حاشیه‌نویسی‌های طول عمر در تعریف ساختارها
  • 35. مدیریت خطای پیشرفته: انتشار خطاها با `?`
  • 36. خطاهای غیرقابل بازیابی با `panic!`
  • 37. نوشتن تست‌های خودکار: تست‌های واحد و یکپارچه‌سازی
  • 38. سازماندهی و اجرای تست‌ها با Cargo
  • 39. ساخت یک اپلیکیشن خط فرمان: تجزیه آرگومان‌ها
  • 40. خواندن از فایل‌ها و نوشتن در آن‌ها
  • 41. کلوژرها (Closures): توابع ناشناسی که می‌توانند محیط خود را ضبط کنند
  • 42. پردازش یک سری از آیتم‌ها با ایتراتورها (Iterators)
  • 43. اشاره‌گرهای هوشمند: `Box<T>` برای تخصیص حافظه هیپ (Heap)
  • 44. شمارش ارجاع با `Rc<T>`
  • 45. تغییرپذیری داخلی با `RefCell<T>`
  • 46. همروندی (Concurrency): ایجاد تردها با `thread::spawn`
  • 47. گذردهی پیام برای ارتباط بین تردها با استفاده از کانال‌ها
  • 48. همروندی با حالت مشترک با استفاده از Mutex ها (`Mutex<T>`)
  • 49. شمارش ارجاع اتمی و امن برای تردها با `Arc<T>`
  • 50. ویژگی‌های `Send` و `Sync`: همروندی قابل توسعه
  • 51. ماکروهای اعلانی با `macro_rules!` برای فرابرنامه‌نویسی
  • 52. ماکروهای رویه‌ای (Procedural): سفارشی‌سازی `#[derive]`، شبه-صفت و شبه-تابع
  • 53. کد ناامن (Unsafe Rust): ورود به دنیای عدم بررسی ایمنی حافظه
  • 54. کار با اشاره‌گرهای خام (`*const T` و `*mut T`)
  • 55. فراخوانی توابع و متدهای ناامن
  • 56. رابط تابع خارجی (FFI): تعامل با زبان‌های دیگر
  • 57. فراخوانی کد C از Rust
  • 58. ایجاد یک کتابخانه Rust برای C
  • 59. ویژگی‌های پیشرفته: انواع وابسته (Associated Types)
  • 60. ویژگی‌های پیشرفته: ویژگی `Deref` و Deref Coercion
  • 61. انواع پیشرفته: الگوی Newtype برای ایمنی نوع
  • 62. نام مستعار برای انواع با کلمه کلیدی `type`
  • 63. نوع هرگز (`!`)
  • 64. انواع با اندازه پویا (DSTs) و ویژگی `Sized`
  • 65. توابع و کلوژرهای پیشرفته: اشاره‌گرهای تابع
  • 66. چیدمان حافظه: پشته (Stack) و هیپ (Heap) به تفصیل
  • 67. درک اشاره‌گرها، ارجاع‌ها و آدرس‌های حافظه
  • 68. نمایش داده‌ها: Endianness، اندازه و هم‌ترازی (Alignment)
  • 69. انجام عملیات بیتی (Bitwise Operations)
  • 70. مدیریت حافظه سطح پایین با `std::alloc`
  • 71. ساخت یک ابزار CLI قوی: یک مثال کامل
  • 72. تعامل با محیط: متغیرهای محیطی
  • 73. جریان‌های ورودی/خروجی استاندارد: stdin, stdout, stderr
  • 74. کار با توصیف‌گرهای فایل (File Descriptors)
  • 75. فرآیندها: ایجاد و مدیریت فرآیندهای فرزند
  • 76. ارتباط بین فرآیندی (IPC) با پایپ‌ها (Pipes)
  • 77. ارتباط بین فرآیندی با حافظه مشترک
  • 78. مقدمه‌ای بر برنامه‌نویسی شبکه: سوکت‌ها
  • 79. ساخت یک کلاینت TCP ساده
  • 80. ساخت یک سرور TCP تک-تردی ساده
  • 81. برنامه‌نویسی ناهمگام (Asynchronous): `async` و `await`
  • 82. درک فیوچرها (Futures) و ویژگی `Future`
  • 83. انتخاب و استفاده از یک ران‌تایم ناهمگام (مانند Tokio)
  • 84. ساخت یک سرور TCP چند-تردی
  • 85. ساخت یک سرور TCP ناهمگام
  • 86. مدیریت سیگنال‌های سیستم (SIGINT, SIGTERM)
  • 87. فایل‌های نگاشت‌شده در حافظه (Memory-Mapped Files)
  • 88. پیاده‌سازی یک تخصیص‌دهنده حافظه سراسری سفارشی
  • 89. مقدمه‌ای بر توسعه `no_std`
  • 90. کراس-کامپایل برای معماری‌های هدف مختلف
  • 91. عملکرد: بنچمارک کردن کد Rust شما
  • 92. عملکرد: پروفایل کردن برای یافتن گلوگاه‌ها
  • 93. مقدمه‌ای بر سیستم‌های نهفته (Embedded) با Rust
  • 94. Rust برهنه (Bare-Metal): راه‌اندازی یک فایل اجرایی مستقل
  • 95. Rust برهنه: یک هسته حداقلی و حالت متنی VGA
  • 96. Rust برهنه: مدیریت استثناها و وقفه‌های CPU
  • 97. نوشتن کد ناامن به صورت ایمن: ایجاد انتزاعات امن
  • 98. مدل‌های تردینگ: 1:1, N:M و گرین تردها
  • 99. نگاهی عمیق به Cargo: فضاهای کاری، پروفایل‌ها و اسکریپت‌های ساخت
  • 100. پروژه نهایی: ساخت یک ابزار سیستمی سطح پایین
تگ‌ها: low-level programming Rust Rust for systems Rust programming Rust tutorial System Programming آموزش Rust برنامه نویسی برنامه نویسی در Rust برنامه نویسی سیستمی برنامه نویسی کامپیوتر توسعه نرم افزار سطح پایین یادگیری Rust

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.