آموزش ساختارها و الگوریتم های داده عملی در Rust [ویدئو]

Hands-On Data Structures and Algorithms in Rust [Video]

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: Rust یک زبان برنامه نویسی سیستم های مدرن است که با ایمنی طراحی شده است تا توسعه پروژه های نرم افزاری بزرگ و پیچیده را ساده کند. ساختار داده و الگوریتم‌ها برای کمک به جمع‌آوری و سازماندهی داده‌ها برای انجام عملیات روی داده‌ها و تنظیم دستورالعمل‌ها/منطق برای انجام وظایف در این پروژه‌ها کلیدی هستند. این دوره راهنمای شما برای پیاده‌سازی ساختارهای داده و الگوریتم‌های کلاسیک در Rust خواهد بود و به شما کمک می‌کند تا به عنوان یک برنامه‌نویس Rust مطمئن باشید. شما با آغازگر Rust و نحو آن شروع خواهید کرد. سپس زبان پیچیدگی زمان و حافظه را با مقایسه روش های مختلف مرتب سازی کشف خواهید کرد. سپس در مورد لیست ها و درختان باینری یاد می گیرید، آنها را پیاده سازی می کنید و آنها را با هم مقایسه می کنید تا مزایا و موارد استفاده هر کدام را نشان دهید. در مرحله بعد، الگوریتم های مختلف مانند مرتب سازی، نمودار، برنامه نویسی پویا، حریص، تقسیم و تسخیر و موارد دیگر را به طور عمیق پوشش خواهید داد. شما خواهید آموخت که چگونه تکنیک های غیرمستقیم می توانند ساخت پروژه های مقیاس پذیر را آسان تر کنند! در پایان دوره، دانش کاملی از ساختارهای داده و الگوریتم های کلیدی در Rust خواهید داشت تا با اطمینان آنها را در برنامه های خود پیاده سازی کنید. لینک Github به این دوره ویدیویی: https://github.com/PacktPublishing/Hands-On-Data-Structures-and-Algorithms-in-Rust چگونه Rust می تواند به شما کمک کند دسترسی به حافظه خود را ایمن و موثر نگه دارید چگونه می توانیم از Rust برای ایجاد الگوریتم های عمومی استفاده کنیم که می توانیم بارها و بارها در پایگاه کد خود از آنها استفاده کنیم الگوریتم های حریص، پویا و تکرار شونده و زمان استفاده از آنها ساختارهای داده های مختلف مانند نقشه ها، درختان، و لیست های پیوندی و زمانی که استفاده از آنها مناسب است. چرا و چگونه یک Entity Component System بخش‌های مختلف شی را در مناطق ذخیره‌سازی مختلف جدا می‌کند چگونه می توانیم با استفاده از BTrees فایل هایی بسازیم که مانند پایگاه داده های ساده کار کنند چگونه می توانیم برنامه های خود را حتی با استفاده از Multithreading با سرعت بیشتری اجرا کنیم این دوره برای برنامه نویسانی است که می خواهند با تمام ساختارهای داده و الگوریتم ها در آخرین نسخه زبان برنامه نویسی Rust آشنا شوند تا به سازماندهی بهتر کد شما و انجام وظایف از پیش تعریف شده کمک کند. هیچ دانش برنامه نویسی Rust مورد نیاز نیست زیرا در ابتدا اصول اولیه را پوشش خواهیم داد. با Rust به عنوان یک زبان قدرتمند و سریع که طراحی خوب را تشویق می کند آشنا شوید * تمرکز بر نیازهای برنامه نویسی عملی، یادگیری راه حل های موثر برای مشکلاتی که برنامه نویسان اغلب با آن مواجه هستند * تکنیک هایی برای ایجاد کدهای داده گرا و مدیریت روابط بین انواع مختلف داده ها را بیاموزید.

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

آشنایی با Rust و نحو آن Getting to Grips with Rust and its Syntax

  • بررسی اجمالی دوره Course Overview

  • Rust را نصب کنید و یک برنامه ساده را اجرا کنید Install Rust and Running a Simple Program

  • ساخت سازه های پیچیده با Struct و Enum Build complex structures with Struct and Enum

  • نتایج و گزینه ها Results and Options

  • مکانیسم های حلقه در تکرار کننده ها Looping Mechanisms in Iterators

  • پشته ساختار داده در Rust Stack Data Structure in Rust

  • تغییرپذیری، متغیرها، کپی کردن، و شبیه سازی Mutability, Variables, Copying, and Cloning

  • از حافظه به طور موثر با اشاره گرها و طول عمر استفاده کنید Use Memory Effectively with Pointers and Lifetimes

  • حافظه خود را روی Heap با جعبه، رشته و Vecs Own Memory on the Heap with Box, String, and Vecs

  • تفاوت بین Str و String Difference Between Str and String

  • در حال آپلود در Crates Uploading to Crates

الگوریتم های پیچیدگی و مرتب سازی الگوریتم Algorithm Complexity and Sorting Algorithms

  • مرتب سازی با استفاده از مرتب سازی حباب Sorting Using Bubble Sort

  • تقسیم و پیروز مرتب سازی با Merge Sort Divide and Conquer Sorting with Merge Sort

  • مرتب سازی در محل با مرتب سازی سریع Sorting in Place with Quick Sort

  • بهبود مرتب کننده سریع ما با اعداد تصادفی شبه Improving Our Quick Sorter with Pseudo Random Numbers

  • تفکیک مرتب سازی سریع با استفاده از موضوعات متعدد Spiting Quick Sort Using Multiple Threads

  • اجازه دهید ریون سرعت آن را با سرقت کار افزایش دهد Let Rayon Speed It Up with Work Stealing

  • برای افزایش سرعت با برنامه نویسی پویا، گوشه های سمت راست را ببرید Cut the Right Corners to Increase Your Speed with Dynamic Programming

