Haladó .NET programozás
avagy fejlesztői mélységek rutinos programozók számára
Hossz:
40 óra
Az egyes alkalamak
Ár:
69 000 Ft+áfa
ingyenes!
Oktató
Virág István

A NetAcademia fejlesztői oktatója

 

Témakörök
1. Típusok áttekintése

CLR futtatókörnyezet áttekintése: fordítás, futtatás, IL nyelv, unsafe code.
System.Object. Beépített típusok. Casting: is és as operátor működése.
Primitív, referencia és értéktípusok. Immutable típus fogalma (string).
Nullable típus és működési elve.
Boxing és unboxing. Objektumok hash értéke: mikor használjuk?
Konstansok használata. Dynamic típus részletes ismertetése.
Típusok és típustagok láthatósága. Részleges osztályok, struktúrák és interfészek.
Statikus osztályok. Polimorfizmus: virtuális metódusok működési elve.

2. Metódusok, metódus paraméterek

Konstruktorok osztályokon és struktúrákon.
Típus konstruktorok.
Operator overloading. Implicit és explicit konverziós operátorok.
Extension metódusok. Részleges metódusok.
GetHashCode és Equals helyes implementálása.
Opcionális és named paraméterek. Paraméterek default értéke. REF és OUT paraméterek.
Változó hosszúságú paraméterlista. Implicit típusú lokális változók (var).

3. Property-k, delegáltak és események

Property-k előnyei. Hogyan implementáljuk őket. Láthatósági viszonyok.
Automatikus property-k. Anonymous típusok. Tuple type.
Paraméteres property-k: indexelők.
A delegate működési mechanizmusa. Anonymous metódusok.
Delegate használata callback metódusok létrehozására.
Delegate chain fogalma és használata.
Saját osztály készítése saját eseménnyel. Az eseményre való feliratkozás.
Eseményhez tartozó kivételosztályok elkészítése. Eseménykezelés során mi történik a színfalak mögött?

4. Generikusok, interfészek

Előre definiált generikus típusok: Set, List, Dictionary, Queue, Stack, Bag stb...
Saját generikus típus és kollekció létrehozása.
Generikus metódusok, interfészek és delegate-ek.
Kovariancia és kontravariancia fogalma. Generikus ellenőrzések és megszorítások.
Interfészek létrehozása és használata. Explicit interface metódus implementáció.
Néhány fontosabb beépített interface: IComparable, IDisposable, IEnumerable, IList, ICollection stb...

5. Attribútumok, kivételkezelés

Attribútumok szerepe és használata.
Saját egyedi attribútum létrehozása.
Elkészített attribútum használata.
Checked és unchecked műveletek.
A kivételkezelés működési mechanizmusának részletes áttekintése: 
try, catch, finally.
Saját kivételosztály készítése.
Nemkezelt kivételek. Kivitelek debuggolása.
Kivételkezelés során felmerülő teljesítményproblémák.

6. Memória menedzsment, DLL betöltődés, reflection, serialization

Garbage Collector működési mechanizmusa.  
Destructor fogalma. Finalize metódus. Dispose pattern helyes megvalósítása. A using utasítás használata.
Objektumok életciklusának monitorozása és kontrollálása.
Assembly betöltődés részletes áttekintése. Plugin-ezhető alkalmazások készítése: új típusok, metódusok automatikus felismerése.
Teljesítmény megfontolások: reflection mennyire gyors?
Objektumpéldányok bináris és XML alapú sorosítása.

7. Aszinkron programozás, többszálú programozás

Thread Pool fogalma. Task-ok programozása. Parallel For, ForEach és Invoke.
Aszinkron metódus végrehajtás. Gyakorlati használat: File és Network műveletek. Tipikus példa: chat szerver programozása.
IAsyncResult használata. Kivételkezelés aszinkron végrehajtás során.
Egyszerű szálak létrehozása. Prioritások kezelése. Szálak közti kommunikáció.
Szál-szinkronizációs módszerek: volatile, interlocked, spin lock.
Kernel módú módszerek: event, semaphore, mutex.
AutoResetEvent és ManualResetEvent használata.

Technikai információk
Részletes technikai információkat csak a képzés hallgatói nézhetik meg bejelentkezés után!
Haladó .NET programozás tanfolyami videók
CLR - Forditas - Tipusok
87 perc
2012. április 21.
Boxing - Casting - Immutable - Const
75 perc
2012. április 21.
Dynamic - Nullable - Equals - Unsafe
81 perc
2012. április 21.
Equals&GetHashCode - Virtual Methods
90 perc
2012. április 28.
Konstruktorok - Metódusok(operator, extension)
65 perc
2012. április 28.
Paraméterek - Singleton
82 perc
2012. április 28.
Módosítók: private, public, protected, internal, sealed, abstract stb...
103 perc
2012. május 05.
Property - Anonymous type - Tuple
71 perc
2012. május 05.
Delegáltak - Multicast Delegate - GetInvocationList - DynamicInvoke
80 perc
2012. május 05.
Anonymous delegates - Event - Generikusok
81 perc
2012. május 12.
PascalArray - Generikusok
80 perc
2012. május 12.
Interfészek - Beépített interfészek
74 perc
2012. május 12.
Emit - Beépített attribútumok
84 perc
2012. május 19.
Saját Attribútum - Plugin betöltés
69 perc
2012. május 19.
Exception
84 perc
2012. május 19.
EnumFlags - CheckedUnchecked - GC - Finalizer
88 perc
2012. május 26.
WeakReference - Dispose pattern
73 perc
2012. május 26.
Reflection - CodeDom - Serialization
88 perc
2012. május 26.
AsyncMethod - AsyncFile - Timer - ThreadPool
76 perc
2012. június 02.
ProcCache - Tasks - Task Continuation - Task Cancellation
77 perc
2012. június 02.
GUI - Thread - Parallel - Mutex - Semaphore
89 perc
2012. június 02.