Programming 2

This course gives an introduction to computer architecture and program execution from gate level to high-level programming languages.
Image for course subject

Schedule:

Teaching time:

Daytime

Location:

Espoo
Online

Topic:

Information and communications technology

Form of learning:

On-campus
Online

Provider:

Aalto University, FITech

Level:

Intermediate

Credits:

5 By Aalto University (ECTS)

Fee:

Free of charge

Target group and prerequisites

Please note that this course assumes previous experience with the Scala programming language. The course Ohjelmointi 1/Programming 1 is highly recommended before taking Programming 2.

Course description

This course gives an introduction to computer architecture and program execution from gate level to high-level programming languages.

Course contents

  • Computer architecture, binary data, and logic.
  • Programming abstractions and analysis of program performance.
  • Aspects of functional programming, e.g. recursive definitions and recursion.
  • Introduction to computer science and problem-solving with algorithms.

Learning outcomes

Upon successfully completing the course, the student

  • understands the essential functional structure of a programmable computer and its operation during program execution.
  • understands the physical limitations and possibilities of computers, including the main computational resources (time, space, parallelism, etc) and how to put these into use.
  • can determine/measure the performance of a computer program in practice, in simple cases by inspecting only the structure of the program.
  • understands what is meant by an abstract interface and its implementation, including the possibility of alternative implementations with different performance characteristics.
  • understands the concept of recursion and can write programs that employ recursion and operate on recursive data structures.
  • knows the basics of algorithm design and analysis, including selected designs for fundamental combinatorial tasks (searching, sorting, etc.).

Teaching methods

Programming exercises, reading- and video-material. Please note that the exercise sessions will primarily be held on campus during daytime, but are not mandatory.

Completion methods

Weekly programming exercises.

Application deadline: 20.2.2022.

  • Updated:
Share
URL copied!

You might be interested in these

Fundamental courses

Image for course subject

Machine learning transforms our lives

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Informaatioteknologian perusteet

Information and communications technology

Location:
Espoo
Level:
Beginner
Image for course subject

Cybersecurity

Information and communications technology

Location:
Online
Espoo
Level:
Beginner
Image for course subject

Introduction to web development and programming

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Introduction to digital transformation

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Digital ethics and sustainability

Information and communications technology

Location:
Online
Level:
Beginner

Intermediate courses

Image for course subject

Tietokannat

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Tietokoneverkot

Information and communications technology

Location:
Espoo
Online
Level:
Intermediate
Image for course subject

Tietoliikenteen siirtomenetelm├Ąt

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Capstone: Information Systems Development

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Management Information Systems

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Industrial training

Information and communications technology

Location:
Espoo
Level:
Intermediate

Advanced courses

Image for course subject

Value network design for internet services

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

SDN fundamentals & techniques

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Performance analysis

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Machine type communications for internet of things

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Microservice architectures and serverless computing

Information and communications technology

Location:
Online
Level:
Advanced
Image for course subject

Machine learning for mobile and pervasive systems

Information and communications technology

Location:
Espoo
Level:
Advanced