Computer Programming II
Syllabus, Bachelor's level, 1TD722
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Computer Science G1F, Technology G1F
- Grading system
- Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
- Finalised by
- The Faculty Board of Science and Technology, 3 May 2017
- Responsible department
- Department of Information Technology
Computer Programming I or equivalent.
To pass, the student should be able to
- use the programming language Java, both writing own code and explaining what task a given code performs;
- explain the concepts inheritance and polymorphism in an object-oriented language, and use these concepts in the programming process;
- implement recursive solutions to different problems;
- describe the general principle for analysing the efficiency of an algorithm and perform such an analysis on algorithms;
- describe, implement and use the fundamental data structures array, linked list, hash table, binary tree and abstract data types as stacks, queues and maps;
- describe how error handling with exceptions is working and to be able to use it in programs.
Programming in Java: inheritance, polymorphism, exceptions. Object oriented design. Data structures: stacks, queues, lists, trees, hash tables, maps and collections.
Basic algorithms for storing, searching and sorting. Debugging and testing.
Lectures, problem classes/computer lab and compulsory assignments.
Written examination (2 credits) and approved assignments (3 credits).