نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
بیاموزید که از طیف کاملی از مجموعه های مایکروسافت ، از لیست ها و فرهنگ لغت ها گرفته تا مجموعه ها ، صف ها و مجموعه های همزمان و تغییرناپذیر استفاده کنید. این دوره اصول حصول اطمینان از اینکه کد با مجموعه مقیاس پذیر و قوی است را بررسی خواهد کرد. درک نحوه استفاده صحیح از مجموعه ها یک بخش اساسی در نوشتن برنامه های موثر C # است. در این دوره ، مجموعه های پیشرفته C # ، شما می آموزید که چگونه از طیف گسترده ای از مجموعه های Microsoft استفاده کنید و نحوه اطمینان از منحصر به فرد بودن عناصر مجموعه را با استفاده از مجموعه ها ، همراه با سفارشی کردن جستجوی کلید واژه نامه و مرتب سازی عناصر ، یاد خواهید گرفت. در ابتدا ، شما از اصول مقیاس پذیری مجموعه ، که برای اطمینان از قابل قبول ماندن عملکرد هنگام کار با مجموعه های بسیار بزرگ ، مهم است ، برخوردار خواهید شد. سپس ، خواهید فهمید که چگونه می توانید با استفاده از رابط های مجموعه برای جدا کردن کد و مجموعه های فقط خواندنی و تغییرناپذیر برای محافظت از داده های خود ، کد خود را در اطراف مجموعه ها قوی تر کنید. سرانجام ، شما در استفاده از مجموعه ها در یک سناریو چند رشته ای با استفاده از مجموعه های همزمان کار خواهید کرد. با پایان این دوره ، شما دانش لازم را برای انتخاب مناسب ترین مجموعه مناسب برای هر شرایط معقول و استفاده از این مجموعه به دنبال روشهای خوب خواهید داشت.
سرفصل ها و درس ها
بررسی اجمالی دوره
Course Overview
-
بررسی اجمالی دوره
Course Overview
آرایه ها ، لیست ها و برابری مجموعه
Arrays, Lists, and Collection Equality
-
بررسی اجمالی و پیش نیازها
Overview and Prerequisites
-
برابری آرایه
Array Equality
-
بیشتر مجموعه ها انواع مرجع هستند
Most Collections Are Reference Types
-
برابری برای مجموعه ها
Equality for Collections
-
مقایسه مقادیر مجموعه با SequenceEqual ()
Comparing Collection Values with SequenceEqual()
-
تکلیف آرایه
Array Assignment
-
چرا آرایه ها خیلی عجیب هستند؟
Why Are Arrays so Strange?
-
آرایه های زیر هود
Arrays under the Hood
-
لیست های زیر هود
Lists under the Hood
-
خلاصه
Summary
عملکرد مجموعه
Collection Performance
-
بررسی اجمالی
Overview
-
چرا عملکرد عملکرد مجموعه مهم است
Why Collection Performance Matters
-
O (n) عملیات و مقیاس پذیری
O(n) Operations and Scalability
-
O (1) به چه معناست؟
What Does O(1) Mean?
-
The Perils of O (n مربع)
The Perils of O(n squared)
-
بررسی مقیاس بندی مجموعه
Collection Scaling Review
-
معرفی نسخه نمایشی TourBooker
Introducing the TourBooker Demo
-
وارد کردن کشورها به یک لیست
Importing Countries into a List
-
نمایش لیست در یک ListBox
Displaying the List in a ListBox
-
جستجوی خطی با لیست. پیدا کردن ()
Linear Searching with List.Find()
-
مرتب سازی: List.Sort () در مقابل LINQ
Sorting: List.Sort() vs. LINQ
-
خلاصه
Summary
داخل دیکشنری ها و دیکشنری های مرتب شده
Inside Dictionaries and Sorted Dictionaries
-
بررسی اجمالی
Overview
-
ایجاد یک فرهنگ لغت از یک لیست با LINQ
Creating a Dictionary from a List with LINQ
-
جستجوی کشورها توسط کلید
Looking up Countries by Key
-
حل حساسیت مورد با یک مقایسه کننده برابری
Solving Case Sensitivity with an Equality Comparer
-
برشمردن فرهنگ لغت ها
Enumerating Dictionaries
-
دستور شمارش دیکشنری مشخص نیست
Dictionary Enumeration Order Is Unspecified
-
معرفی SortedDictionary & lt؛ TKey ، TValue
Introducing SortedDictionary<TKey, TValue>
-
SortedList در مقابل SortedDictionary
SortedList vs. SortedDictionary
-
استفاده از نوع سفارشی به عنوان کلید
Using a Custom Type as a Key
-
برابری برتر برای کلیدها
Overriding Equality for Keys
-
اهمیت GetHashCode ()
The Importance of GetHashCode()
-
خلاصه
Summary
تغییرات با عملکرد بالا با لیست های پیوندی
High-performance Modifications with Linked Lists
-
بررسی اجمالی و معرفی نسخه ی نمایشی
Overview and Introducing the Demo
-
معرفی LinkedList & lt؛ T
Introducing LinkedList<T>
-
تغییرات سریع اما جستجوی آهسته
Fast Changes but Slow Lookup
-
گره ها و LinkedListNode & lt؛ T
Nodes and LinkedListNode<T>
-
افزودن به لیست پیوندی با AddLast ()
Adding to a Linked List with AddLast()
-
حذف از لیست پیوندی با حذف ()
Removing from a Linked List with Remove()
-
درج لیست پیوندی با InsertBefore ()
Inserting into a Linked List with InsertBefore()
-
LinkedList & lt؛ T موافقان و مخالفان
LinkedList<T> Pros and Cons
-
مرتب شده دیکشنری برگشت
SortedDictionary Is Back
-
استفاده از منحصر به فرد کلید واژه نامه
Taking Advantage of Dictionary Key Uniqueness
-
خلاصه
Summary
پشته ها
Stacks
-
بررسی اجمالی
Overview
-
معرفی Stack & lt؛ T
Introducing Stack<T>
-
تنظیم نسخه ی نمایشی
Setting up the Demo
-
ورود به سیستم با Stack & lt؛ T .Push ()
Logging with Stack<T>.Push()
-
Undoing and Stack & lt؛ T .Pop ()
Undoing and Stack<T>.Pop()
-
اجرای ویژگی واگرد
Implementing the Undo Feature
-
مشخصات یک پشته
Characteristics of a Stack
-
خلاصه
Summary
صف
Queues
-
نمای کلی: معرفی صف & lt؛ T
Overview: Introducing Queue<T>
-
نسخه ی نمایشی: درخواست های رزرو در صف
Demo: Queuing Booking Requests
-
اعلام صف
Declaring the Queue
-
SelectedItems ضعیف تایپ شده است
SelectedItems Is Weakly Typed
-
به صف
Enqueuing to the Queue
-
کاهش
Dequeue
-
نگاهی به صف
Peeking the Queue
-
برشمردن صف
Enumerating the Queue
-
خلاصه
Summary
مجموعه های همزمانی و همزمانی
Concurrency and Concurrent Collections
-
بررسی اجمالی
Overview
-
افزودن همزمانی به نسخه ی نمایشی
Adding Concurrency to the Demo
-
ایجاد یک صف همزمان
Enqueueing to a Concurrent Queue
-
اخراج از یک صف همزمان با TryDequeue ()
Dequeueing from a Concurrent Queue with TryDequeue()
-
نگاهی به صف همزمان با TryPeek ()
Peeking a Concurrent Queue with TryPeek()
-
خلاصه
Summary
ادغام داده ها با HashSets و SortedSets
Merging Data with HashSets and SortedSets
-
بررسی اجمالی
Overview
-
حذف موارد تکراری با LINQ
Removing Duplicates with LINQ
-
اجتناب از موارد تکراری با Hashset & lt؛ T
Avoiding Duplicates with Hashset<T>
-
مقایسه مجموعه ها و واژه نامه ها
Comparing Sets and Dictionaries
-
مرتب سازی موارد با SortedSet & lt؛ T
Sorting Items with SortedSet<T>
-
تهیه یک مقایسه کننده
Supplying a Comparer
-
مقایسه کنندگان و مقایسه کنندگان برابری
Comparers and Equality Comparers
-
ادغام مجموعه ها با UnionWith ()
Merging Sets with UnionWith()
-
Intersection و IntersectWith را تنظیم کنید ()
Set Intersection and IntersectWith()
-
خلاصه
Summary
مجموعه های فقط خواندنی و غیرقابل تغییر
Read-only and Immutable Collections
-
بررسی اجمالی
Overview
-
معرفی ReadOnlyDictionary & lt؛ TKey ، TValue
Introducing ReadOnlyDictionary<TKey, TValue>
-
معرفی ReadOnlyList & lt؛ T
Introducing ReadOnlyList<T>
-
فقط خواندنی کد را قوی می کند
Read-only Makes Code Robust
-
روزنه موجود در مجموعه های فقط خواندنی
The Loophole in Read-only Collections
-
مجموعه های تغییرناپذیر
Immutable Collections
-
مقایسه مجموعه های غیرقابل تغییر و فقط خواندنی
Comparing Immutable and Read-only Collections
-
همزمانی
Concurrency
-
خلاصه
Summary
رابط های مجموعه
Collection Interfaces
-
بررسی اجمالی
Overview
-
رابط های فهرست و فرهنگ لغت
List and Dictionary Interfaces
-
شمارش با IEnumerable & lt؛ T
Enumerating with IEnumerable<T>
-
عملکرد غیرمجاز & lt؛ T و LINQ
IEnumerable<T> and LINQ Performance
-
بررسی مقادیر با هر ()
Checking for Values with Any()
-
IReadOnlyList & lt؛ T در مقابل ImmutableList & lt؛ TO
IReadOnlyList<T> vs. IImmutableList<T>
-
جدا کردن کد
Decoupling the Code
-
خلاصه ماژول
Module Summary
-
خلاصه دوره
Course Summary
نمایش نظرات