140 likes | 240 Views
L4. C# pentru începători. Florin Tudor Cristea · Microsoft Student Partners. Implementarea colecţiilor şi a tipurilor generice în Microsoft .NET Framework 2.0. C3355. CONT ’ D. Lucrând cu colecţiile generice. Privire generală.
E N D
L4 C#pentruîncepători Florin Tudor Cristea· Microsoft Student Partners
Implementarea colecţiilor şi a tipurilor generice în Microsoft .NET Framework 2.0 C3355
Privire generală Deşi am văzut cât de flexibile sunt colecţiile non-generice, ne-am putea pune întrebarea cât de des avem cu adevărat nevoie să stocăm mai multe tipuri de date într-o singură colecţie. Să spunem că am scris o aplicaţie web şi dorim să înregistrăm undeva ID-ul fiecărui client atunci când acesta se autentifică pe sit. Deseori ne confruntăm cu un volum foarte mare de vizitatori şi nu putem face această operaţie în timp real. Vrem să stocăm aceste date drept întregi într-un Queue şi să le procesăm în fundal. Colecţiile generice ne permit să facem exact asta. Spre deosebire de colecţiile non-generice, colecţiile generice stochează datele ca tipuri de date specifice, ceea ce face mai rapidă stocarea şi recuperarea datelor din colecţie. Motivul este că nu mai avem nevoie să trecem prin rutina de boxing sau unboxing în cazul tipurilor valoare, respectiv casting în cazul tipurilor referinţă.
Privire generală • System.Collections.Generic • List • Stack • Queue • Dictionary • SortedList • LinkedList
List Proiect: ListSample • List.Enumerator (IEnumerator) • Current • MoveNext
Key-value pairs Proiect: KeyValuePairsSample ~ Dictionary ~ SortedList ~ SortedDictionary
Linked list Proiect: LinkedListSample LinkedList ~ Count ~ First ~ List ~ AddFirst ~ AddLast ~ AddBefore ~ AddAfter ~ Remove ~ Contains ~ Find LinkedListNode ~ Value ~ List ~ Next ~ Previous
NameObjectCollectionBase Proiect: NameObjectCollectionBaseSample ~ NameObjectCollectionBase ~ NameObjectCollectionBase. KeysCollection
Privire generală Proiect: CollectionBaseSample ~ CollectionBase OnRemove, OnClear, OnInsert, OnSet ~ ReadOnlyCollectionBase ~ DictionaryBase OnInsert, OnRemove, OnClear, OnGet, OnSet ~ DictionaryEntry
Pe data viitoare! http://students.info.uaic.ro/~florin.cristea/cspi