DAT101 Introduction to Object-oriented Programming, DAT201 Algorithms and Data Structures or equivalent.
Knowledge: The student will
Understand basic programming concepts and their implementation
Know basic software modeling concepts
Skills: The student will be able to
Select a meaningful programming model for a given problem
Program in Prolog and Scala or similar languages
General Competence: The student will be able to
Solve problems using different programming models
Compare and understand features of programming languages
Functional programming and Scala, Concepts of data types and coding, Declarative programming and Prolog, Syntax and Semantics, Computability, Subprograms, Exeptions, Runtime environments, Distributed Programming.
Lectures, group projects and lab exercises. The course covers programming in several languages and use of related software. Students develop their own programs to solve the given tasks. Some of the exercises are done in groups of appropriate size.
Parts of the course are run as intensive weeks. Estimated work load for the average student is 27 hours per credit.
Approved mandatory lab exercises as announced in LMS.
Assessment methods and criteria
Portfolio assessment with adjusting oral examination. Graded assessment. Information about the content of the portfolio will be given in the LMS by the start of the semester.
The study programme manager, in consultation with the student representative, decides the method of evaluation and whether the courses will have a midterm- or end of term evaluation, see also the Quality System, section 4.1. Information about evaluation method for the course will be posted on Canvas.