Tervetuloa Haaga-Helian ohjelmointi 1 -opintojaksolle! Tämä GitHub-repositorio toimii toteutuksen tietovarastona.
Kurssin lähiopetus järjestetään maanantaisin ja keskiviikkoisin klo 8:00-10:45 Teamsissa.
PVM | Aiheet ja linkit | |
---|---|---|
Ma | 18.1. |
Kurssin järjestelyt ja osallistumisen vahvistaminen Eclipse-sovelluskehitin Perustietotyypit 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Teams / monimuoto): JavaEclipse.pdf, Perusteita.pdf, Viope.pdf |
Ke | 20.1. |
Ehtolauseet 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Teams / monimuoto): Scanner.pdf, Valintarakenne.pdf |
Ma |
Toistorakenteet 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Teams / monimuoto): Toistorakenne.pdf |
|
Ke |
Merkkijonot 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Säännölliset lausekkeet (regex) Lisämateriaali (Teams / monimuoto): Merkkijonot.pdf |
|
Ma |
Listat 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Ohjelmoinnin MOOC): Listamuuttujan käyttö useamman arvon tallentamiseen |
|
Ke |
Taulukot 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Java Visualizer -työkalu Lisämateriaali (Teams / monimuoto): Taulukot.pdf |
|
Ma |
Staattiset luokkametodit, parametrit ja paluuarvot 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Teams / monimuoto): Metodit.pdf |
|
Ke |
Ajan käsitteleminen Javassa Ohjelman paketointi ja suorittaminen Eclipsen ulkopuolella Komentoriviparametrit 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Java API: LocalDate Lisämateriaali (Teams / monimuoto): Paivamaara.pdf |
|
Ma | ||
Ke | ||
Ma |
Olio-ohjelmoinnin alkeet Käsitteet luokka ja olio Oliometodit ja -muuttujat 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) Lisämateriaali (Teams / monimuoto): Luokka.pdf |
|
Ke |
Olio-ohjelmointi jatkuu: Luokkien yhteyssuhteet Olioita listoilla ja listoja olioissa 📝 Esimerkin speksi (TH) 📁 Esimerkkikoodit (AddressBook, TH) Lisämateriaali (Teams / monimuoto): Yhteyssuhde.pdf ListaLuokalla.pdf |
|
Ma |
Olioiden vertailu ja järjestäminen 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) |
|
Ke |
Poikkeukset 📝 Muistiinpanot 📁 Esimerkkikoodit (TH) 📁 Esimerkkikoodit (AddressBook, TH) Lisämateriaali (Teams / monimuoto): Poikkeus.pdf |
|
Ma |
Tekstitiedostojen lukeminen ja tallentaminen 📝 Muistiinpanot 📁 Weather data -esimerkki (TH) 📁 saatiedot.csv (© Ilmatieteen laitos) 📁 Muut esimerkkikoodit (TH) |
|
Ke |
Ryhmäkohtaiset pikkuprojektit:
|
|
Ma |
Kokeeseen kertaus ja harjoituskoe Harjoituskoe löytyy Viopesta. Harjoituskokeesta ei saa pisteitä eikä bonuspisteitä ja sen tekeminen on täysin vapaaehtoista. |
|
Ke | 17.3. | Koe
|
Tunneilla opetellaan ohjelmoinnin perusteita sekä hyviä ohjelmointikäytäntöjä ja käydään läpi esimerkkejä. Lisäksi opiskelijat ohjelmoivat tuntitehtäviä ja saavat niihin ohjausta. Kurssin suorittamiseksi sinun tulee palauttaa hyväksytysti automaattisesti arvioitavia harjoitustehtäviä Viope-järjestelmään sekä suorittaa kurssin lopuksi järjestettävä laitekoe.
"The biggest mistake I see new programmers make is focusing on learning syntax instead of learning how to solve problems."
1. Think like a computer
- Opimme ymmärtämään "miten tietokone" toimii ja mitkä ovat Javan peruspilarit
- Osaamme tuottaa tietokoneen näkökulmasta järkeviä ratkaisuja
2. Think like a programmer
- Opimme soveltamaan oppimaamme ja tuottamaan myös ihmisen näkökulmasta järkeviä ratkaisuja
- Ymmärrettävyys, jatkokehitettävyys, ylläpidettävyys, testattavuus
3. Work like a programmer
- Opimme hyödyntämään ammattimaisen ohjelmistokehittäjien työkaluja kuten versionhallintaa ja yksikkötestausta (näistä lisää Ohjelmointi 2:lla)
-
Automaattisesti arvioitavat Viope-tehtävät (50% loppuarvosanasta)
Tehtäviä saa tehdä pareittain, mutta molempien on osallistuttava aktiivisesti työskentelyyn ja palautettava ratkaisu Viopeen
Vähintään 40% tehtävistä on oltava tehty kurssikokeeseen mennessä Arvostellaan asteikolla 0-5 (40% - 100% tehtävistä)
-
Kurssikoe (50% loppuarvosanasta) Arvostellaan asteikolla 0-5
Java ja Eclipse IDE
Tarvitset Java-ohjelmien kehittämiseksi ja suorittamiseksi Java JDK:n (vähintään versio 8). Lähdekooditiedostojen editointiin ja ohjelmien suorittamiseen käytämme tällä kurssilla Eclipse-kehitysympäristöä, jonka voit ladata itsellesi täältä. Ole tarkkana ja valitse Eclipse IDE for Java EE Developers, kun asennusohjelma kysyy asennuksen tyyppiä.
Saat käyttää myös muita työkaluja, mutta niihin ei voida tarjota käyttötukea.
Viope
Harjoitustehtävien automaattinen arviointi, rekisteröidy Viopeen osoitteessa: https://vw4.viope.com/login?org=hh. Huomaa että rekisteröitymisosoitteessa on oltava parametri ?org=hh
jotta pääset käsiksi Haaga-Helian kurssitarjontaan.
Tyypillisiä Viope-virhetilanteita ja niiden ratkaisuja on dokumentoitu tänne.
Teams
Tällä kurssilla käytetään pääasiassa Microsoftin Teams -palvelua. Teams on osoittautunut oivalliseksi tueksi itseopiskelussa ja se tarjoaa luontevamman kanavan kysyä ja keskustella kuin esimerkiksi Moodle. Jos jäät jumiin koodisi kanssa tai et ymmärrä materiaaleja tai tehtävänantoja, kysy rohkeasti vinkkejä Teamsissa. Todennäköisesti samaa ongelmaa pohtii kanssasi myös moni muu, joten lähetäthän sisältöä ja tehtävänantoja koskevat kysymykset yhteiselle kanavalle (eikä yksityisviestinä opettajalle).
Teamsissa voi myös esittää toivomuksia kurssin kehittämiseksi jo kurssin aikana niin yksityisviesteinä opettajalle kuin yhteisillä kanavilla. Tämä kurssi ei ole suinkaan valmis, vaan sitä kehitetään kurssin etenemisen mukaan.
Teams on saatavilla puhelimien sovelluskaupoista sekä työpöytäsovelluksena, tai voit käyttää sitä selaimen web-käyttöliittymässä ilman asennuksia. Kirjautuminen Teamsiin tapahtuu Haaga-Helian myy.haaga-helia.fi
-tunnuksella.
- Teams Quick Start -ohje (pdf)
- Web-käyttöliittymä: https://teams.microsoft.com/
- Lataussivu: https://teams.microsoft.com/downloads
GitHub
Kurssin tehtäväpohjien ja malliratkaisujen jakelussa hyödynnetään ohjelmistokehityksen alalla erittäin vakiintunutta Git-versionhallintaa ja GitHub-palvelua. Voit kloonata itsellesi kurssin projektin osoitteesta https://github.com/haagahelia/swd4tn032-TH_JJ. Kurssin edetessä projektiin lisätään uusia tiedostoja, jotka voit päivittää itsellesi Git:in avulla.
Gitin käytön opetteluun voit käyttää esimerkiksi Helsingin yliopiston erinomaista "Tietokone Työvälineenä"-kurssin Git-materiaalia: https://tkt-lapio.github.io/git/. Vaikka Git tuntuisi aluksi vaikealta tai ahdistavalta, sinun ei tarvitse opetella kaikkea kerralla, vaan tee vain sen verran mistä on sinulle välitöntä hyötyä.