آموزش پیشرفته راست (Rust) – زمان‌بندی‌ها، تکرارکننده‌ها، تست‌نویسی و اعداد تصادفی - آخرین آپدیت

دانلود Advanced Rust – Lifetimes, Iterators, Testing & Randomness

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: این دوره دارای قابلیت Coursera Coach است! روشی هوشمندانه‌تر برای یادگیری با گفتگوهای تعاملی و آنی که به شما کمک می‌کند دانش خود را آزمایش کنید، پیش‌فرض‌ها را به چالش بکشید و با پیشروی در دوره، درک خود را عمیق‌تر کنید. پتانسیل کامل برنامه‌نویسی راست (Rust) را با موضوعات پیشرفته‌ای که برای تسلط بر این زبان حیاتی هستند، آزاد کنید. از طریق درس‌های کاربردی در مورد زمان‌بندی‌ها (Lifetimes)، تکرارکننده‌ها (Iterators)، تست‌نویسی و اعداد تصادفی، درک عمیقی که برای نوشتن کدهای بهینه‌تر، قابل‌اعتمادتر و قابل‌نگهداری لازم است را به دست خواهید آورد. این دوره مفاهیم پیچیده‌ای مانند زمان‌بندی‌های غیر-لکسیکال، ویژگی‌های تکرارکننده و کریت rand را بررسی می‌کند و در عین حال به شما کمک می‌کند مهارت‌های حل مسئله خود را تقویت کنید. دوره با بررسی دقیق زمان‌بندی‌ها شروع می‌شود و شما را از طریق مثال‌های ملموس، زمان‌بندی‌های نامعتبر و زمان‌بندی‌های جنریک راهنمایی می‌کند. سپس به دنیای تکرارکننده‌ها وارد می‌شوید و یاد می‌گیرید چگونه مجموعه‌ها را مدیریت کنید و عملیاتی مانند map، filter، fold و سایر توابع را اجرا نمایید. بخش بعدی چارچوب تست‌نویسی راست را پوشش می‌دهد، جایی که همه چیز از نوشتن تست‌های واحد (Unit Tests) تا تکنیک‌های پیشرفته مانند توسعه تست-محور (TDD) و تست‌های یکپارچگی (Integration Tests) را خواهید آموخت. در نهایت، اعداد تصادفی را بررسی کرده و بر کریت rand و نحوه به‌کارگیری آن در برنامه‌های خود مسلط می‌شوید. این دوره برای برنامه‌نویسان متوسط تا پیشرفته راست طراحی شده است که می‌خواهند مهارت‌های خود را صیقل داده و بهترین متدها را در پروژه‌های واقعی به کار بگیرند. پیش‌فرض این دوره، آشنایی با مفاهیم پایه راست مانند مالکیت (Ownership)، قرض‌گیری (Borrowing) و نحو پایه است. سطح دشواری دوره پیشرفته است، زیرا جزئیات دقیق راست را برای توسعه‌دهندگانی که می‌خواهند تخصص خود را عمیق‌تر کنند، بررسی می‌کند. در پایان این دوره، شما قادر خواهید بود ویژگی‌های پیچیده را با استفاده از زمان‌بندی‌ها، تکرارکننده‌ها و کلوژرها پیاده‌سازی کنید، تست‌های واحد و یکپارچگی موثری بنویسید و از اعداد تصادفی و مدیریت زمان در برنامه‌های راست بهره ببرید.

سرفصل ها و درس ها

زمان‌بندی‌ها (Lifetimes) Lifetimes

  • زمان‌بندی‌های ملموس برای مقادیر ۱ Concrete Lifetimes for Values I

  • زمان‌بندی‌های ملموس برای مقادیر ۲ Concrete Lifetimes for Values II

  • زمان‌بندی‌های ملموس برای ارجاعات Concrete Lifetimes for References

  • زمان‌بندی‌های غیر-لکسیکال Non-Lexical Lifetimes

  • زمان‌بندی‌های نامعتبر ۱ Invalid Lifetimes I

  • زمان‌بندی‌های نامعتبر ۲ Invalid Lifetimes II

  • عدم امکان بازگشت ارجاع به مقادیر مالک یا پارامترها در توابع Functions Cannot Return References to Owned Values or Parameters

  • ارجاعات به عنوان پارامترهای تابع References as Function Parameters

  • مقدمه‌ای بر زمان‌بندی‌های جنریک Intro to Generic Lifetimes

  • زمان‌بندی‌ها و ارجاع‌دهنده‌ها Lifetimes and Referents

  • قوانین حذف زمان‌بندی ۱ Lifetime Elision Rules I

  • پارامترهای متعدد ۱ Multiple Parameters I

  • پارامترهای متعدد ۲ Multiple Parameters II

  • قوانین حذف زمان‌بندی ۲ Lifetime Elision Rules II

  • زمان‌بندی‌ها در استراکت‌ها Lifetimes in Structs

  • زمان‌بندی‌های متعدد Multiple Lifetimes

  • زمان‌بندی static The static Lifetime

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

