PředmětyPředměty(verze: 772)
Předmět, akademický rok 2015/2016
   Přihlásit přes CAS
Jazyk C# a platforma .NET - NPRG035
Anglický název: C# Language and .NET Framework
Zajišťuje: Katedra distribuovaných a spolehlivých systémů (32-KDSS)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2014
Semestr: zimní
E-Kredity: 6
Rozsah, examinace: zimní s.:2/2 Z+Zk [hodiny/týden]
Počet míst: neomezen
Minimální obsazenost: neomezen
Stav předmětu: vyučován
Jazyk výuky: čeština, angličtina
Způsob výuky: prezenční
Další informace: http://d3s.mff.cuni.cz/teaching/nprg035
Garant: Mgr. Pavel Ježek, Ph.D.
Třída: Informatika Bc.
Informatika Mgr. - volitelný
Kategorizace předmětu: Informatika > Programování
Korekvizity : NPRG031
Je korekvizitou pro: NPRG057, NPRG038
Ve slož. prerekvizitě: NPRG024, NSWI152
Anotace -
Poslední úprava: Tajemník Katedry (05.05.2011)

Cílem předmětu je posluchače detailně seznámit s klíčovými principy platformy .NET, s jazykem C# a jeho pokročilejšími konstrukcemi. Po úspěšném absolvování předmětu by měli být studenti schopni efektivně využívat výhod platformy .NET. Předpokládá se znalost objektově orientovaného a událostmi řízeného programování a základních rysů jazyka C# na úrovni předmětu NPRG031.
Literatura -
Poslední úprava: Mgr. Pavel Ježek, Ph.D. (04.09.2013)

Mark Michaelis, Eric Lippert: Essential C# 5.0, 4th Edition, Addison-Wesley Professional, 2012

Jeffrey Richter: CLR via C#, 4th Edition, Microsoft Press, 2012

Jon Skeet: C# in Depth, 3rd Edition, Manning Publications, 2013

Christian Nagel et al., Professional C# 2008, Wrox, 2008

Microsoft Developer Network Library, http://msdn.microsoft.com/library/

Zdrojové kódy knihoven platformy .NET, http://referencesource.microsoft.com/

Sylabus -
Poslední úprava: Tajemník Katedry (16.05.2012)

Rozdíly mezi prekladem/behem nerízeného (C++) a rízeného kódu (C#/.NET, Java).

Základní principy JIT prekladu, funkce virtuálního stroje CLR, koncept safe/unsafe kódu, prehled jazyku pro .NET (C#, VB.NET, F#, C++/CLI, IronPython), výhody a nevýhody platformy .NET.

Implementace platformy .NET: Microsoft .NET Framework, Mono.

Vývojové nástroje, základy merení výkonu aplikací, dokumentování kódu.

Hodnotové vs. referencní typy (srovnání s jazyky Java a C++).

Alokace pameti na halde, základní principy Garbage Collection.

Trídy a struktury, rozhraní, dedicnost, virtuální metody, (statické) class konstruktory (srovnání s jazyky Java a C++).

Práce s retezci

Mutable vs. immutable datové typy.

Generické typy (srovnání s generickými typy v jazyce Java a se šablonami v C++).

Variance datových typu (kovariance a kontravariance).

Extension metody, pretežování operátoru, anonymní metody a lambda funkce, iteracní metody (srovnání s C++).

Delegáti a události.

Standardní knihovny .NET (soubory, kolekce, atd.).

Finalizace objektu, pokrocilé principy Garbage Collection, princip generacního Garbage Collectoru.

 
Univerzita Karlova v Praze | Informační systém UK