Tomáš Pitner, Radek Ošlejšek, Marek Šabo, Jakub Čecháček
Prakticky zaměřený bakalářský předmět
Cílem je naučit základním principům objektového návrhu a programování.
Algoritmickou stránku věci jste již většinou probírali v IB001/IB111
Zde je důraz na kvalitní objektový návrh a implementaci, styl, konvence.
Všechny materiály k přednášce jsou v IS MU.
IB111 nebo IB113 — Základy programování nebo Úvod do programování a algoritmizace kde studenti získávají
základní znalosti programování (Python)
znalost základních příkazů, řídicí struktury, pole
částečnou znalost objektového přístupu
PB071 Principy nízkoúrovňového programování, kde studenti získávají
znalost syntaxe jazyka C
znalost základních datových typů
znalost vnitřních struktur
IB002 Algoritmy a datové struktury I, kde studenti získávají
základy algoritmizace vč. mírně pokročilých datových struktur (stromy, grafy)
Předpokládají se základní znalosti strukturované algoritmizace a programování, tj.:
základní příkazy, sestavování jednoduchých výrazů;
základní datové typy (celá a reálná čísla, logické proměnné, řetězce);
základní řídicí struktury — větvení, cykly, procedury/funkce.
náplní je zvládnutí Javy umožňující vývoj jednodušších praktických aplikací s GUI, databázemi, základy webových aplikací.
V průběhu semestru se pracuje na uceleném projektu formou párového programování plus některých individuálních úloh.
Učí kolektiv zkušených cvičících pod vedením Tomáše Pitnera, Luďka Bártka, Petra Adámka a Martina Kuby.
náplní jsou XML a související technologie,
prvky týmového vývoje (projekty, využití služeb hostování projektů, jako je GitHub).
Učí kolektiv zkušených cvičících pod vedením Luďka Bártka a Tomáše Pitnera.
pokročilejší předmět spíše magisterského určení, předpokládá znalosti/zkušenosti z oblasti databází, částečně sítí a distribuovaných systémů, a také Javy zhruba v rozsahu PB162 a PV168.
Náplní je zvládnutí netriviálních, převážně klient/server aplikací na platformě JavaEE.
Problematice webových a mobilních aplikací se na FI věnují např.
každý semestr PV226 Seminář Lasaris
v jarním semestru PV219 Seminář webdesignu
v podzimním semestru předmět PV247 Moderní uživatelská rozhraní
v jarním semestru PV239 Mobilní platformy
v jarním semestru PV249 Vývoj v Ruby
v podzimním návazný PV256 Projekt z programování pro Android
pracovna A305 (budova A1 FI) laboratoře Lasaris
tel. 54949 6121
(z tlf. mimo budovu), kl. 6121
(volání v rámci fakulty i celé MU)
e-mail: oslejsek(at)fi.muni.cz
Web RO: Osobní stránka RO
pracovna C218,
příp. kanc.správy Vědecko-technologického parku CERIT (1.NP/přízemí budovy A2);
tel. 54949 5940
(z tlf. mimo budovu), kl. 5940
(volání v rámci fakulty i celé MU)
e-mail: pitner(at)muni.cz
Web: Osobní web TP
Primárním konzultačním bodem jsou vaši cvičící.
Cvičení jsou vedena mj. právě z důvodu možnosti konzultací.
Konzultace přímo s přednášejícími
vždy v kanc. C218
Út 10.00 — 11.30
nebo jindy, dle dohody
Rudolf Pecinovský: Myslíme objektově v jazyku Java nebo
Java 7 — Učebnice objektové architektury pro začátečníky Grada Publishing
Rudolf Pecinovský: Java 5.0 — Novinky jazyka a upgrade aplikací (fulltext v PDF zdarma)
Tomáš Pitner: Java — začínáme programovat, Grada Publishing, 2002, doprovodný web knihy (učebnice je orientovaná na Javu 1.4 a nižší; většina poznatků je platných i nadále, ale v Javě 5 až 8 se objevila řada nových prvků)
Pavel Herout: Učebnice jazyka Java, Kopp, 2000-2010, doprovodný web knihy
příp. i Pavel Herout: Java — grafické uživatelské rozhraní a čeština, Kopp, 2001 — pro pokročilé
DevOps tools for Java developers : best practices from source code to production containers - https://katalog.muni.cz/Record/MUB01006490162
Pecinovský, R.: Java 8 - https://katalog.muni.cz/Record/MUB01006355332
Pecinovský, R.: Java 14 - https://katalog.muni.cz/Record/MUB01006490156
Roubalová, E.: Java bez přechozích znalostí - https://katalog.muni.cz/Record/MUB01006351493
Long, F.: Java coding guidelines : 75 recommendations for reliable and secure programs - https://katalog.muni.cz/Record/MUB01000995960
Havelka, A.: JUnit 5 - https://katalog.muni.cz/Record/MUB01006490158
Virius, M.: Java programování podprocesů - https://katalog.muni.cz/Record/MUB01006490157
Urma: Modern Java in Action - https://katalog.muni.cz/Record/MUB01006490163
Bloch, J.: Effective Java - Third edition https://katalog.muni.cz/Record/MUB01006490159
Herout, P.: Učebnice jazyka Java - https://katalog.muni.cz/Record/MUB01000847442
Daschner: Architecting Modern Java EE Applications…. (2 ks)
Martin: The Clean Coder…. (1 ks)
Martin: Clean Architecture…. (1 ks)
Krochmalski: Docker and Kubernetes for Java Developers (2 ks)
Bruce Eckel: Myslíme v jazyce Java — příručka programátora, Grada Publishing , 2000
příp. Bruce Eckel: Myslíme v jazyce Java — příručka zkušeného programátora, Grada Publishing , 2000 — pro pokročilé
Joshua Bloch: Java efektivně — 57 zásad softwarového experta, Grada Publishing
Bogdan Kiszka: 1001 tipů a triků pro programování v jazyce Java, Computer Press, 2003
Bruce Eckel: Thinking in Java Stáhnout zdarma (PDF)