کلوژرها (Closures) Closures

  • توابع تودرتو Nested Functions

  • مقدمه‌ای بر کلوژرها Intro to Closures

  • میان‌برهای کلوژر Closure Shortcuts

  • سلسله‌مراتب Traitهای Fn The Fn Trait Hierarchy

  • کلوژرهایی که ارجاعات تغییرناپذیر را می‌گیرند Closures that Capture Immutable References

  • کلوژرهایی که ارجاعات تغییرپذیر را می‌گیرند Closures that Capture Mutable References

  • کلوژرها با مالکیت (Ownership) Closures with Ownership

  • کلمه کلیدی move The move Keyword

  • متد unwrap_or_else The unwrap_or_else Method

  • تعریف متدی که کلوژر می‌پذیرد ۱ (Trait FnOnce) Defining a Method that Accepts a Closure I (FnOnce Trait)

  • متد String.retain The String.retain Method

  • تعریف متدی که کلوژر می‌پذیرد ۲ (Trait FnMut) Defining a Method that Accepts a Closure II (FnMut Trait)

  • Trait Fn The Fn Trait

  • ارسال تابع به پارامتر Trait Fn Passing in a Function to Fn Trait Parameter

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

تکرارکننده‌ها (Iterators) Iterators

  • تکرار دستی (Manual Iteration) Manual Iteration

  • Traitهای Iterator و IntoIterator The Iterator and IntoIterator Traits

  • Trait IntoIterator در عمل The IntoIterator Trait in Action

  • اتمام تکرارکننده Exhausting the Iterator

  • حلقه for با تکرارکننده The for Loop with Iterator

  • چرا تکرارکننده می‌تواند تغییرناپذیر باشد Why Iterator Can Be Immutable

  • متد iter The iter Method

  • متد iter_mut The iter_mut Method

  • تکرار در HashMap HashMap Iteration

  • تکرار در String String Iteration

  • حل مسئله با تکرار Solving a Problem with Iteration

  • متد for_each The for_each Method

  • متد map بخش اول The map Method I

  • متد collect The collect Method

  • متد map بخش دوم The map Method II

  • متدهای filter و find بخش اول The filter and find Methods I

  • متدهای filter و find بخش دوم The filter and find Methods II

  • متدهای any و all The any and all Methods

  • متد cloned The cloned Method

  • متد filter_map The filter_map Method

  • متد flatten The flatten Method

  • متد flat_map The flat_map Method

  • متد enumerate The enumerate Method

  • متد partition The partition Method

  • متد zip The zip Method

  • متد fold The fold Method

  • متد reduce The reduce Method

  • متدهای sum, product, max, min, and count The sum, product, max, min, and count Methods

  • متدهای last, nth, nth_back, and position The last, nth, nth_back, and position Methods

  • متدهای take, rev, skip, and step_by The take, rev, skip, and step_by Methods

  • متدهای sort و sort_by_key The sort and sort_by_key Methods

  • متد lines The lines Method

  • جمع‌آوری آرگومان‌های خط فرمان ۱ Collecting Command Line Arguments I

  • جمع‌آوری آرگومان‌های خط فرمان ۲ Collecting Command Line Arguments II

  • خواندن دایرکتوری Reading Directory

  • Trait FromIterator The FromIterator Trait

  • پروژه: Wordle Project: Wordle

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

تست‌نویسی (Testing) Testing

  • مقدمه‌ای بر تست‌نویسی Intro to Testing

  • نوشتن تست و ماکروی assert_eq! Writing a Test and the assert_eq! Macro

  • ماژول tests و ویژگی cfg The tests Module and the cfg Attribute

  • شکست تست‌ها Test Failures

  • ماکروی assert! The assert! Macro

  • تست نابرابری با ماکروی assert_ne! Testing Inequality with the assert_ne! Macro

  • کریت pretty_assertions The pretty_assertions Crate

  • الزامات Trait برای تایپ‌ها در تست‌نویسی Trait Requirements for Types in Testing

  • پیام‌های خطای سفارشی Custom Failure Messages

  • ویژگی should_panic The should_panic Attribute

  • استفاده از Enum Result در تست‌ها Using Result Enum in Tests

  • اجرای زیرمجموعه‌ای از تست‌ها Running A Subset of Tests

  • نادیده گرفتن تست‌ها Ignoring Tests

  • نمایش خروجی چاپ شده از تست‌های موفق Showing Printed Output from Passing Tests

  • افزودن استراکت MovieTheater Adding MovieTheater Struct

  • تزریق وابستگی (Dependency Injection) ۱ Dependency Injection I

  • تزریق وابستگی (Dependency Injection) ۲ Dependency Injection II

  • تست‌های یکپارچگی (Integration Tests) Integration Tests

  • تست‌های مستنداتی (Documentation Tests) Documentation Tests

  • گزینه‌های تست Test Options

  • استفاده از Fixtureها با کریت rstest Fixtures with the rstest Crate

  • توسعه تست-محور (TDD) Test-Driven Development

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

