Progression of the course ID1004:
- Algorithms - searching, sorting, hashing.
- Data structures - list, stack, queue, tree, graph.
- Presentation of classes and inheritance hierarchies (over shadowing, overloading, bonding, etc.).
- "Design patterns" I / O (eg file management).
- Exception handling.
- Algorithm Design and Analysis.
- Genericitet.
- Recursion.
After the course, you must be able to:
- documenting the classes in such a way that they can be reused by other programmers (for example, in a class library)
- discuss the appropriateness, effectiveness, etc. of two or more solutions of the same problems
You show that you have achieved these objectives through describing the work process and the results of executing your programs.
- select and use relevant, to the program, abstract data types (list, tree or graph)
- construct class hierarchies
- Create reusable components
- use the "design patterns" in software engineering
- know the principles and be able to use exception handling
You show that you have reached those goals by solving, written document and oral report assignments.
- discuss some common search and sort algorithms, their properties and their use
- propose, implement and justify an algorithm as part of a problem (in terms of time complexity, memory usage, etc.)
- propose, implement and justify a data structure as part of a problem (in terms of seek time, time complexity, memory usage, etc.)
- discuss the object oriented concepts such as inheritance, shadowing, overloading, bonding, etc.
You show that you have achieved these objectives on the exam.