Course: Algorithms and Computer Programming 2

» List of faculties » EF » MTI
Course title Algorithms and Computer Programming 2
Course code MTI/ALG2
Organizational form of instruction Lecture + Lesson
Level of course Bachelor
Year of study not specified
Semester Summer
Number of ECTS credits 7
Language of instruction Czech
Status of course Compulsory
Form of instruction Face-to-face
Work placements Course does not contain work placement
Recommended optional programme components None
Lecturer(s)
  • Královcová Jiřina, doc. Ing. Ph.D.
  • Vitvarová Jana, Ing. Ph.D.
Course content
Lectures 1. Object oriented programming concept. Classes, data, methods. Encapsulation, inheritance, polymorphism. 2. Object oriented design. Version control systems. 3. Exceptions. Exception types. Generating and maintaining exceptions. 4. Program testing. Unit tests. 5. Disk files and directories. 6. Data streams. Text and binary files. 7. Maintaining text files. 8. Maintaining binary files. 9. Recursion. 10. Container classes. Dynamic data structures. 11. Demonstration of dynamic data structure implementation. 12. File types ZIP, CSV, JSON, XML, YAML and their processing. 13. Searching, principles, demonstration. 14. Demonstration of object oriented principles in the context of searching system implementation. Practice 1. Object oriented design. 2. Object oriented design - inheritance, polymorphism. 3 Interfaces. 4. Employment of exception mechanism, generating exceptions. 5. Program testing. Unit tests. 6. Maintaining of disk files and directories. 7. Disk files. Byte oriented and char oriented streams. 8. Test files. Text processing. 9. Binary files.. 10. Random access files. 11. Recursive methods. 12. Files of selected types. 13. Threads. 14. Test.

Learning activities and teaching methods
Monological explanation (lecture, presentation,briefing), Group consultation, Practicum, E-learning, Students' portfolio, Students' self-study
  • Home preparation for classes - 6 hours per semester
Learning outcomes
The course deepens the computer programming knowledge. Students learn object oriented programming approach, algorithm development and realization of algorithms in programming language Java. Algorithms are focused on maintaining text strings, maintaining disk files, numerical methods, realization and traversing list and tree structures.
Students will acquire further knowledge in object oriented programming, algorithm development and realization of algorithms in programming language Java. Algorithms are focused on maintaining text strings, maintaining disk files, numerical methods, realization and traversing list and tree structures.
Prerequisites
Fundamentals od algorithm development and programming language syntax. ALG1 class credit.
MTI/ALG1

Assessment methods and criteria
Combined examination, Practical exam

Participation on seminars. Realization of requested tasks. Credit tests. Pass exam.
Recommended literature
  • BLOCH Joshua. Effective java. Addison-Wesley, 2018. ISBN 978-01-3468-599-1.
  • CORMEN Thomas H. Introduction to algorithms. ISBN 978-02-6203-384-8.
  • HEROUT Pavel. Java - bohatství knihoven. České Budějovice, 2008. ISBN 978-80-7232-368-5.
  • HEROUT Pavel. Testování pro programátory. ČEské Budějovice, 2016. ISBN 978-80-7232-481-1.
  • HEROUT Pavel. Učebnice jazyka Java. Ćeské Budějovice, 2010. ISBN 978-80-7232-398-2.
  • PECINOVSKÝ Rudolf. Návrhové vzory, 33 vzorových postupů pro objektové programování. Brno, 2007. ISBN 978-80-251-1582-4.
  • SCHILDT Herbert. Java 7: výukový kurz. Brno, 2012. ISBN 978-80-251-3748-2.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Mechatronics, Informatics and Interdisciplinary Studies Study plan (Version): Applied Sciences in Engineering (2019) Category: Special and interdisciplinary fields 1 Recommended year of study:1, Recommended semester: Summer