اعداد تصادفی با کریت rand Randomness with rand Crate

  • مقدمه‌ای بر کریت rand Intro to the rand Crate

  • استراکت ThreadRng The ThreadRng Struct

  • تصادفی کردن عناصر وکتور با متد shuffle Randomizing Vector Elements with shuffle Method

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

تاریخ و زمان با کریت Chrono Datetimes with Chrono Crate

  • استراکت NaiveDate The NaiveDate Struct

  • استراکت TimeDelta The TimeDelta Struct

  • جمع و تفریق زمان Adding and Subtracting Time

  • استراکت‌های NaiveTime و NaiveDateTime The NaiveTime and NaiveDateTime Structs

  • استراکت DateTime The DateTime Struct

  • تبدیل مناطق زمانی (Timezones) Converting Timezones

  • تابع parse_from_str The parse_from_str Function

  • متد Format The Format Method

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

عبارات منظم با کریت Regex Regular Expressions with Regex Crate

  • مقدمه‌ای بر کریت Regex Intro to the Regex Crate

  • متدهای find و find_iter The Find and Find_iter Methods

  • جستجوی اعداد Searching for Digits

  • کاراکترهای الفبایی-عددی (Alphanumeric) Alphanumeric Characters

  • فضاهای خالی (Whitespace) Whitespace

  • مرزهای کلمات Word Boundaries

  • متا-کاراکتر نقطه (Dot) The Dot Metacharacter

  • کروشه با کاراکترها Square Brackets with Characters

  • تعداد تطبیق‌ها ۱ Number of Matches I

  • تعداد تطبیق‌ها ۲ Number of Matches II

  • منطق OR Or Logic

  • لنگرها (Anchors) Anchors

  • گروه‌های کپچر (Capture Groups) Capture Groups

  • متد replace_all The Replace_all Method

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

اشاره‌گرهای هوشمند: Box Smart Pointers: Box

  • اشاره‌گرهای خام (Raw Pointers) Raw Pointers

  • اشاره‌گرهای خام و کد ناامن (Unsafe) Raw Pointers and Unsafe Code

  • اشاره‌گرهای هوشمند Smart Pointers

  • اشاره‌گر هوشمند Box The Box Smart Pointer

  • مقدمه‌ای بر لیست‌های پیوندی (Linked Lists) Intro to Linked Lists

  • تعریف LinkedList Defining the LinkedList

  • ایجاد LinkedList Creating the LinkedList

  • مقایسه Box با ارجاعات معمولی ۱ Box vs Regular References I

  • مقایسه Box با ارجاعات معمولی ۲ Box vs Regular References II

  • وکتورها اشاره‌گرهای هوشمند هستند Vectors are Smart Pointers

  • مقدمه‌ای بر درخت‌های جستجوی دودویی (BST) Intro to Binary Search Trees

  • ایجاد درخت جستجوی دودویی Creating a Binary Search Tree

  • Traitهای Deref و DerefMut بخش اول The Deref and DerefMut Traits I

  • Traitهای Deref و DerefMut بخش دوم The Deref and DerefMut Traits II

  • Trait Drop The Drop Trait

  • اجبار Deref (Deref Coercions) Deref Coercions

  • اشیای Trait (Trait Objects) ۱ Trait Objects I

  • اشیای Trait ۲: مدیریت خطاهای متعدد Trait Objects II: Handling Multiple Errors

  • تایپ‌های خطای سفارشی Custom Error Types

  • راه حل پروژه Project Solution

  • مرور بخش Section Review

تبریکات! Congratulations!

  • تبریکات! Congratulations

نمایش نظرات

آموزش پیشرفته راست (Rust) – زمان‌بندی‌ها، تکرارکننده‌ها، تست‌نویسی و اعداد تصادفی
جزییات دوره
31h 11m
151
(آخرین آپدیت)
98
- از 5
دارد
دارد
دارد
Chris Croft
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Chris Croft Chris Croft

مربی مدیریت، سخنران، نویسنده