Programming and Algorithmics 2
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
BI-PA2 | Z,ZK | 7 | 2P+1R+2C | Czech |
- Relations:
- In order to register for the course BI-IOS, the student must have successfully completed the course BI-PA2.
- In order to register for course BI-PA2, the student must have registered for course BI-AVI.21 in a previous semester.
- Course guarantor:
- Lecturer:
- Tutor:
- Supervisor:
- Department of Theoretical Computer Science
- Synopsis:
-
Students know the instruments of object-oriented programming and are able to use them for specifying and implementing abstract data types (stack, queue, enlargeable array, set, table). They can implement linked structures. They learn these skills using the programming language C++. Although this is not a module of programming in C++, students are introduced with all C++ features needed to achieve the main objective (operator overloading, templates).
- Requirements:
-
Fundamentals of algorithmics and C.
- Syllabus of lectures:
-
1. C++, non-object-oriented extensions.
2. Programming styles, object-oriented programming.
3. Operator overloading 1.
4. Operator overloading 2, shallow copy and deep copy.
5. Inheritance.
6. Polymorphism.
7. Abstract classes, exceptions.
8. Templates.
9. [3] Specification and implementation of abstract data types.
10. Stream library, serialization of objects.
11. Event-driven program, QT library.
- Syllabus of tutorials:
-
1. At the solved-problems sessions, the teacher presents the solutions for sample problems, comments the solution, and may add new pieces of information not mentioned in the lectures. Students follow the path to the solution on their own notebooks, take notes and ask questions.
2. In computer labs, students solve assigned tasks (follow-up to the lectures and solved-problems sessions), the TAs provide consultations and advice.
- Study Objective:
-
This is a mandatory course; many other courses build upon it.
- Study materials:
-
1.
2.
- Note:
- Further information:
- https://courses.fit.cvut.cz/BI-PA2/
- No time-table has been prepared for this course
- The course is a part of the following study plans:
-
- Bachelor program Informatics, unspecified branch, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Security and Information Technology, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Computer Science, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Computer Engineering, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Information Systems and Management, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Web and Software Engineering, spec. Software Engineering, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Web and Software Engineering, spec. Web Engineering, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Web and Software Engineering, spec. Computer Graphics, in Czech, 2015-2020 (compulsory course in the program)
- Bachelor branch Knowledge Engineering, in Czech, 2018-2020 (compulsory course in the program)