C# pre skúsených programátorov C++, Javy a Delphi

Cieľ kurzu: Oboznámiť skúsených programátorov, prechádzajúcich na prostredie .NET frameworku, s jeho fungovaním, a postupne si prejsť rozdiely medzi C# a ostatnými jazykmi. C# je plnohodnotným programovacím jazykom a primárnym vývojovým jazykom pre Windows desktopy a Windows Server. Programátori sa oboznámia s novými konštruktami jazyka, novými technológiami a rôznymi ďalšími technikami, ktoré tento programovací jazyk natívne podporuje. Znalosti kurzu sú priamo využiteľné pre desktopový aj webový vývoj.

Trvanie: 3 dni

Vstupné požiadavky: Ovládať programovanie v C++, Jave alebo Delphi na solídnej úrovni. Nie je potrebné poznať prostredie .NET.

Obsahová náplň:

Úvod do C# a prostredia .NET

  • Úvod do prostredia .NET Framework 4
  • Programovacie jazyky pre .NET
  • Vytvorenie projektu vo Visual Studiu 2010
  • Písanie, spúšťanie a vykonávanie aplikácií
  • Automatizované dokumentovanie aplikácií
  • Debugging a tracing kódu aplikácií

Konštrukty jazyka C#

  • Premenné, ich scope a konverzia typov
  • Výrazy a operátory
  • Vytváranie a používanie polí
  • Cykly a podmienky
  • Deklarácia a volanie metód
  • Voliteľné a výstupné parametre metód
  • Overloading metód
  • Refactoring metód
  • Automatizované testovanie metód

Spracovanie chýb

  • Odchytávanie a ošetrovanie výnimiek
  • Vlastné výnimky a hierarchia výnimiek
  • Checked a unchecked kód

Práca so súborovým systémom

  • Práca so súbormi a adresármi
  • Použitie streamov

Vytváranie vlastných typov

  • Enumerácie
  • Triedy
  • Štruktúry
  • Referenčné vs. dátové typy
  • Nullable types

Objektové programovanie v C#

  • Zmeny v zapuzdrení tried – private, public, internal, protected
  • Statické triedy, metódy a polia
  • Extension metódy
  • Dedenie z tried a zmeny v dedení
  • Práca s interface-ami
  • Abstraktné a sealed triedy
  • Partial triedy a metódy
  • Zmeny v životnom cykle objektov
  • Garbage collection
  • Zapuzdrenie dát pomocou vlastností (properties) tried
  • Indexery
  • Preťažovanie operátorov
  • Operátory implicitnej a explicitnej konverzie

Pokročilé techniky

  • Vytváranie a používanie delegátov
  • Anonymné metódy
  • Lambda expressions
  • Spracovanie udalostí
  • Kolekcie
  • Generické typy, metódy a delegáti
  • Kovariancia a kontravariancia
  • Enumerátory a iterátory

Prehľad ďalších možností .NET frameworku

  • Úvod do technológie LINQ
  • Dynamické objekty a DLR
  • Asynchrónne programovanie
  • Paralelné programovanie
  • Lazy code
  • Databázové spracovanie využitím ADO.NET
  • Web services
  • Práca so sieťou
  • Práca s XML
  • Serializácia a deserializácia
  • Integrácia s Win32 API a unmanaged kód
  • Integrácia s rozhraním COM
  • Migrácia aplikácií z C++, Javy a Delphi na C#