ساخت فهرست های پیوندی و درختان باینری Building Linked Lists and Binary Trees

  • ایجاد یک لیست پیوندی Creating a Linked List

  • مشاهده داده ها در هر دو جهت با لیست های پیوندی دوگانه Viewing Data in Both Directions with Doubly Linked Lists

  • ساخت یک درخت باینری برای ذخیره و مرتب سازی کارآمد داده ها Building a Binary Tree to Efficiently Store and Sort Data

  • تبدیل درخت باینری به درخت تعادل باینری Converting Binary Tree to a Binary Balance Tree

  • یادگیری در مورد لیست پرش و مزایای بالقوه آنها Learning About Skip Lists and Their Potential Advantages

  • مدیریت ارتفاعات یک لیست پرش Managing the Heights of a Skip List

  • محاسبات رمزگذاری هافمن و فشرده سازی داده ها Computing Huffman Encoding and to Compress Data

مدل‌سازی موقعیت‌های واقعی به عنوان نمودار گره‌های متصل Model Real Situations as Graphs of Connected Nodes

  • گزینه های ایجاد و ذخیره نمودارها را در نظر بگیرید Consider the Options for Creating and Storing Graphs

  • پر کردن نمودار Filling the Graph

  • ساختار مسیر Route Structure

  • یافتن کوتاه ترین راه Finding the Shortest Path

  • راه حلی حریصانه برای فروشنده دوره گرد A Greedy Solution to the Travelling Salesman

  • راه حل را با استفاده از روش های تکراری بهبود بخشید Improve the Solution Using Iterative Methods

دسترسی به داده های زمان ثابت با استفاده از HashMap Getting Constant Time Data Access Using HashMap

  • HashMap چیست و چرا و چه زمانی از آنها استفاده می کنیم What a HashMap Is and Why and When Do We Use Them

  • ساخت HashMap از ابتدا Building HashMap from Scratch

  • ایجاد یک لیست سطلی برای استفاده از HashMap Building a Bucket List for the HashMap to Use

  • در حال اتمام HashMap Finishing the HashMap

  • آزمایش و بهبود HashMap ما Testing and Improving Our HashMap

  • HashMap در مقابل BTreeMap HashMap versus BTreeMap

سازماندهی داده های خود بر اساس نوع با سیستم های مؤلفه نهاد Organizing Your Data by Type with Entity Component Systems

  • درک کنید که ECS چیست و چگونه با ساختارهای سنتی متفاوت است Understand What an ECS Is and How It Differs from Traditional Structures

  • ایجاد یک ID Generator Creating an ID Generator

  • ایجاد فروشگاه های داده Creating Data Stores

  • ساخت سیستم های ECS Building ECS Systems

  • ترکیب همه چیز در یک بازی ساده CLI Combining It All into a Simple CLI Game

  • مقدمه ای بر مشخصات Introduction to Specs

ساختار داده های ذخیره سازی پایدار Persistent Storage Data Structure

  • ایجاد فایل Blob Data Creating a Blob Data File

  • تبدیل هر اندازه داده به رشته بایت Converting Any Data Size to Byte String

  • ایجاد فروشگاه Blob Creating a Blob Store

  • اضافه شدن به فروشگاه Blob Adding to the Blob Store

  • خواندن از فروشگاه Blob Reading from the Blob Store

  • حذف یک عنصر از فروشگاه Blob Removing an Element from the Blob Store

نمایش نظرات

Packtpub یک ناشر دیجیتالی کتاب‌ها و منابع آموزشی در زمینه فناوری اطلاعات و توسعه نرم‌افزار است. این شرکت از سال 2004 فعالیت خود را آغاز کرده و به تولید و انتشار کتاب‌ها، ویدیوها و دوره‌های آموزشی می‌پردازد که به توسعه‌دهندگان و متخصصان فناوری اطلاعات کمک می‌کند تا مهارت‌های خود را ارتقا دهند. منابع آموزشی Packtpub موضوعات متنوعی از جمله برنامه‌نویسی، توسعه وب، داده‌کاوی، امنیت سایبری و هوش مصنوعی را پوشش می‌دهد. محتوای این منابع به صورت کاربردی و به‌روز ارائه می‌شود تا کاربران بتوانند دانش و توانایی‌های لازم برای موفقیت در پروژه‌های عملی و حرفه‌ای خود را کسب کنند.

آموزش ساختارها و الگوریتم های داده عملی در Rust [ویدئو]
جزییات دوره
6 h 55 m
49
Packtpub Packtpub
(آخرین آپدیت)
2
3.5 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Matthew Stoodley Matthew Stoodley

متیو استودلی یک متخصص و علاقه‌مند به برنامه‌نویسی است که به دلیل مصرف کم انرژی و قابلیت‌های ایمنی حافظه در ابتدا به یادگیری Rust و تسلط بر ویژگی‌های آن کشیده شد. او در درجه اول از Rust برای ساخت بازی های رومیزی استفاده می کند. علاوه بر این، او چندین سال تجربه در Go، PHP و JavaScript نیز دارد.