PB162 Programování v jazyce Java

Fakulta informatiky
podzim 2003
Rozsah
2/1. 4 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: z.
Vyučující
prof. RNDr. Tomáš Pitner, Ph.D. (přednášející)
Ing. Petr Adámek (cvičící)
Mgr. Luděk Bártek, Ph.D. (cvičící)
Mgr. Robert Batůšek (cvičící)
doc. RNDr. Jan Bouda, Ph.D. (cvičící)
Bc. Lukáš Jungmann (cvičící)
RNDr. Vladimír Kadlec, Ph.D. (cvičící)
Mgr. Lubomír Krejčí (cvičící)
Mgr. Petr Lohnický (cvičící)
RNDr. Jan Pavlovič, Ph.D. (cvičící)
Mgr. Lukáš Svoboda (cvičící)
Mgr. Kamil Ševeček (cvičící)
RNDr. Aleš Zlámal (cvičící)
Garance
doc. Ing. Jan Staudek, CSc.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Rozvrh
Pá 10:00–11:50 VC311, Pá 12:00–13:50 VC311
  • Rozvrh seminárních/paralelních skupin:
PB162/01: Po 10:00–10:50 B117, A. Zlámal
PB162/02: Po 11:00–11:50 B117, A. Zlámal
PB162/03: St 10:00–10:50 B117, A. Zlámal
PB162/04: St 11:00–11:50 B117, A. Zlámal
PB162/06: Po 13:00–13:50 B117, L. Svoboda
PB162/07: Po 14:00–14:50 B116, L. Jungmann
PB162/08: Po 12:00–12:50 B117, L. Svoboda
PB162/09: Po 15:00–15:50 B116, L. Jungmann
PB162/10: Út 10:00–10:50 B117, K. Ševeček
PB162/11: Út 11:00–11:50 B117, K. Ševeček
PB162/12: Čt 8:00–8:50 B117, J. Pavlovič
PB162/13: Čt 9:00–9:50 B117, J. Pavlovič
PB162/14: Čt 11:00–11:50 B117, V. Kadlec
PB162/15: Čt 12:00–12:50 B117, V. Kadlec
PB162/16: Čt 16:00–16:50 B117, P. Lohnický
PB162/17: Čt 17:00–17:50 B117, P. Lohnický
PB162/18: St 14:00–14:50 B117, P. Adámek
PB162/19: St 15:00–15:50 B117, P. Adámek
PB162/20: St 18:00–18:50 B117, L. Svoboda
PB162/21: St 19:00–19:50 B117, L. Svoboda
PB162/22: Pá 14:00–14:50 B117, L. Bártek
PB162/23: Pá 15:00–15:50 B117, L. Bártek
PB162/24: Út 17:00–17:50 B117, L. Bártek
PB162/25: Út 18:00–18:50 B117, L. Bártek
PB162/26: Út 19:00–19:50 B117, L. Bártek
Předpoklady
Znalost procedurálního programovacího jazyka (typicky Pascal, C).
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Předmět si smí zapsat nejvýše 300 stud.
Momentální stav registrace a zápisu: zapsáno: 0/300, pouze zareg.: 0/300, pouze zareg. s předností (mateřské obory): 0/300
Mateřské obory/plány
předmět má 8 mateřských oborů, zobrazit
Cíle předmětu
Cílem je seznámit studenty se základy moderního objektového a událostmi řízeného programování v jazyce Java. Student zvládne absolvováním kurzu kromě nezbytných pojmů a syntaxe daného jazyka také analýzu, návrh a implementaci základních datových struktur a algoritmů. Pozná a prakticky zvládne základní principy událostmi řízeného programování (interaktivních programů) jak na příkladu uživatelských rozhraní, tak na příkladu komunikace jednoduchých komponent (objektů).
Osnova
  • Úvod do jazyka Java - principy, historie, srovnání, životní cyklus javového programu, základní nástroje. Jednoduché konzolové aplikace.
  • Základní pojmy objektového programování - třída, její instance (objekt), proměnná a metoda objektu a třídy.
  • Základní programové konstrukce (větvení, cykly, operátory), primitivní datové typy, objektové typy a pole.
  • Spolupráce a komunikace mezi objekty, výměna zpráv.
  • Základní programátorské konvence - styl psaní zdrojového textu, pojmenovávání, dokumentační komentáře.
  • Zapouzdření, dědičnost, polymorfizmus. Hierarchie tříd. Architektura javových programů - metody, třídy, balíky.
  • Specifikace požadavků vs. implementace. Rozhraní a třídy, abstraktní třídy. Modifikátory přístupových práv.
  • Výjimky, princip jejich použití. Standardní výjimky a návrh vlastních výjimek.
  • Testování javových programů, nástroj junit.
  • Kontejnery v Javě2.
  • Vstupy/výstupy v Javě.
  • Distribuce javových programů, archívy .jar.
  • Událostmi řízené programování. Základní principy výstavby a činnosti uživatelských rozhraní.
  • Mírně pokročilé programování v Javě - základní návrhové vzory.
  • Nástroje a rozšíření Javy.
Literatura
  • PITNER, Tomáš. Java - začínáme programovat : podrobný průvodce začínajícího uživatele. Praha: Grada, 2002, 222 s. ISBN 8024702959. info
  • VIRIUS, Miroslav. Java pro zelenáče. Praha: Neocortex, 2001, 240 s. ISBN 80-902230-9-5. info
  • ECKEL, Bruce. Myslíme v jazyku Java : knihovna programátora. Praha: Grada, 2001, 431 s. ISBN 8024790106. info
  • Učebnice jazyka JAVA. Edited by Pavel Herout. 1. vyd. České Budějovice: KOPP, 2001, 349 s. ISBN 80-7232-115-3. info
  • CHAPMAN, Stephen J. Začínáme programovat v jazyce Java. 1. vyd. Praha: Computer Press, 2001, ix, 307. ISBN 8072264729. info
  • ECKEL, Bruce. Myslíme v jazyku Java : knihovna zkušeného programátora. Praha: Grada, 2000, 470 s. ISBN 8024700271. info
  • Programování v jazyce JAVA. Edited by David Flanagan. [1. vyd.]. Brno: Computer Press, 1997, xxxv, 488. ISBN 80-85896-78-8. info
Metody hodnocení
V průběhu semestru jsou na cvičeních zadávány úlohy (celkově za 40 bodů). Hodnotí se nejen splnění zadání a korektnost algoritmu, ale i jeho efektivita, stejně jako elegance řešení a kvalita dokumentace. Kromě toho je v průběhu semestru psána jedna písemka (25 bodů) u počítače. Praktickou formou u počítače je vedena závěrečná zkoušková písemka (35 bodů).
Informace učitele
http://www.fi.muni.cz/~tomp/java
Další komentáře
Předmět je vyučován každoročně.
Nachází se v prerekvizitách jiných předmětů
Předmět je zařazen také v obdobích podzim 2002, podzim 2004, podzim 2005, podzim 2006, podzim 2007, podzim 2008, podzim 2009, podzim 2010, podzim 2011, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2018, podzim 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, jaro 2025.