Back to all courses

Programming 3: Interfaces and techniques

Individual course

After completing the course, the student is able to participate in the implementation of a larger software product. The programming language is Java (no prior experience needed).

Course contents

  • Modularity: Principle of locality, abstraction, encapsulation, interface, namespaces, design by contract
  • Inheritance: Base and subclasses, ownership of objects, dynamic binding
  • Team work: Version control in modern software development, division of labour
  • Software quality: Unit testing
  • Exceptions, exception guarantees
  • Use of generic programming

Learning outcomes

After completing the course, the student

  • knows how to use the typical programming tools and is able to explain their roles in software work.
  • knows how to program modules that are in connection to their environment through predefined interfaces.
  • is able to interpret interface documentation and understands the principles of design by contract.
  • knows more programming language structures than before and is able to use them in their programs.
  • can explain the concept of inheritance and is able to use it in their programs.

Completion methods

To complete the course, the student must obtain enough points from exercises and pass an electronic exam. Teaching is small groups in Tampere. (it might be possible to attend in Pori or Seinäjoki).

The course material is available in Finnish and English.

More information in the Tampere University study guide.

You can get a digital badge after completing this course.

API rajapinta ohjelmisto tekniikka

Responsible teacher

University of Tampere
Terhi Kilamo

Further information about the course and studying

University of Tampere
Teemu Rauhala, ICT coordinator

Contact person for applications

FITech Network University
Fanny Qvickström, Student services specialist
Application period has ended
Application period has ended
Data science,
Software systems
Course code:
Study credits:
0 €
Course level:
Teaching period:
Application start date:
Application deadline:
Application period has ended
Host university:
Tampere University
Who can apply:
Adult learner,
Degree student
Teaching method:
Place of contact learning:
Teaching language:
General prerequisites:
Good programming skills, for example the course Programming 2: Structures
Interested in this course? Subscribe and get updates about the course directly to your email. You can cancel subscription any time you want.