Ohjelmoinnin perusteet

Kuka tahansa voi oppia ohjelmoimaan. Tie osaavaksi koodariksi vaatii kuitenkin pitkäjänteistä harjoittelua ja sitoutumista. Huippukoodariksi kehittyykin vain tekemällä. Tästä huolimatta vähäisetkin ohjelmointitaidot auttavat ymmärtämään digitalisaation mukana tuomia uusia mahdollisuuksia.

Ohjelmoinnin perustiedot ja -taidot auttavat ymmärtämään ja tekemään muita ohjelmointiin, ohjelmistotuotantoon ja ohjelmistoprojekteihin liittyviä asioita.

FITech-yliopistot tarjoavat laajan valikoiman perustasoisia ohjelmoinnin kursseja. Kursseilla omaksut mm. ohjelmoinnin peruskonsepteja sekä Python-ohjelmointikielen.

Huom! Joillekin kursseille voi ilmoittautua rajoitettu määrä FITech-opiskelijoita. Näille kursseille etusijalla ovat ne henkilöt, joilla ei ole voimassaolevaa opinto-oikeutta suomalaiseen yliopistoon.

Perustason ohjelmoinnin kurssit:

= Contact learning
= Online learning
= Blended learning (online & contact learning)
University of Oulu: Ohjelmoinnin alkeet (521141P), 5 ECTS. Continuously ongoing.

The course is organised in Finnish!

The course covers basic concepts of programming and Python as a programming language.

Numerous open source libraries are available in Python that can be utilised in real life solutions, including wide range of machine learning and computer vision applications.

More information: https://lovelace.oulu.fi

Responsible teacher: Mika Oja (mika.oja(at)oulu.fi)

LUT University: Ohjelmoinnin perusteet, 6 ECTS. 2.9.–13.12.2019.

Maksimimäärä FITech-opiskelijoita: 30

Ei esitietovaatimuksia.

Opintojaksolla opitaan ohjelmoinnin perusteet Python-kielellä. Kurssin harjoitustyössä käsitellään tietoa ja muokataan sitä helpommin ymmärrettävään muotoon. Kurssin voi suorittaa etä-/itseopiskeluna, mutta tentti tehdään LUT:n sähköisessä tenttiluokassa EXAMissa.

Ohjelmoinnin perustiedot ja -taidot auttavat ymmärtämään ja tekemään muita ohjelmointiin, ohjelmistotuotantoon ja ohjelmistoprojekteihin liittyviä asioita. Käytännössä Python sopii erittäin hyvin esim. tekstitiedostojen käsittelyyn ennen visulisointia taulukkolaskennan diagrammeilla.

Kurssilla tulevat tutuiksi myös muut ohjelmoinnin perukäsitteet kuten funktiot, joita käytetään monissa muissa tietojenkäsittelyn automatisointiin liittyvissä tehtävissä.

Vastuuopettaja: Uolevi Nikula (uolevi.nikula(at)lut.fi)

LUT University: Käyttöjärjestelmät ja systeemiohjelmointi (CT30A3370), 6 ECTS. 2.9.–13.12.2019.

Maksimimäärä FITech-opiskelijoita: 20

Esitietovaatimukset: Ohjelmoinnin perusteet, C-ohjelmointi, tietorakenteet ja algoritmit.

Kurssisisältö:

  • Käyttöjärjestelmän perusrakenteet ja -toiminnot: tiedostojärjestelmä, prosessit, prosessien ajoitus ja hallinta,  muistinhallinta, oheislaitteet
  • Unix-järjestelmän rakenne
  • C-ohjelmointikieli ja sen ohjelmointiympäristö ja työkalut Unix-järjestelmässä
  • Unixin komentotulkkiohjelmointi
  • Standardi I/O-kirjasto, kehittyneet I/O-toiminnot
  • Järjestelmätiedot ja -tiedostot
  • Prosessit, prosessien hallinta, prosessien väliset suhteet
  • Säikeet ja niiden hallinta
  • Palveluprosessit
  • Prosessienvälinen kommunikointi
  • Signaalit ja niiden hallinta

