TIMin käytöstä:
- Punaiset palkit: Sivun oikeassa reunassa on punaisia palkkeja niissä kohti, joita et ole vielä lukenut. Ne auttavat sinua näkemään lukemattomat kohdat, jos pompit tekstiä eteenpäin. Klikkaa punainen pois sitä mukaa kun olet lukenut. Jos et voi sietää punaisia, on vasemmalla ylhäällä ratas, jonka takaa voi klikata kaikki kerralla luetuksi.
- Keltaiset palkit: Mikäli kappale muuttuu sen jälkeen kun olet sen lukenut, näkyy se keltaisena ja siinä on painike, jolla voit tarkistaa mitä on muuttunut.
- Kommentti: Jos jokin asia on epäselvä, on oikeassa reunassa C-merkki, josta voit lisätä kommentin. Joku kurssin ohjaajista vastaa kommenttiin. Lue vastaus siitä. Yläreunan Manage-kohdan alta voit tilata kustakin dokumentista postia sen mukaan jos dokumenttiin tulee muutoksia tai kommentteja.
Ohjelmointi 1 (C#, Jypeli), syksy 2019

- Kurssi Sisussa
- Kurssin työmäärä keskimääräiselle opiskelijalle:
- 6 op = n. 14.5 tuntia/vko!
- kurssiin voi liittää kaksi lisäkurssia asiaa laajentavilla harjoitustöillä (yht max 5 p)
- In English: Course synopsis (short description of contents and objectives)
Kurssin lopussa opiskelijan odotetaan osaavan:
- selittää rakenteisen ohjelmoinnin perusperiaatteet
- löytää yksinkertaiseen ongelmanratkaisuun sopivat algoritmit, tietotyypit ja tietorakenteet
- suunnitella ja toteuttaa pienimuotoisen ohjelman käyttäen C#-ohjelmointikieltä ja siihen tarkoitettuja työkaluja
Kurssin aikana sinun on tarkoitus oppia seuraavia asioita (osaamisen taso sovelletulla Bloomin asteikolla: 1=muistaa, 2=ymmärtää, 3=osaa soveltaa, 4=osaa analysoida, 5=osaa arvioida, 6=osaa luoda)
Siirrä alla osaamisesi (punainen pallukka) aina sitä vastaavalle kohdalle. Keltainen ruutu on tavoite johon tulisi päästä kurssin lopuksi. Ruksaa ensin muokkaa.
Please
Osattava asia | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Rakenteisen ohjelmoinnin perusajatus | o | |||||
Algoritminen ajattelu | o | |||||
C#-kielen perusteet | o | |||||
Peräkkäisyys | o | |||||
Muuttujat | o | |||||
Aliohjelmat ja funktiot | o | |||||
Parametrin välitys | o | |||||
Ehtolauseet | o | |||||
Silmukat | o | |||||
Taulukot | o | |||||
Tiedostot ohjelmasta käytettynä | o | |||||
Olioiden käyttö | o | |||||
Yksikkötestit (TDD) | o | |||||
Debuggerin käyttö | o | |||||
Lukujärjestelmät, ASCII-koodi | o | |||||
Rekursio | o | |||||
Dokumentointi ja sen lukeminen | o |
1. Miten aloitan
- Ilmoittaudu Sisussa kurssille, ryhmiin ei tarvitse ilmoittautua Sisussa, sillä ei ole kurssin kannalta merkitystä. Ryhmiin ilmoittaudutaan Korpissa.
- ilmoittaudu sen molempiin luentoryhmiin Luento 1 ja Luento 2, jos et tee etänä
- demoryhmistä valitset yhden
- pääteohjausryhmistä 1-n kpl sen mukaan paljonko tunnet tarvitsevasi apua (yleensä 1 tai 2 viikossa)
- PP-ryhmä (= Pahasti Pihalla) älä vielä valitse, koska et voi tietää miten edistyt kurssilla. Itsestään epävarmatkin pärjäävät kun rupeavat kovasti töihin!
- vastaa esitietokyselyyn
- tee esi-demotehtävät. Erityisesti Robotti on extrahyödyllinen.
- lataa kurssin työkalut
- Lähde heti alusta sillä asenteella, että opettelet ymmärtämään, et oppimaan ulkoa satunnaisia komentoja.
2. Mitä teen kun kurssi alkaa
Seuraava koskee sekä lähi- että etäopiskelijoita:
- Osallistu tai katso 1. viikon luennot: luento 1 ja luento 2
- Lue Luentomonisteesta vähintään luennoissa mainitut kohdat ja merkitse niitä luetuksi klikailemalla punaisia pois.
- Tee 1. viikon pääteohjaukset
- Tee 1. viikon demotehtävät ma klo 11:00 mennessä!
- Osallistu tai katso 1. viikon demojen palautukset
- Korjaa omat tehtäväsi niin, että Tauno ja T1-T6 tuottavat vähintään 7p.
- Jatka kohdasta 1. seuraavan viikon tiedoilla.
- Tee harjoitustyötä muiden vaiheiden ohella sopivasti.

Kurssin tärkeät päivämäärät
(*) Periaattessa HT pitäisi olla valmis pe 29.11, mutta koska ohjausvoimat ovat rajallisia, joudumme venyttämään sen näyttöä/tarkastusta pidemmälle joulukuulle.
UUSINTATENTIT
Ensimmäinen uusintatentti informaatioteknologian tiedekunnan yleisenä tenttipäivänä 24.1.2020.
Ilmoittaudu tästä
Toinen uusintatentti informaatioteknologian tiedekunnan yleisenä tenttipäivänä 21.2.2020.
Ilmoittaudu tästä
Uusintatentti järjestetään konetenttinä, alakerran mikroluokissa. Kokoontuminen ennen tenttiä B-siiven ala-aulassa mikroluokkien läheisyydessä.
3. Ajankohtaista
- jos ette halua tehdä peliä, katsokaa miten tehdään ei-peli
- Kurssilla käytettävät työkalut
- Luentomoniste (TIM, käytä tätä ensisijaisesti) (PDF ).
- Harjoitustyöt
- kurssin lisäosat
Jos jotakin ei löydy, katso lisämateriaali.
- TortoiseSVN:n kanssa käytettävä osoite:
https://svn.cc.jyu.fi/srv/svn/ohj1-pelit/2019s/oma_kayttajatunnus/
- SVN:ssä olevien tiedostojen selailu suoraan selaimella:
- https://trac.cc.jyu.fi/projects/ohj1-pelit/browser/2019s
- aloita heti lunttilapun kirjoittaminen
VAROITUS: TIMillä on aika helppo työskennellä, mutta siitä huolimatta tehtäviä on opeteltava tekemään myös oikeilla työkaluilla (mm. Visual Studio tai MonoDevelop)! Erityisesti debuggeria on osattava käyttää heti alusta alkaen.
4. Kurssin suorittamisesta
Sisältö: C#-kielen alkeet, rakenteisen ohjelmoinnin perusteet. Kurssin työmäärä 14.5 t/viikko
Kurssin arvolause tulee summasta demohyvitykset + tentin pisteet + HT bonukset. Tentin max pisteet ovat 24. Arvolause 5: summa 26,..., 1: summa 12. Katso myös tentti.
Normaali tapa suorittaa:
- Suoritustapa: riittävä määrä demotehtäviä (joillakin kursseilla näiden nimi on viikkotehtävät), harjoitustyö aikataulussa, debuggausnäyte (viim. 25.10.2019) ja tentti (ma 2.12.2019, Ag mikroluokat) (jos ei erikseen opiskelijan kanssa muuta sovita suoritustavoista)
- Kontaktiopetus: luennot, pääteohjaukset (joissakin kohti nimellä ohjaukset) ja demojen palautukset sekä harjoitustöiden ohjaukset
- PP-ryhmä: tämä on myöhemmin kurssilla niille, jotka tuntevat jääneensä muista jälkeen. Kurssin alussa ei kannata lähteä sillä asenteella että näitä tarvitsee, koska jokainen joka lähtee tekemään kunnolla hommia, pärjää normaaleilla ohjauksilla.
- Luennoija ja tentaattori: Vesa Lappalainen (vesal@jyu.fi).
- Tuntiopettajat. Varaa tapaamisaika Korpissa. Ohjeita ajan varaamiseen.
Tuntiopettajat tavattavissa varaamanasi aikana 4. kerroksen OHTE-solun avotilassa (Ag C417.1). - Sähköpostilistat
- Ei liitteitä Vesalle! Tallenna tarvittava "liite" jonnekin (esim Oppimappiin) ja laita linkki siihen!
- Tiedotuslista: ohj1s19@korppi.jyu.fi. Arkisto, vain Vesa voi lähettää
- Kaikki kurssilaiset ja opettajat: ohj1s19k.group@korppi.jyu.fi. Arkisto, kurssilaiset voivat lähettää
- Ohjaajat: ohj1s19c.group@korppi.jyu.fi, opiskelijat voivat lähettää tänne postia
- Muista sähköpostinetiketti
- Kurssin keskustelufoorumi
- lue myös sivu kurssin opiskelusta
Takaportti mikäli tenttiä ei läpäisty:
- mikäli ei läpäise kurssin tenttiä (tai ei osallistu siihen, tähän tarvitsee luvan ohjaajilta), voi kurssilta silti saada arvolauseen 1/5 edellyttäen että KAIKKI seuraavat ehdot täyttyvät:
- demoista on tehty vähintään 5 pistettä/kerta joista joka kerralla vähintään kaksi merkityistä tähtitehtävistä
- debuggausnäyte hyväksytty
- harjoitustyö on melkein valmis ja ohjaajien suullisessa kuulustelussa hyväksymä, esitelty muille
- on kurssilla 1. kertaa
Etäopiskelu:
- katso etäopiskelu
- lukiolaisten 3 op: ilmoittautuminen erillisen opintokokonaisuuden opinto-oikeutta varten
jos Ohjelmointi 2 on jo suoritettu ja haluaa Ohj1-arvolauseen
- Jos AHOT ja HOPS käytänteillä on sovittu että voi aloittaa Ohj2 kurssilla ja ohj1 ei ole yritettykään: merkitään Ohj1 kurssista sama arvolause kun Ohj2-kurssista. Pitää tehdä Ohj1 harjoitustyö ja siitä suullinen kuulustelu, samoin kaikki tiedon esittämiseen (mm binääriluvut) liittyvät demotehtävät pitää esittää tehtyinä.
- jos taas kyse on siitä, että on Ohj2:sta saanut paremman arvolauseen kuin Ohj1:stä ja haluaa Ohj1:stä korottaa, niin normaali Ohj1 tentti (ilman demopisteitä). Ja tenttiohjesäännön mukaan tämäkin vuoden sisällä Ohj1 suorituksesta.
- muissa tapauksissa jos on VAHVASTI aikaisempaa kokemusta, niin suoritustapa voi olla HT+Tentti (kysyttävä ohjaajilta erikseen)
- mikäli aikaisemmalta vuodelta on tehty tentti ja demot, niin kurssin voi suorittaa loppuun sen vuoden tentin+demojen antamalla arvolauseella tekemällä harkan loppuun ja debug-näytten mikäli se puuttuu.
- jos olet suosittanut lukiolaisten 3 op version, sinun tulee tehdä:
- kannattaa kerrata demo 1-7 muiden mukana tai itsenäisesti
- kesän 2018 demot tulevat automaattisesti syksyn kurssiin
- vanhempien 3op kurssien tapauksessa kopioi vastauksesi syksyn kurssiin kullekin demokerralle
- debuggausnäyte
- demokerrat 8--11 (ilmoita opettajalle demojen 1-7 tehtyjen summa ja vuosi)
- harjoitustyö
- tentti
- katso tarkempi kuvaus
- kannattaa kerrata demo 1-7 muiden mukana tai itsenäisesti
5. Tärkeät linkit
5.1 Yleiset kurssiin liittyvät
- Luentojen aiheet ja luennolla jaettu materiaali
- Luentomoniste
- Jypelin käyttöohjeet
- Jypelin dokumentaatio
- Nuorten peliohjelmointi-wiki - kesäisin pidetyn peliohjelmointikurssin sivut.
- Visual Studio: projektin luominen, Yleistä käytöstä, vinkkejä
- Kysymyksiä ja vastauksia eli Q/A
- Kurssin sähköpostilistan arkisto
5.2 Tarkemmin ohjelmointiin liittyvät
- Kysymyksiä ongelmiin liittyen (Tietovisa)
- Lisäsivuja:
- Khan Academy - esimerkkejä JavaScriptillä (kannattaa tehdä oheisharjoituksina). Katso myös: perusteluja.
- CodeHunt - pelillistettyä koodausta
- Vastauksia teknisiin ongelmiin
- http://codingbat.com/ - harjoitustehtäviä Javalla ja Pythonilla
6. Kurssilla käytettävät työkalut
7. Kurssin opiskelusta
Suositeltava tapa opiskella:
- Ma julkistetaan seuraavan viikon demotehtävät. Tehtäviin kannattaa tutustua jo heti saman tien ja jopa yrittää niiden tekemistä ennen ti luentoa. Näin on paremmin motivaatiota luennolla, kun tietää mitä pitää oppia.
- Pääteohjauksissa tehdään alkuvaiheessa erillisiä pääteohjaustehtäviä, joissa opiskellaan teknisiä asioita, jotka ovat hyödyksi demoja ja harjoitustyötä tehtäessä. Jos aikaa jää (tai voi käydä toisessakin pääteohjausryhmässä), voi tehdä demotehtäviä ja saada niihin alkuunpääsyohjeita. Loppukurssista pääteohjauksissa tehdään vain demoja ja harjoitustyötä.
- Kun demot on palautettu, kannattaa käydä demonpalautuksissa katsomassa mitä "olisi pitänyt" tehdä. Kun jotakin on tosissaan yrittänyt, on vastaanottavaisempi sille, mitä muuta saman tehtävän tiimoilta olisi pitänyt miettiä. Se mikä itsestä tuntuu oikealta, ei välttämättä olekaan paras ratkaisu.
- Ville-tehtäviä kannattaa tehdä jopa etukäteen ja näin taas nähdä luentoja varten mitä pitäisi oppia. Tehtäviä voi sitten tehdä uudelleen demoja varten.
- Luentomonistetta kannattaa lukea itsenäisesti etupainotteisesti ja näin saada taas pohjaa luentojen asialle.
- Harjoitustyötä kannattaa tehdä etupainotteisesti, niin että se olisi valmis joulukuun alussa. Liian myöhäinen aloitus johtaa kohtuuttomaan kuormaan. HT ei ole pikkujuttu aloittelijalle.
- Kun on ongelmia pitää kysyä. Kanavia ovat kurssin postilistat, keskustelusivu, pääteohjaukset, luennoilla luentoseinä, suora kontakti johonkin kurssin opettajista sähköpostilla tai hihasta vetämällä. Ja tietysti luennolla kysymällä saman ongelman saa ratkaistuksi koko joukon puolesta.
- Koe onnistumisen elämyksiä. Ole kuitenkin valmis oppimaan tekemään vielä paremmin!
8. Ohjaajille
- Opettajille muistinvirkistykseksi oppilaille hankalia asioita
9. Edellisten kurssien pelejä
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.