Siirry suoraan sisältöön

Ohjelmoinnin perusteet (3 op)

Toteutuksen tunnus: 5S00DX90-3018

Toteutuksen perustiedot


Ilmoittautumisaika

02.07.2025 - 31.07.2025

Ajoitus

01.08.2025 - 31.12.2025

Laajuus

3 op

Toteutustapa

Lähiopetus

Yksikkö

Sähkö- ja automaatiotekniikka

Toimipiste

TAMK Pääkampus

Opetuskielet

  • Suomi

Paikat

0 - 40

Koulutus

  • Sähkö- ja automaatiotekniikan tutkinto-ohjelma

Opettaja

  • Jussi Pohjolainen

Vastuuhenkilö

Jarkko Lehtonen

Ryhmät

  • 24AI231
    Sähkö- ja automaatiotekniikka, monimuotototeutus

Tavoitteet (OJ)

Opiskelija tuntee
- ohjelmoinnin idean ja tarkoituksen
- tavan tuottaa ohjelmia

Opiskelija osaa
- ohjelmoinnin peruskäsitteitä ja -taitoja
- ratkoa pieniä ohjelmointiongelmia C/C++ -ohjelmointikielellä

Sisältö (OJ)

Yleiskuva ohjelmistoprojektin kulusta, ohjelmoinnin peruskäsitteet ja vaiheet. Ohjelmoinnin perusrakenteet: kontrollirakenteet, muuttujat, vakiot, algoritmien muodostaminen, aliohjelmat ja parametrinvälitysmekanismit.

Arviointikriteerit, tyydyttävä (1-2) (OJ)

Opiskelija tuntee sisällössä kuvatut ohjelmoinnin peruskäsitteet sekä osaa ratkoa pieniä ohjelmointiongelmia koodiesimerkkien ja malliratkaisujen pohjalta. Opiskelija ottaa vastuun omasta suoriutumisestaan.

Arviointikriteerit, hyvä (3-4) (OJ)

Opiskelija ymmärtää sisällössä kuvatut ohjelmoinnin peruskäsitteet sekä osaa näitä hyödyntäen perustellusti ratkoa käytännön pieniä ohjelmointiongelmia. Opiskelija suoriutuu annetuista tehtävistä itsenäisesti ja ottaa vastuuta myös ryhmän suoriutumisesta.

Arviointikriteerit, kiitettävä (5) (OJ)

Opiskelija sisäistää sisällössä kuvatut ohjelmoinnin peruskäsitteet, ja osaa ratkoa luovasti ja monipuolisesti käytännön pieniä ohjelmointiongelmia hyviä ohjelmointirakenteita käyttäen. Opiskelija on oma-aloitteinen ja ottaa sitoutuneesti vastuuta omasta ja ryhmän suoriutumisesta.

Aika ja paikka

Ks. kalenteri

Tenttien ja uusintatenttien ajankohdat

Tentit pidetään viikoilla 48 - 52. Tentti suoritetaan exam.tuni.fi - palvelussa, josta opiskelija voi varata itselleen sopivan ajankohdan kyseiseltä ajanjaksolta.

Arviointimenetelmät ja arvioinnin perusteet

YLEISKUVAUS

Opintojakso sisältää

1️⃣ Tentti
2️⃣ Harjoitukset

Opintojakson läpäisemiseksi opiskelijan tulee suorittaa vähintään 40 % harjoituksista, mikä itsessään antaa arvosanan 1.

Tentti tarjoaa mahdollisuuden nostaa arvosanaa asteikolla 1 - 5.

• Harjoitukset: Jos opiskelija suorittaa vähintään 40 % harjoituksista, hän saa tästä automaattisesti arvion 1
• Vapaavalinnainen tentti: Arvioidaan 1 - 5 ja muodostaa opintojakson kokonaisarvion.

⚠️ Mikäli opiskelija ei ole suorittanut vaadittua määrää harjoituksia, niin tenttiin on osallistuttava ja se on läpäistävä. Opiskelija voi siis osallistua suoraan tenttiin tekemättä harjoituksia tai jos opiskelija ei saa tarvittavaa harjoitusmäärää tehtyä.

1️⃣ TENTTI

• Alusta: Tentti suoritetaan exam.tuni.fi-palvelussa syyskauden lopussa.
• Materiaalit: Tentissä sinulla on täysi pääsy Java-kirjaan (PDF) lisämateriaalina.
• Työkalut tentissä: Visual Studio Code (VS Code), Java-kääntäjä
• Internet-yhteys: Tentissä ei ole käytettävissä internet-yhteyttä.
• Aika: 2 tuntia 55 minuuttia tai jos sinulla on terveydellisiä syitä, 3 tuntia 55 minuuttia.
• Kaikki tentit, mukaan lukien uusintatentit ovat suoritettava ajanjaksolla: viikko 48 (2025) - viikko 51 (2025). Jätä opettajalle viikko aikaa tenttisi tarkistamiseen.
• Jos et läpäise, voit suorittaa hylätyn tentin kahdesti uudelleen.
• Jos läpäiset, voit yrittää parantaa arvosanaasi kerran.

