Information Systems A: Object-Oriented Programming I

7.5 credits

Syllabus, Bachelor's level, 2IS006

A revised version of the syllabus is available.
Code
2IS006
Education cycle
First cycle
Main field(s) of study and in-depth level
Information Systems G1N
Grading system
Fail (U), Pass (G), Pass with distinction (VG)
Finalised by
The Department Board, 25 February 2021
Responsible department
Department of Informatics and Media

Entry requirements

General entry requirements and English 6, Mathematics 3b/3c, Social Studies 1b/1a1+1a2 or English B, Mathematics C, Civics A

Learning outcomes

In terms of knowledge and understanding, after completing the course the student should be able to

  • describe central object-oriented terms such as encapsulation, information hiding, composition, polymorphism, inheritance, and abstraction,
  • describe the relationship between the object-oriented paradigm, and other programming paradigms,
  • describe coding conventions, coding principles, design patterns, and anti-patterns.

In terms of skills and abilities, after completing the course the student should be able to

  • design, motivate and implement object-oriented programs based on given problems,
  • construct and interpret modelling diagrams as well as translate diagrams to and from code,
  • apply simple design patterns.

In terms of judgement and approach, after completing the course the student should be able to

  • discuss maintainability using object-oriented terminology in the context of coding conventions, coding principles, design patterns, and anti-patterns. 

Content

The course acts as an introduction to object-oriented programming and focuses on independent problem solving with the help of object-oriented techniques. The course also deals with the ability to identify, discuss and evaluate advantages and disadvantages of different solutions in relation to changing requirements over time. The course emphasises understanding the object-oriented paradigm in relation to other programming paradigms such as procedural and declarative programming.

The course deals with foundational concepts such as encapsulation, information hiding, composition, and polymorphism. More advanced concepts such as coding conventions, coding principles, design patterns (i.e., common solutions to recurring problems) and anti-patterns (i.e., counterproductive, but common, solutions) are also covered.

Instruction

Lectures, laboratory exercises and supervision.

Assessment

The course is examined through assignments and an exam.

If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the University's disability coordinator or a decision by the department's working group for study matters.

FOLLOW UPPSALA UNIVERSITY ON

facebook
instagram
twitter
youtube
linkedin