Course detail
Computers and Programming 2
FEKT-BKC-PC2TAcad. year: 2019/2020
General introduction to algorithmization, a general introduction to object-oriented programming, the control sequence of higher-order languages, the JAVA Eclipse application programming environment.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Learning outcomes of the course unit
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Course curriculum
2. Classes and objects. Basic data types (primitives) vs. objects. References. Visibility of variables and attributes in the program
3. Inheritance. Class vs. abstract class vs. interface. Polymorphism. Inner classes
4. Exceptions and the principle of treating unexpected events. Exception is thrown. Multiple nested exceptions and their handling. Hierarchical breakdown of exceptions. Own exception creation
5. Recursion. The principle of recursion, and an introduction to problem-solving using recursion
6. Text files and standard input and output. The input / output streams, work with file systems, files, folders, creation, delete, modify access rights
7. Advanced data types, Collections, lists (ArrayList, LinkedList), sets (HashSet, TreeSet), maps (HashMap, TreeMap), iterators. Browsing the collections in the cycle
8. String class, operations with strings . Enumeration type, envelope type. Generic programming
9. Debugging and testing of programs. Unit tests. Documentation generating
10. Graphical user interface. Design pattern Model-View-Controller. Event-driven programming
11. Multi-threaded processing. Processes vs. threads. Atomicity. Threads synchronization. Deadlock
12. The principles of object-oriented design of programs. Usage of design patterns
13. Management of major projects. Importing libraries and work with the API. Creating a custom library. Project management and integration libraries. Creating executable application
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
Recommended optional programme components
Prerequisites and corequisites
Basic literature
Pecinovský, R.: Myslíme objektově v jazyku Java -- kompletní učebnice pro začátečníky, Grada , 2008, ISBN: 978-80-247-2653-3. (CS)
Schildt , H.: Java: A Beginner's Guide, McGraw-Hill Education, 2014, ISBN: 978-0071809252. (EN)
Schildt , H.: JAVA 8 - výukový kurz, Computer Press, 2016, ISBN: 9788025146651. (CS)
Recommended reading
Elearning
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
2) Classes and objects. Basic data types (primitives) vs. objects. References. Visibility of variables and attributes in the program.
Inheritance. Class vs. abstract class vs. interface. Polymorphism. Inner classes.
3) Exceptions and the principle of treating unexpected events. Exception is thrown. Multiple nested exceptions and their handling. Hierarchical breakdown of exceptions. Own exception creation. Text files and standard input and output. The input / output streams, work with file systems, files, folders, creation, delete, modify access rights.
4) Advanced data types, Collections, lists (ArrayList, LinkedList), sets (HashSet, TreeSet), maps (HashMap, TreeMap), iterators. Browsing the collections in the cycle. String class, operations with strings . Enumeration type, envelope type. Generic programming.
5) Graphical user interface. Design pattern Model-View-Controller. Event-driven programming.
Exercise in computer lab
Teacher / Lecturer
Syllabus
2) Work with lists (ArrayList and LinkedList). Work with sets (HashSet and TreeeSet). Work with maps (HashMap and TreeMap). Envelope type usage. Enumeration type usage. Implementing and usage of generic class.
Elearning