ZP4CS – 1. hodina
Úvod
Aleš Keprt
únor 2015
ZP4CS
 Základy programování 4 (C#)
 Váš 4.semestr programování
 Obsahově naváže na předchozí ZP3CS
 Výuka klasicky 2h týdně
 Forma výuky: demonstrace, programování
 Zakončení předmětu: zápočet
2
Požadavky na zápočet
 Letos jediný požadavek: 12x aktivní účast


Aktivní účast = čárka za účast + nebýt mimo
Jen výjimečně kontrola prací ve škole či domácí práce
 Náhradní způsoby doplnění čárek


Bonusové body za zvláštní úkoly
Závěrečná písemka
3
Vyučující: Aleš Keprt
 Ph.D. z informatiky a aplikované matematiky
 V C# programuju přes 10 let
 Komerční praxe:
 Programátor C++, C#, Dynamics AX, Silverlight
 Výuka, namátkou:
 Assembler od roku 2000
 C# a .NET od roku 2006
 Teorie operačních systémů
 Objektově orientované technologie a návrh softwaru
 Paralelní programování
 Algoritmizace
4
Web a email
 http://staff.inf.upol.cz/keprt/
 [email protected] nebo [email protected]
5
Toto už znáte (ZP3CS)









Syntaxe a sémantika jazyka, základní datové typy
OOP v C# (třída, konstruktor, dědičnost, interface, metoda atd.)
Základní kolekce (včetně psaní uživatelských), IEnumerable, indexer
Delegáty a anonymní metody a jejich vztah k událostem
Výjimky
Základní práce s řetězci
Práce se soubory
Integrace jiných jazyků do C# - volání nativních metod knihoven
Vlákna
Stručně:
 Zpracování XML pomocí System.Xml
 Windows.Forms
 GTK#
6
Obsah kurzu – v kostce
 Visual Studio
 Pokročilejší prvky jazyka C#
 Programování ve Windows
 GUI ve Windows Forms
 Témat je hodně, času je málo


Budu se snažit vybírat, co je důležité
Budeme přeskakovat okrajové a alternativní věci
(jako GUI přenositelné do Linuxu apod.)
7
Obsah kurzu: Pokročilejší prvky C#








Unicode char, string, StringBuilder, kódování češtiny
DLL knihovny
Systémové kolekce, generiky
Vlastní kolekce – IEnumerable, yield
Události, lambda výrazy, vnější proměnné, Action, Func
LINQ to objects
Správa paměti, Dispose
Extension methods





Paralelní pr. (threadpool, background worker, lock, task, PLINQ)
XML a JSON serializace
.NET Remoting
Click once, instalátory
Async-await
8
Programování ve Windows
 Paměťový model flat, velikost zásobníku
 Typ aplikací: konzole a GUI
 Environment class
 Application class
 Isolated storage (stručně)
 Fronta zpráv, událostní systém GUI
 Modeless a modal režim okna
 Focus, paint
9
Windows Forms
 Main – start aplikace, otevření hlavního okna
 Form class – start z Mainu, další pomocí Show či




ShowDialog
Control class – základ všeho, ale vlastně nic neumí 
Control.Controls – každý prvek může obsahovat další prvky
Custom controls = dědičnost, k vytvoření vlastních prvků
Component class – obvykle nevizuální prvky (musí
podporovat design-time režim VS)


Control dědí z Component 
Lišta komponent v designéru
 Generovaný kód v designer.cs, partial class
 View-mediator pattern (tj. každé okno je obsluhováno
pouze metodami v jeho třídě)
10
Literatura
1. Andrew Troelsen: Pro C# 5.0 and the .NET 4.5
Framework. (6. vydání) Apress, 2012.
ISBN 978-1-4302-4233-8 (papír), 978-1-4302-4234-5 (ebook).
2. Jon Skeet: C# in Depth. (3. vydání) Manning, 2014.
ISBN 978-1-6172-9134-0.
3. Chris Sells, Michael Weinhardt: Windows Forms 2.0
Programming. (2. vydání) Addison Wesley
Professional, 2006.
ISBN 978-0-321-26796-2.
4. Matthew MacDonald. Pro .NET 2.0 Windows Forms &
Custom Controls in C#. Apress, 2006.
ISBN 1-59059-439-8.
11
Alternativní literatura v češtině
1. Andrew Troelsen. C# a .NET 2.0 profesionálně. Zoner
Press, 2006.
ISBN 80-86815-42-0.
2. Chris Sells. C# a WinForms. Zoner Press, 2005.
ISBN 80-86815-25-0.
3. Charles Petzold. Programování Microsoft Windows
Forms v jazykce C#. Computer Press, 2006.
ISBN 8025110583.
12
© Mgr. Aleš Keprt, Ph.D., 2015
Vytvořeno pro potřeby výuky na Univerzitě Palackého. Tento text není určen pro samostudium, ale jen
jako vodítko pro přednášku, takže jeho obsah se může čtenáři zdát stručný, nekompletní či možná i
chybný. Použití je povoleno jen na vlastní nebezpečí. 
V případě dalšího šíření tohoto dokumentu nebo i jeho kterékoliv části je NUTNO vždy uvést původního
autora a odkaz na původní dokument. Komentáře můžete posílat emailem autorovi (adresu najdete
pomocí Googlu).
13
Download

ZP4CS - 1. Úvod