PV168 Seminar in Java programming

Faculty of Informatics
Autumn 2022
Extent and Intensity
2/2. 3 credit(s) (plus extra credits for completion). Type of Completion: z (credit).
Taught in person.
Teacher(s)
Ing. Pavel Hrdina (lecturer)
Mgr. Jiří Weiser (lecturer)
Mgr. Peter Balčirák (lecturer)
Mgr. Jakub Čecháček (lecturer)
Ing. Jiří Koudelka (lecturer)
Mgr. Imrich Nagy (lecturer)
Mgr. Vojtěch Sassmann (lecturer)
Mgr. Peter Stanko (lecturer)
Ing. Daniela Hostačná (assistant)
Mgr. Michael Koudela (assistant)
Bc. Jonáš Novotný (assistant)
Ing. Tomáš Ondruško (assistant)
Bc. Richard Pánek (assistant)
Ing. Ondřej Konečný (lecturer)
Mgr. Jakub Smadiš (seminar tutor)
Bc. Matej Hakoš (assistant)
Bc. Oliver Mačejovský (assistant)
Mgr. Šimon Mačejovský (assistant)
Mgr. Vendula Teuchnerová (assistant)
Ing. Andrej Vaculčiak (assistant)
Mgr. Jan Fikejs (assistant)
doc. Ing. RNDr. Barbora Bühnová, Ph.D. (lecturer)
Mgr. Peter Šípoš (assistant)
Guaranteed by
prof. RNDr. Tomáš Pitner, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Contact Person: doc. Ing. RNDr. Barbora Bühnová, Ph.D.
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Thu 18:00–19:50 D3
  • Timetable of Seminar Groups:
PV168/01: Wed 16:00–17:50 B130, O. Konečný, J. Koudelka
PV168/02: Mon 18:00–19:50 B130, P. Hrdina, I. Nagy
PV168/03: Thu 14:00–15:50 B130, P. Balčirák, J. Čecháček
PV168/04: Mon 16:00–17:50 B130, V. Sassmann, J. Weiser
PV168/05: Wed 18:00–19:50 B130, J. Smadiš, P. Stanko
Prerequisites
Java programming knowledge covered by the course PB162.
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
The capacity limit for the course is 250 student(s).
Current registration and enrolment status: enrolled: 115/250, only registered: 0/250, only registered with preference (fields directly associated with the programme): 0/250
fields of study / plans the course is directly associated with
there are 74 fields of study the course is directly associated with, display
Course objectives
The goal of this course is to extend the basic knowledge of Java and master its practical application in concrete team projects. The student will be able to appropriately decompose simple programming tasks and write robust code including automated tests. The student will get acquainted with basics of GUI development, multithreaded applications, fundamental APIs, and simple database (JDBC). After passing the course, the student is expected to be capable of designing and developing simple applications in Java. Furthermore, the student is also expected to know how to cooperate with colleagues during the development process.
Learning outcomes
Student will be able to:
- do object design in Java;
- use presented design patterns
- use and write unit tests in JUnit;
- access relational databases in Java via JDBC;
- use SwingWorker class for asynchronous computations
- describe the principles of applications with a graphical user interface;
- write simple applications with GUI in Java;
- cooperate with colleagues during software development
Syllabus
  • GUI Applications
  • Object-oriented design in Java
  • Design patterns
  • Testing, Unit Testing, JUnit
  • Databases in Java, JDBC
  • Immutable objects
  • Asynchronous desktop applications
Literature
    required literature
  • BLOCH, Joshua. Java efektivně : 57 zásad softwarového experta. Translated by Karel Voráček. 1. vyd. Praha: Grada, 2001, 230 s. ISBN 8024704161. info
    recommended literature
  • FOWLER, Martin. Refaktoring : zlepšení existujícího kódu. 1. vyd. Praha: Grada, 2003, 394 s. ISBN 8024702991. info
  • ECKEL, Bruce. Myslíme v jazyku Java : knihovna programátora. Praha: Grada, 2001, 431 s. ISBN 8024790106. info
  • WONG, Henry. Java threads. Edited by Scott Oaks. 3rd ed. Sebastopol, CA: O'Reilly & Associates, 2004, 340 s. ISBN 0596007825. info
  • BECK, Kent. Programování řízené testy. Praha: Grada Publishing, 2004, 204 s. ISBN 80-247-0901-5. info
  • SHIRAZI, Jack. Java - vylaďování výkonu. 1. vyd. Praha: Grada, 2003, xvi, 597. ISBN 8024707527. info
Teaching methods
The course uses method of experiential learning. Students form groups of four. Within these group, students study methods shown in labs in PC rooms and incorporate those methods in the semester project. Lectures are dedicated to explanation and to enlargement of the concepts shown in labs.
Assessment methods
For the successful completion, the participant is required to successful presentation of the project and to attend the labs regularly.
Language of instruction
Czech
Follow-Up Courses
Further Comments
Study Materials
The course is taught annually.
Listed among pre-requisites of other courses
Teacher's information
https://pv168.pages.fi.muni.cz/
The course is also listed under the following terms Spring 2005, Spring 2006, Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2013, Spring 2014, Spring 2015, Spring 2016, Spring 2017, Spring 2018, Spring 2019, Autumn 2019, Autumn 2020, Autumn 2021, Autumn 2023.
  • Enrolment Statistics (Autumn 2022, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2022/PV168