Lisäpistejärjestelmä:

• Lisäpisteitä myönnetään sen perusteella, kuinka suuren osuuden harjoituksista olet suorittanut ennen tenttiä. Näitä pisteitä myönnetään vain, jos osallistut lähiopetukseen.

• Harjoitusten suoritusprosentti [70%, 80%[: +1 piste
• Harjoitusten suoritusprosentti [80%, 90%[: +2 pistettä
• Harjoitusten suoritusprosentti [90%, 100%]: +3 pistettä

Tentin pisteytys:

• Arvosana 1 edellyttää vähintään 9,6 pistettä (40 %).
• Arvosana 2 edellyttää vähintään 14,4 pistettä (60 %).
• Arvosana 3 edellyttää vähintään 16,8 pistettä (70 %).
• Arvosana 4 edellyttää vähintään 19,2 pistettä (80 %).
• Arvosana 5 edellyttää vähintään 21,6 pistettä (90 %).

Tentin maksimipistemäärä on 24 pistettä.

⚠️ Lisäpisteet eivät vaikuta tentin läpäisyyn, joten tentistä on saatava vähintään 9,6 pistettä. Sen jälkeen lisäpisteet lisätään saatuun pistemäärään.

2️⃣ HARJOITUKSET

1. Läsnäolo ja täsmällisyys

✅ Varmista, että saavut lähiopetukseen ajoissa.
✅ Lähiopetuksen ensimmäisten 15 minuutin aikana (esim. 12.15–12.30 tai 8.45–9.00):
• Kirjaa fyysinen läsnäolosi annettuun Google Sheets -taulukkoon
• Merkitse myös harjoituksesi Google Sheets -taulukkoon
• Laita ratkaisusi GitHub repoon, mikäli et ole vielä tehnyt niin
⚠️ Google Sheets lukitaan 15 minuutin jälkeen (12:30 tai 9:00) ja koodikatselmointi alkaa. Myöhästyneet eivät voi merkitä läsnäoloaan, eivätkä he saa pisteitä. Opettaja saattaa satunnaisesti valita opiskelijoita keskustelemaan ratkaisuistaan ja tämä satunnaisvalinta tehdään niiden opiskelijoiden kesken jotka ovat ajoissa paikalla ja itsensä Google Sheetsiin merkinneet.
⚠️ Huomautus: Merkitse itsesi läsnäolevaksi vain, jos olet fyysisesti paikalla. Jos merkintä tehdään etänä vaikka ei olla paikalla, tämä tulkitaan vilpilliseksi toiminnaksi.

2. Ratkaisujen esittely / Koodikatselmointi

✅ Valmistaudu esittelemään ja selittämään ratkaisusi luokalle.
⚠️ Jos opiskelija ei pysty selittämään koodinsa toimintaa, se viittaa siihen, ettei hän ole itse tuottanut sitä tai ymmärtänyt sen toimintaperiaatteita. Tämä voidaan tulkita vilpilliseksi toiminnaksi.

3. Työn aitous

✅ Kaikkien harjoitusten tulee olla omaa alkuperäistä työtäsi.
⚠️ Voit pyytää apua muilta opiskelijoilta tai tekoälyltä, mutta kopiointi ja liittäminen ovat ehdottomasti kiellettyjä.
⚠️ TAMK edellyttää opiskelijoiden käyttävän tekoälypohjaisia sovelluksia vastuullisesti ja eettisesti opinnoissaan. Esimerkiksi mainitse palautetussa tehtävässä tekoälyn käytöstä ja kuvaa, miten sitä on käytetty. Vilpillistä on esimerkiksi esittää tekoälyn tuottama teksti, kuva tai muu tuotos omanaan ( https://intra.tuni.fi/opetus/opintohallinnon-kaytannot/opiskelun-etiikka-1/tekoalysovellusten-kaytto )
⚠️ Opettaja voi käyttää plagioinnin tunnistusohjelmaa. Havaitut plagioidut harjoitukset voidaan katsoa vilpilliseksi toiminnaksi.
ℹ️ Suositus: älä käytä tekoälyä. Kun perusteet ovat opittu, tekoäly on tämän jälkeen oiva väline koodin generoimiseen. Ohjelmoinnin alkeiden opiskelussa tekoäly saattaa auttaa "liikaa" ja tuottaa liian valmiita vastauksia.

4. Poissaolot

ℹ️ Jos sinulla on hyväksyttävä syy (esim. lääkärikäynti) jättää lähiopetus väliin, ilmoita siitä opettajalle ennen lähiopetuksen alkua sähköpostitse. Tämä mahdollistaa harjoituksen palauttamisen etänä.
ℹ️ Jos myöhästyt lähiopetuksesta odottamattoman ja hyväksyttävän syyn vuoksi (esim. rengasrikko tai muu yllättävä este), ilmoita asiasta välittömästi, kun tilanne on tiedossa. Tämä voi mahdollistaa harjoituksen palauttamisen etänä.
⚠️ Lähiopetuksen jälkeen tehtyjä ilmoituksia ei pääsääntöisesti hyväksytä.
⚠️ Lomamatkat ja vastaavat henkilökohtaiset menot eivät ole hyväksyttäviä syitä poissaoloon. Lähiopetukseen tulee suhtautua samalla vakavuudella kuin työssäkäyntiin – poissaolot ovat sallittuja ainoastaan perustelluista ja painavista syistä.

Arviointiasteikko

0-5

Opiskelumuodot ja opetusmenetelmät

Opintojakson opetuksessa yhdistyvät luennot, kotiharjoitukset ja tentti. Luennoilla käsitellään ohjelmoinnin keskeisiä käsitteitä ja periaatteita esimerkkien avulla. Viikoittaisissa kotiharjoituksissa opiskelijat tekevät ohjelmointitehtäviä ja harjoittelevat koodikatselmointia vertaisarvioinnin periaatteiden mukaisesti. Koodikatselmointi tukee laadukkaan ja luettavan koodin tuottamista sekä parantaa ongelmanratkaisutaitoja. Kurssi päättyy ohjelmointitenttiin, joka mittaa keskeisten periaatteiden ja käytäntöjen ymmärtämistä.

Oppimateriaalit

Huom - ohjelmointikielenä opintojaksolla tullaan käyttämään Javaa.

Pääasiallisena oppimateriaalina käytetään luennoilla ja harjoituksissa jaettavia materiaaleja sekä Oraclen virallista Java-dokumentaatiota (https://docs.oracle.com/en/java/). Kirjallisuudeksi käy mikä tahansa Java - kieleen keskittyvä kirja.

Opiskelijan ajankäyttö ja kuormitus

Opintojakso vaatii opiskelijalta keskimäärin 81 tunnin työpanoksen (3 op).

Sisällön jaksotus

Kerta 1 – 2025-10-24, 08:15–11:00
Kurssin aloitus – opetusympäristön ja käytettävien työkalujen esittely. Johdatus ohjelmoinnin perusteisiin ja Java-ohjelmointikieleen.

Kerta 2 – 2025-11-07, 08:15–11:00
Muuttujat, tietotyypit ja operaattorit. Peruslauseet ja laskutoimitukset. Harjoitusten avulla sovelletaan opittuja peruskäsitteitä.

Kerta 3 – 2025-11-14, 08:15–11:00
Kontrollirakenteet: ehtolauseet (if, switch) ja silmukat (for, while, do-while). Käytännön esimerkkejä ja harjoituksia.

Kerta 4 – 2025-11-28, 08:15–11:00
Taulukot ja metodit – keskeiset peruskäsitteet.

Kerta 5 – 2025-12-12, 08:15–11:00
Viimeinen koodikatselmus. Metodeista ja tentistä.

Toteutuksen valinnaiset suoritustavat

Ei valinnaisia suoritustapoja.

Harjoittelu- ja työelämäyhteistyö

Tämä opintojakso on suunniteltu ohjelmoinnin perusteiden opetteluun, eikä se sisällä varsinaista työharjoittelua tai suoraa yhteistyötä työelämän kanssa. Kurssin sisältö kuitenkin heijastaa alan nykyvaatimuksia. Luennoissa ja kotiharjoituksissa keskitytään käytännönläheisiin ohjelmointitehtäviin, jotka kehittävät opiskelijoiden ongelmanratkaisutaitoja ja tarjoavat valmiuksia jatkokoulutukseen sekä työelämän haasteisiin. Opetuksessa painotetaan alan parhaita käytäntöjä ja työelämässä käytössä olevia ohjelmointikonsepteja, mikä tukee opiskelijoiden sujuvaa siirtymistä työelämään.

Kansainvälisyys

Tällä opintojaksolla ei ole käytössä erityisiä kansainvälisiä yhteistyökuvioita tai ulkomaan harjoittelumahdollisuuksia. Kurssin sisältö perustuu kuitenkin kansainvälisesti tunnustettuihin ohjelmointikäytäntöihin ja -standardeihin, mikä valmentaa opiskelijoita työympäristön vaatimuksiin. Opiskelijoita kannustetaan myös hyödyntämään kansainvälisiä resursseja ja verkostoja oman osaamisensa laajentamiseksi.

Lisätietoja opiskelijoille

Opiskelijoilta edellytetään tietokoneen peruskäytön osaamista. Komentorivin osaamista on myös hyötyä, esim: https://courses.mooc.fi/org/uh-cs/courses/tietokone-tyovalineena