Detail předmětu

Objektově orientované programování

FEKT-BPC-OOPAk. rok: 2024/2025

Základní rysy platformy .NET, seznámení s vývojovým prostředím MS Visual Studio. Základy jazyka C# - základní typy, třídy, operátory, konverze, cykly, rozhodování, hodnotové a referenční typy, výčtové typy, číselné datové typy, řetězce a znaky, operace s řetězci, pole a kolekce, jmenné prostory. Objektově orientované programování v C# - pilíře OOP, zapouzdření, dědičnost, polymorfismus, přetypování, doba života objektu, zpracování výjimek, delegáti, události, generiky, reflexe, anonymní třídy, typy var a dynamic, lambda výrazy, integrovaný jazyk pro dotazování - LINQ. Knihovny .NET - knihovna kolekcí, jmenný prostor pro práci se soubory - System.IO, jmenný prostor pro uživatelské rozhraní - System.Windows.Forms. Webové aplikace a webové služby - principy návrhu webové aplikace a webové služby, knihovna System.Net, jednoduchá komunikace klient-server pomocí socketů.

Jazyk výuky

čeština

Počet kreditů

6

Vstupní znalosti

Student, který si zapíše předmět, by měl být schopen algoritmizovat jednoduché úlohy v jazyce C, měl by mít zkušenosti s vývojovým prostředím a laděním programů. Obecně jsou požadovány znalosti programování v jazyce C či JAVA. Předpokládá se absolvování povinných předmětů BPC1T a BPC2T.

Pravidla hodnocení a ukončení předmětu

až 20 bodů za cvičení (body student získává za 10 hodnocených cvičeních po dvou bodech)
až 10 bodů za půlsemestrální test
až 20 bodů za semestrální projekt
až 50 bodů za zkoušku
Počítačová cvičení jsou povinná, řádně omluvené zmeškané počítačové cvičení lze po domluvě s vyučujícím nahradit.

Učební cíle

Předmět si klade za cíl seznámit posluchače se základními principy objektového programování a základními vlastnostmi jazyka C#. Důraz je kladen také na praktické použití těchto principů k řešení konkrétních programátorských úloh.
Absolvent předmětu je schopen:
- ovládat vývojové prostředí Microsoft Visual Studio,
- sestavit program v jazyce C#,
- ladit program v jazyce C# a hledat chyby,
- vysvětlit pilíře objektového programování.
- navrhnout objektovou strukturu programu,
- navrhnout grafické uživatelské rozhraní,
- navrhnout relační model databázové aplikace,
- vytvořit webovou službu a webovou aplikaci.

Základní literatura

BAYER, Jürgen. C# 2005: velká kniha řešení. Brno: Computer Press, 2007. ISBN 978-80-251-1620-3. (CS)
BORY, Pavel. C# bez předchozích znalostí. Brno: Computer Press, 2016. ISBN 978-80-251-4686-6. (CS)
LAURENČÍK, Marek. SQL: podrobný průvodce uživatele. Praha: Grada Publishing, 2018. Průvodce. ISBN 978-80-271-0774-2. (CS)
MACDONALD M., SZPUSZTA M. ASP.NET 3.5 a C# 2008, Zoner Press 2008, 1584 s., ISBN 978-80-7413-008-3 (CS)
MAREŠ, A., 1001 tipů a triků pro C# 2010, Computer Press, 2011, ISBN 9788025132500 (CS)
PECINOVSKÝ, R. OOP - Naučte se myslet a programovat objektově, Computer Press 2010, 576 s., ISBN 978-80-251-2126-9 (CS)
PIALORSI, P., RUSSO, M. Microsoft LINQ - Kompletní průvodce programátora, Computer Press 2009, 616 s., ISBN 978-80-251-2735-3 (CS)
SHARP J. Microsoft Visual C# 2008, Computer Press 2008, 592 s., ISBN 978-80-251-2027-9 (CS)
VIRIUS, M., C# 2010 Hotová řešení, Computer Press, 2012, 424 s., ISBN 978-80-251-3730-7 (CS)

Doporučená literatura

WATSON, Ben. C# 4.0: řešení praktických programátorských úloh. Brno: Zoner Press, 2010. Encyklopedie Zoner Press. ISBN 978-80-7413-094-6. (CS)

Zařazení předmětu ve studijních plánech

  • Program BPC-AMT bakalářský 0 ročník, letní semestr, volitelný

  • Program BPC-AUD bakalářský

    specializace AUDB-TECH , 2 ročník, letní semestr, povinně volitelný
    specializace AUDB-ZVUK , 2 ročník, letní semestr, povinně volitelný

  • Program BPC-EKT bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-IBE bakalářský 3 ročník, letní semestr, povinně volitelný
  • Program BPC-MET bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-SEE bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-TLI bakalářský 2 ročník, letní semestr, povinně volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Prostředí .NET a jeho architektura, vlastnosti jazyka C#, zásady, objektově orientované programování, vývojové prostředí Microsoft Visual Studio 2022, typy, operátory, konverze.
2. Třídy, instance, členy třídy (datové složky, události, metody, vlastnosti), konstruktory, modifikátory.
3. Cykly, podmínky, výčtové typy.
4. Řetězce, pole, jmenné prostory.
5. Pilíře objektově orientované programování v C# (zapouzdření, dědění, polymorfismus).
6. Virtuální metody, abstraktní třídy, skrývání členů, přetypování, zpracování výjimek.
7. Rozhraní, delegáti, události, generiky, reflexe, lambda výrazy, LINQ.
8. Kolekce, práce se soubory.
9. Grafické uživatelské rozhraní – Forms, WPF.
10. Základy databázových systémů, jazyk SQL.
11. Přistup k datům MS SQL, technologie LINQ to SQL.
12. Webové služby, ASP .NET aplikace.
13. Rekapitulace látky, rozbor písemné části zkoušky.

Cvičení na počítači

39 hod., povinná

Vyučující / Lektor

Osnova

1. Úvodní hodina, seznámení s pracovištěm, kontrola přihlášení do počítačové sítě.
2. Vývojové prostředí Microsoft Visual Studio 2022. Konzolová aplikace: Typy, operátory, konverze.
3. Konzolová aplikace: Třídy, instance, členy třídy, konstruktory, modifikátory.
4. Konzolová aplikace: Cykly, podmínky, výčtové typy.
5. Konzolová aplikace: Řetězce.
6. Konzolová aplikace: Pilíře objektově orientované programování v C# (zapouzdření, dědění).
7. Konzolová aplikace: Virtuální metody, abstraktní třídy, skrývání členů.
8. Konzolová aplikace: Rozhraní, delegáti, události, generiky.
9. Konzolová aplikace: Kolekce, práce se soubory.
10. WPF aplikace. Uživatelské rozhraní.
11. Základy databázových systémů, jazyk SQL.
12. Konzolová aplikace: Přistup k datům MS SQL, technologie LINQ to SQL.
13. Prezentace samostaných projektů.