Ohjelmointi 1 (C#, Jypeli), syksy 2016
- Kurssi Korpissa, 6 op = n. 14.5 tuntia/vko!
- 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
#
miten-aloitan
#
kuva1
2. Ajankohtaista
- Debug-näyte - katso tuolta ohjeet harjoitteluun.
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 Xamarin)! Erityisesti debuggeria on osattava käyttää heti alusta alkaen.
3. Kurssin suorittamisesta
Sisältö: C#-kielen alkeet, rakenteisen ohjelmoinnin perusteet. Kurssin työmäärä 14.5 t/viikko.
Normaali tapa suorittaa:
- Suoritustapa: riittävä määrä demotehtäviä, harjoitustyö, debuggausnäyte ja tentti (pe 2.12.2016) (jos ei erikseen opiskelijan kanssa muuta sovita suoritustavoista)
- Kontaktiopetus: luennot, pääteohjaukset ja demojen palautukset sekä harjoitustöiden ohjaukset
- Luennoija ja tentaattori: Vesa Lappalainen (vesal@jyu.fi).
- Tuntiopettajat. Varaa tapaamisaika Korpissa.
Tuntiopettajat tavattavissa 4. kerroksen OTE-solun avotilassa (Ag C417.1). - Sähköpostilistat
- Tiedotuslista: ohj1s16@korppi.jyu.fi. Arkisto.
- Kaikki kurssilaiset ja opettajat: ohj1s16k@korppi.jyu.fi. Arkisto.
- Ohjaajat: ohj1s16c@korppi.jyu.fi (opiskelijat voivat lähettää tänne postia)
- Muista sähköpostinetiketti
- Muut yleiset tiedot Korpissa
- 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), voi kurssilta silti saada arvolauseen 1/5 edellyttäen että KAIKKI seuraavat ehdot täyttyvät:
- demoista on tehty keskimäärin (sana keskimäärin poistetaan syksyn 2016 jälkeen) vähintään 5 pistettä/kerta ja joka kerralla vähintään kaksi merkityistä tähtitehtävistä
- debuggausnäyte hyväksytty
- harjoitustyö on melkein valmis ja ohjaajien suullisessa kuulustelussa hyväksymä
Etäopiskelu:
- katso etäopiskelu
- jos Ohjelmointi 2 on jo suoritettu ja haluaa Ohj1-arvolauseen 1. 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ä. 2. 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ä:
- demokerrat 8--11 (ilmoita opettajalle demojen 1-7 tehtyjen summa ja vuosi)
- harjoitustyö
- debuggausnäyte
- tentti
- katso tarkempi kuvaus
4. Tärkeät linkit
4.1 Yleiset kurssiin liittyvät
- Luentojen aiheet ja luennolla jaettu materiaali
- Luentomoniste (muut versiot) (ks. myös monisteen korjaukset)
- Jypelin käyttöohjeet
- Jypelin dokumentaatio
- Nuorten peliohjelmointi-wiki - kesäisin pidetyn peliohjelmointi-kurssin sivut.
- Visual Studio: projektin luominen, Yleistä käytöstä, vinkkejä
- Kysymyksiä ja vastauksia eli Q/A
- Kurssin sähköpostilistan arkisto
4.2 Tarkemmin ohjelmointiin liittyvät
- Kysymyksiä ongelmiin liittyen (Tietovisa)
- Lisäsivuja:
- C#-pikasyntaksi, täydellisempi syntaksi
- C#-koodauskäytänteet kurssilla
- Sanasto, Ohj2-kurssin sanasto
- 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
- syksyn 2015 kurssin linkkejä
5. Kurssilla käytettävät työkalut
6. Kurssin opiskelusta
Suositeltava tapa opiskella:
- Ma luennolla jaetaan seuraavan viikon demotehtävät. Tehtäviin kannattaa tutustua jo heti samantien 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, pääteohjaukset, 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!
7. Ohjaajille
- Opettajille muistinvirkistykseksi oppilaille hankalia asioita
8. Edellisten kurssien pelejä
#
Video1
#
Video3
#
Video2
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.