PB162 Java

Faculty of Informatics
Autumn 2002
Extent and Intensity
2/1. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
Teacher(s)
prof. RNDr. Tomáš Pitner, Ph.D. (lecturer)
Mgr. Luděk Bártek, Ph.D. (seminar tutor)
Mgr. Robert Batůšek (seminar tutor)
doc. RNDr. Jan Bouda, Ph.D. (seminar tutor)
RNDr. Vladimír Kadlec, Ph.D. (seminar tutor)
Mgr. Lubomír Krejčí (seminar tutor)
Mgr. Petr Lohnický (seminar tutor)
Mgr. Lukáš Svoboda (seminar tutor)
RNDr. Aleš Zlámal (seminar tutor)
Guaranteed by
doc. Ing. Jan Staudek, CSc.
Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Mon 18:00–19:50 D1, Tue 10:00–11:50 D1
  • Timetable of Seminar Groups:
PB162/01: Mon 9:00–9:50 B311, V. Kadlec
PB162/02: Mon 10:00–10:50 B311, V. Kadlec
PB162/03: Wed 12:00–12:50 B311, V. Kadlec
PB162/04: Mon 13:00–13:50 B116, L. Bártek
PB162/05: Thu 14:00–14:50 B116, L. Bártek
PB162/06: Thu 15:00–15:50 B116, L. Bártek
PB162/07: Thu 17:00–17:50 B311, L. Bártek
PB162/08: Mon 13:00–13:50 B117, L. Krejčí
PB162/09: Thu 14:00–14:50 B117, L. Krejčí
PB162/10: Thu 15:00–15:50 B117, L. Krejčí
PB162/11: Mon 16:00–16:50 B117, A. Zlámal
PB162/12: Mon 17:00–17:50 B117, A. Zlámal
PB162/13: Wed 10:00–10:50 B116, A. Zlámal
PB162/14: Wed 11:00–11:50 B116, A. Zlámal
PB162/15: Thu 7:00–7:50 B116, J. Bouda
PB162/16: Thu 8:00–8:50 B116, J. Bouda
PB162/17: Thu 9:00–9:50 B116, J. Bouda
PB162/18: Thu 17:00–17:50 B116, P. Lohnický
PB162/19: Thu 18:00–18:50 B116, P. Lohnický
PB162/20: Thu 19:00–19:50 B116, P. Lohnický
PB162/21: Fri 11:00–11:50 B116, R. Batůšek
PB162/22: Fri 12:00–12:50 B116, R. Batůšek
PB162/23: Fri 13:00–13:50 B116, R. Batůšek
PB162/24: Fri 11:00–11:50 B117, L. Svoboda
PB162/25: Fri 12:00–12:50 B117, L. Svoboda
PB162/26: Fri 13:00–13:50 B117, L. Svoboda
PB162/27: Mon 9:00–9:50 B116, T. Pitner
PB162/28: Mon 10:00–10:50 B116, T. Pitner
PB162/29: Mon 9:00–9:50 B117, L. Bártek
PB162/30: Mon 10:00–10:50 B117, L. Bártek
Prerequisites
Basic knowledge of a procedural programming language (Pascal, C).
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 560 student(s).
Current registration and enrolment status: enrolled: 0/560, only registered: 0/560, only registered with preference (fields directly associated with the programme): 0/560
fields of study / plans the course is directly associated with
there are 9 fields of study the course is directly associated with, display
Course objectives
The goal of this course is to give the students a basic knowledge on object oriented and event-driven programmming in Java. The student will become familiar with the basic Java and OO terminology, as well as necessary language syntax and semantics rules. Moreover, he/she will be able to analyse, design and implement basic data structures and algorithms. He/she will be trained on basic principles of event-driven programming (interactive programs) on user interfaces, as well as on simple components communication.
Syllabus
  • Introduction to Java: principles, history, comparison, Java program development lifecycle, basic tools. Simple console applications.
  • Basic concepts and terminology of object-oriented programming: abstract data types, requirements specification vs. implementation, encapsulation. Debugging.
  • More on object-oriented programming: inheritance, polymorphism. Class hierarchy. Collaboration and communication between objects, messaging. Interaction between objects.
  • More on Java specific features: Program constructs (branching, loops, operators, arrays, primitive datatypes, build-in classes, objects), Java Virtual Machine. Implementation of selected searching and sorting algorithms.
  • Program (high-level) structure: Methods, classes, packages, programs, Java archives. Java2 containers.
  • Event-driven programming. Java GUI.
  • Java I/O. Exceptions. Representation of graphs and basic graph algoritms in an applet.
  • Programming conventions: coding style, naming, package structuring, comments, JavaBeans conventions. Algoritms on graphs.
  • More advanced Java: basis Java design patterns. Inheritance vs. composition. Delegation, static members, access modifiers. Selected heuristic algoritms.
  • Java Tools and Extensions. Problem solving with backtracking.
Literature
  • ECKEL, Bruce. Myslíme v jazyku Java : knihovna programátora. Praha: Grada. 431 s. ISBN 8024790106. 2001. info
  • ECKEL, Bruce. Myslíme v jazyku Java : knihovna zkušeného programátora. Praha: Grada. 470 s. ISBN 8024700271. 2000. info
Assessment methods (in Czech)
V průběhu semestru jsou na cvičeních zadávány úlohy, jejichž bodování je 40procentní částí celkového hodnocení předmětu. Vlastní zkouška sestává z úvodního písemného testu a následné praktické realizace programu řešícího zadaný problém. Hodnotí se nejen splnění zadání a korektnost algoritmu, ale i jeho efektivita, stejně jako elegance řešení a kvalita dokumentace.
Language of instruction
Czech
Further Comments
The course is taught annually.
Listed among pre-requisites of other courses
Teacher's information
http://www.fi.muni.cz/~tomp/java
The course is also listed under the following terms Autumn 2003, Autumn 2004, Autumn 2005, Autumn 2006, Autumn 2007, Autumn 2008, Autumn 2009, Autumn 2010, Autumn 2011, Autumn 2012, Autumn 2013, Autumn 2014, Autumn 2015, Autumn 2016, Autumn 2017, Autumn 2018, Autumn 2019, Spring 2020, Spring 2021, Spring 2022, Spring 2023, Spring 2024.
  • Enrolment Statistics (Autumn 2002, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2002/PB162