Opintojakson suoritettuaan

  • opiskelija ymmärtää, kuinka käyttöjärjestelmä rakentuu, miten se keskeiset toiminnot on toteutettuja miten se toimii yhdessä sovellusohjelmien kanssa.
  • opiskelija osaa jakaa monimutkaiset ongelmat pienempiin kokonaisuuksiin ja tietää, miten käyttöjärjestelmän kokoinen iso ohjelmistoprojekti suunnitellaan ja toteutetaan.
  • opiskelijalla on kokonaiskuva tietokonejärjestelmän rakenteesta ja sen liittymäkohdista algoritmiikkaan, tietokonearkkitehtuuriin, käyttöjärjestelmiin, kääntäjiin ja tulkkeihin sekä ohjelmistotuotantoon.
  • opiskelija ymmärtää systeemiohjelmoinnin merkityksen sovelluskehityksessä ja järjestelmän ylläpidossa.
  • opiskelija tuntee käyttöjärjestelmän perustoiminnot.
  • opiskelija osaa kirjoittaa Posix-ohjelmia käyttäen C-kieltä sekä osaa soveltaa Posix-kirjastoja ja järjestelmätason funktioita ohjelmissaan.
  • opiskelija osaa ohjelmoida Unix-järjestelmän komentosarjoja.

Vastuuopettaja: Jussi Kasurinen (jussi.kasurinen(at)lut.fi)

Aalto University: Ohjelmoinnin peruskurssi Y1 (CS-A1111), 5 ECTS. 9.9.–13.12.2019.

Kurssilla suoritetaan Python-kielellä perinteisiä koodaustehtäviä, joissa kirjoitetaan lyhyitä ohjelmia annettujen ohjeiden mukaisesti.

Kurssin pakollisia osasuorituksia ovat harjoitustehtävät sekä kurssin päätteeksi järjestettävä tentti. Harjoitustehtävien tekemiseen on saatavissa tukea yhteisissä tilaisuuksissa, joihin osallistuminen on vapaaehtoista.

Lisätietoja toteutuksesta tulossa pian.

Vastuuopettaja: Sanna Suoranta (sanna.suoranta(at)aalto.fi)

LUT University: Basic electronics A (BL50A0010), 5 ECTS. 28.10.2019–21.2.2020.

The course is organised in Finnish!

Course content:

  • analog and digital signals
  • resistors, capacitors and inductors
  • filtering
  • amplification
  • semiconductors
  • diodes and transistors
  • digital logic gates
  • introduction to electronics manufacturing technology
  • mini project with Arduino development board

Upon completion of the course you will be able to:

  1. recognise the most important passive and active components in electronics and list their applications
  2. explain the main differences between analog and digital electronics
  3. define concepts of amplification on filtering
  4. explain the operation and simplified physical structure of an ideal semiconductor diode
  5. describe the operation and main applications of a transistor
  6. describe the operation principle of digital logic gate and list common logic functions
  7. recognise the main phases and materials of manufacturing an electrical apparatus
  8. apply Ohm’s law, Kirchhoff’s voltage and current laws and definition of electrical power to a simple electrical circuit
  9. recognise the main components of an embedded system.

Responsible teacher: Mikko Kuisma (mikko.kuisma(at)lut.fi)

More info >>

LUT University: Digital control, an introduction (BL40A0501), 7.1.–17.4.2020.

This course is organised in Finnish!

Prerequisites: Basics of control systems and knowledge in digital signal processing.

The course focuses on basics of sampling theory and discrete modelling, discrete transfer function, continuous time and discrete state model. Moreover, basics of state equation techniques are introduced. Course covers also the methods of analysis of digital control circuits, discrete frequency response and stability of a discrete system. You will learn about basic digital control algorithms and their tuning and get to know the practical aspects of implementing a digital controller.

Upon completion of the course you will be able to:

  1. write the state equations of the system and use them to analyse the behaviour of the system
  2. discretise the state model and the transfer function model and explain the pole mapping from continuous to discrete plane
  3. analyse the properties of the discrete system and examine its stability and behavior using Bode diagram, Nyquist diagram or root locus
  4. design a continuous time controller that meets the given specifications and discretise it by using an appropriate approximation
  5. discretise the given specifications and design directly a discrete controller
  6. program a digital controller and system model.

Responsible teacher: Tuomo Lindh (tuomo.lindh(atlut.fi)

More info >>

Further information

University of Oulu

Riku Niemi (riku.niemi(at)oulu.fi)

Aalto University

Sanna Suoranta (sanna.suoranta(at)aalto.fi)

LUT University

Uolevi Nikula (uolevi.nikula(at)lut.fi)

Type of study unit

Set of courses

Teaching semester

2019–2020

Host university

Aalto University, LUT University, University of Oulu

Open for degree student

Yes

Open for non-student

Yes

Level of studies

Basic

Teaching methods

Online and blended learning

Place of contact learning

Espoo

Language

Finnish

Go back to all Courses & Programs

Go back