نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
کار با انبوهی از اشیا و استفاده از ژنریک مستلزم درک تئوری برنامه نویسی و الگوریتم های کتاب درسی است. این دوره استفاده موثر از مجموعههای داتنت و قدرت تعمیم را از طریق کلاسها و روشهای عمومی به شما آموزش میدهد. پردازش بسیاری از اشیاء معمولاً با دانستن الگوریتمهای غیر ضروری و همچنین با برآوردن نیازهای غیر کاربردی، مانند ملاحظات زمان و مکان یا به تعویق افتادن مرتبط است. اجرا. در این دوره، Collections and Generics در C# 10، یاد می گیرید که بسیاری از اشیاء را با الگوریتم های بهینه مصرف و پردازش کنید. ابتدا، الگوریتمهای مجموعههای خطی و انجمنی، مانند فهرستها، آرایهها، فرهنگ لغتها و غیره را بررسی میکنید. سپس، نحوه تعمیم الگوریتمها را با اعمال کلیات پیشرفته در کلاسها و روشهای خود کشف خواهید کرد. در نهایت، یاد میگیرید که چگونه مجموعههای موجود را ترکیب کنید تا مجموعههای بسیار تخصصی خود را بسازید که در مدلهای تجاری قابل استفاده هستند. وقتی این دوره را به پایان رساندید، مهارت ها و دانش الگوریتم هایی را خواهید داشت که برای بسیاری از اشیاء مورد نیاز برای توسعه برنامه های تجاری بسیار بهینه هستند.
سرفصل ها و درس ها
بررسی اجمالی دوره
Course Overview
-
بررسی اجمالی دوره
Course Overview
معرفی مجموعه ها و ژنریک ها
Introducing Collections and Generics
-
معرفی
Introduction
-
راه اندازی محیط زیست و پروژه ها
Initializing Environment and Projects
-
درک تقسیم بندی طبیعی مجموعه ها
Understanding Natural Division of Collections
-
درک نقش ژنریک ها
Understanding the Role of Generics
-
درک نیاز به مجموعه ها
Understanding the Need for Collections
-
خلاصه
Summary
استفاده از مجموعه های خطی: لیست ها و آرایه ها
Using Linear Collections: Lists and Arrays
-
مجموعه های محصور کننده
Encapsulating Collections
-
کپسوله کردن یک لیست
Encapsulating a List
-
توجیه تصمیمات
Justifying Decisions
-
دیدگاه های تحمیلی بر یک مجموعه
Imposing Views upon a Collection
-
تکمیل طراحی
Completing the Design
-
ابداع الگوریتم مخلوط کردن
Inventing Shuffling Algorithm
-
پیاده سازی الگوریتم تصادفی سازی داده ها
Implementing Data Randomization Algorithm
-
خلاصه
Summary
ساخت بر اساس لیست های مرتب و جزئی مرتب شده
Building on Ordered and Partially Ordered Lists
-
طراحی رابط مجموعه انتزاعی
Designing an Abstract Collection Interface
-
اعمال صفحه بندی در فهرست مرتب شده
Applying Pagination to a Sorted List
-
پیاده سازی کلاس Projection List
Implementing the List Projection Class
-
تکمیل طراحی
Completing the Design
-
آشنایی با پارتیشن بندی و مرتب سازی جزئی
Understanding Partitioning and Partial Sorting
-
خلاصه
Summary
اندازه گیری و بهینه سازی عملکرد
Measuring and Optimizing Performance
-
اندازه گیری کارایی
Measuring Performance
-
درک بهینه سازی از طریق طراحی مجدد
Understanding Optimization via Redesign
-
استفاده از بنچمارک برای کاوش در طراحی مجدد قابل اجرا
Using Benchmark to Explore Viable Redesigns
-
چیدن میوه کم آویزان
Picking Low Hanging Fruit
-
خلاصه
Summary
استفاده از انواع عمومی در مدل شی
Using Generic Types in the Object Model
-
درک واریانس
Understanding Variance
-
نشان دادن واریانس
Demonstrating Variance
-
طراحی یک نوع ژنریک کوواریانس
Designing a Covariant Generic Type
-
درک دیدگاه کامپایلر در مورد Generics در NET
Understanding Compiler's View on Generics in .NET
-
خلاصه
Summary
طراحی انواع ژنریک
Designing Generic Types
-
اجرای یک نوع ژنریک بتن
Implementing a Concrete Generic Type
-
نمایش کلاس عمومی بتن
Demonstrating Concrete Generic Class
-
استفاده از استنتاج نوع عمومی
Applying Generic Type Inference
-
استفاده از ژنریک های محدود
Using Constrained Generics
-
خلاصه
Summary
استفاده از مجموعه های انجمنی
Using Associative Collections
-
معرفی مجموعه های انجمنی
Introducing Associative Collections
-
پیاده سازی کلاس مبتنی بر فرهنگ لغت
Implementing a Dictionary-based Class
-
نمایه سازی اقلام توسط یک کلید مرتب شده
Indexing Items by a Sorted Key
-
بسته بندی یک مجموعه در یک کلاس تغییرناپذیر
Wrapping a Collection within an Immutable Class
-
شناسایی مشکلات فشار حافظه
Identifying Memory Pressure Problems
-
بهبود اشتراک گذاری اشیاء تغییرناپذیر
Improving Sharing of Immutable Objects
-
خلاصه
Summary
راه حل های مهندسی با استفاده از مجموعه های انجمنی
Engineering Solutions Using Associative Collections
-
ترجیح دادن طراحی ساده نسبت به مجتمع
Favoring Simple Design over the Complex One
-
پیاده سازی کش اشیاء شفاف
Implementing a Transparent Object Cache
-
طراحی کلاس ها بر اساس انجمن
Designing Classes Based on Association
-
جبران زمان دسترسی به سرویس در پروتکل های چتی
Compensating Service Access Time in Chatty Protocols
-
طراحی یک کش خواندنی همه منظوره
Designing a General-purpose Read-through Cache
-
بهبود عملکرد یک سرویس چت
Improving Performance of a Chatty Service
-
خلاصه
Summary
مهندسی مجموعه های خطی سفارشی
Engineering Custom Linear Collections
-
مشاهده قدرت مجموعه های خطی
Seeing the Power of Linear Collections
-
پیاده سازی یک ماشین حساب صدک
Implementing a Percentiles Calculator
-
نمایش ماشین حساب
Demonstrating the Calculator
-
پیاده سازی Outliers Remover
Implementing the Outliers Remover
-
طراحی یک پروجکشن بر روی یک مجموعه
Designing a Projection onto a Collection
-
نمایش حذف کننده Outliers
Demonstrating the Outliers Remover
-
خلاصه
Summary
راه حل های صف مهندسی
Engineering Queuing Solutions
-
شناسایی نقش صف ها و پشته ها
Identifying the Role of Queues and Stacks
-
پیاده سازی کلاس پنجره کشویی
Implementing the Sliding Window Class
-
پیاده سازی پنجره آیتم های کاری
Implementing the Work Items Window
-
نمایش الگوریتم پنجره کشویی
Demonstrating the Sliding Window Algorithm
-
ساخت حداکثر صف
Constructing the Maximum Queue
-
اجرای حداکثر صف
Implementing the Maximum Queue
-
نمایش حداکثر صف
Demonstrating the Maximum Queue
-
خلاصه
Summary
نمایش نظرات