avoin/avoin23
Huom! TÄMÄ ON AVOIMEN YLIOPISTON SIVU.
Et voi suorittaa kurssia, ellet ole ilmoittautunut täällä.
Ohjelmointi 1, C#, avoin 2023 Luennot
Luennot ovat alempana käänteisessä järjestyksessä (kurssin viimeinen ensimmäisenä).
Luentoja päivitetään sitä mukaa, kun uusia pidetään. Siihen asti kutakin videota korvaa edellisen lukuvuoden luentotallenne. Jos uusimman luennon tallenne on syystä tai toisesta käyttökelvoton, hyödynnetään edellistä kelvollista luentoa. Älä siis ihmettele, jos joukossa sattuu olemaan aiempien vuosien luentoja.
Luennot eivät juuri muutu lukuvuodesta toiseen, pieniä päivityksiä tai asiasisältöjä lukuunottamatta. Näin ollen edellisen lukuvuoden luento on yleensä yhtä pätevä kuin uusi (ellei jopa parempikin).
Kunkin luennon kohdalla on tieto luennolla käsitellyistä asioista sekä linkkejä mahdollisiin ohjelmalistauksiin joita luennolle/luennolla on tehty. Ja aina kunkin luennon kohdan lopussa linkki luentojen videointeihin.
Linkkejä
- Live luennolle kirjaantuminen: http://r.jyu.fi/ohj1 - tee tämä aina salissa luennon aluksi.
- Luennot: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24
- Luentotallenteet Moniviestimessä tekstitettynä (automaatti, lähinnä vitsi), videoita kannattaa katsoa tällä sivulla alempaa kunkin luennon kohdalta
- Luentovideot TIM-sivuna - tässä voi muuttaa nopeutta, mutta niin voi alla olevissa videon kuvalla varustetuissa kohdissakin samoin kuin itse kunkin luennon sivulla :-)
- Videoiden hakemisto aihepiireittäin 2023
- Mitä pitää osata kunkin viikon jälkeen
- vuosien 2011-2020 videohakemistot
- Videoiden hakemisto aihepiireittäin 2018
- Videoiden hakemisto aihepiireittäin 2018
- Videoiden hakemisto aihepiireittäin 2018
- Videoiden hakemisto aihepiireittäin 2017
- Videoiden hakemisto aihepiireittäin 2016
- Videoiden hakemisto aihepiireittäin 2015
- Videoiden hakemisto aihepiireittäin 2014
- Videoiden hakemisto aihepiireittäin 2013
- Videoiden hakemisto aihepiireittäin syksy 2012
- Videoiden hakemisto aihepiireittäin syksy 2011
Luennot
LUENTO 24: Graafisen käyttöliittymän tekeminen
Katsotaan yhdessä videolta ja Vesa vastailee kysymyksiin
- Autolaskuri
- Katso luento 24 ohjeet
- MainPage.xaml.cs - varsinainen ohjelma
- MainPage.xaml - ohjelman ulkoasu
- AutolaskuriProp
- MainPage.xaml.cs - versio, jossa KA ja HA propertyinä
- MainPage.xaml - ulkoasun kuvaus
- AutolaskuriBind
- MainPage.xaml.cs - versio, jossa laskurit liitettävinä (bind) komponetteina
- MainPage.xaml - ulkoasun kuvaus
- BindLaskuri.cs - laskuri joka voidaan liittää (bind)
- AutolaskuriAndroid
- Xamarin forms
- MainActivity.cs - varsinainen ohjelma
- activity_main.xml - ulkoasu (vielä todella vaatimaton)
- Tuomarikone
- Testisivu - Silverlightilla tehty testisivu (toimii vain Windows ja sielläkin IE).
- MainPage.xaml.cs - SL-version ohjelma
- MainPage.xaml - SL-version ulkoasu
- MainPage.xaml.cs - WP7-ohjelma
- MainPage.xaml - WP7-ulkoasu
- CycloLite
- taulukonharjoittelu
- Luennolle tehdyt koodit versionhallinnassa -
- Luennon koodit versionhallinnassa
- 24. luento videona: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
LUENTO 23: Kertausluento, luentokysymyksiä
- luento pidetään TIMin luentokyselyillä
- luennolle tarvitaan tietokone/täppäri/älypuhelin, koittakaa pariutua
- Javan ja C#:in vertailua
- Katso luento 23 pohja
- Pallot.cs - alkuperäinen versio
- attribuutien poistoa - kurssin taidoilla
- Pallot.cs - käytetään ref-parametrin välitystä (erona alkuperäiseen)
- Luennolle tehdyt koodit versionhallinnassa
- Pallot.cs - alkuperäinen versio
- 23. luento videona: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 22: Liukulukujen esittäminen tietokoneessa, kertausta
- M: 26.6 Liukuluku (floating-point)
- Reaalilukujen esittäminen:
- intel16.txt - reaaliluvut Intelin prosesorissa
- desimaal.c - c-ohjelma, jolla voidaa tulostaa lukujen esitysmuoto
- Tarkkuus.cs - esimerkki miten reaaliluvut eivät ole tarkkoja
- esimerkit itse ajettavana koodina
- int-, long-, float- ja double-lukujen esityskyvyn rajat
- IntDoubleYms.cs
- Luennolle tehdyt koodit versionhallinnassa -
- Luennon koodit versionhallinnassa
- 22. luento videona. Luenon alkuosa: MP4 alkuperäinen, MP4 kännykkäversio
- 22. luento videona. Loput katsotaan vuoden 2019 videolta: MP4 alkuperäinen, MP4 kännykkäversio (aloita n. kohdasta 6:40)
- luentoseinä
LUENTO 21: Kertausta - luentokyselyt
- ottakaa laitteet mukaan (kannettava, tabletti, älykännykkä)
- Kalevalasta pitää selvittää kunkin säkeen kolme 1. vokaalia
- Siirra.cs - luennolle tehty versio, jossa InSitu -kysymykset
- Siirra.cs - luennolla tehty versio, jossa jossa pelkkä vastaus
- Luennolle tehdyt koodit versionhallinnassa -
- Luennon koodit versionhallinnassa
- 21. luento videona: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 20: Poikkeukset, Delegaatti ja Lambda-lauseke, ohjelman suoritusaika
- Poistot.cs - esimerkki delegaatista ja Lambda-lausekkeesta
- M: 24. Poikkeukset
Idea:
try { // poikkeusalttiit lauseet } catch(Poikkeusluokka p) { // lauseet poikkeuksen sattuessa } finally { // Lauseet jotka tehdään aina }
- TiedostoIsoksi.cs - poikkeus mikäli tiedostoa ei ole.
- Poikkeus.cs - esimerkkissä ComTestissä
#THROWS
, eli ko. testirivin PITÄÄ heittää poikkeus tai testi epäonnistuu jos se ei heitä. Tällä on dokumentoitu käytös noissa kahdessa tapauksessa. - finally
- Maarat.cs (värillinen versio) - käytiin läpi
- muita nopeustestejä
- Demo 9 G1-2 tehtävän erilaisia ratkaisuvaihtoehtoja ja miten kauan mikäkin veisi suoritusaikaa mm KuvaVertailua.cs
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 20. luento videona: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 19: Rekursio
- M: 22. Rekursio
- Kertoma - esimerkki jossa määritelmä voidaan antaa itsensä avulla (=rekursiivinen määritelmä)
- Rekursion idea ja kertoma
- Rekursio.cs - luennon versio rekursiivisena ja iteratiivisena (silmukalla, ei saa laskea oikeasti muuten)
- kuvioita rekursion avulla:
- Droste Effect (1, 2)
- Sierpinskin kolmio ja muut fraktaalit
- Mandelbrotin joukko, Kochin lumihiutale
- SierpinskiKolmio.cs - luentomonisteen versio
- SierpinskiKolmio2.cs - versio jossa kolmiot piirretään heti Jypelin olioilla
- SierpinskiKolmio3.cs - versio jossa kolmiot piirretään viivoina Canvakselle ja jossa voi animoida syntyä
- SierpinskiMatto.cs
- Wikipedia: Sierpinski triangle, kuva eräästä toteutuksesta
- Haskell esimerkki rekursiosta
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 19. luento videona: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 18: Tiedoston lukeminen ja käsittely
- M: 25. Tietojen lukeminen ulkoisesta lähteestä
- MSDN: How to: Read From a Text File
- Isoksi.cs - esimerkki filtteristä, eli joka lukee syötettä ja tulostaa sitä jotenkin muutettuna
- TiedostoIsoksi.cs - esimerkki, joka lukee tiedoston ja tulostaa sen isoilla kirjaimilla
- Kaino.cs - esimerkki, joka muuttaa Kotus-sanaston sanat Hirsipuupeliä varten sopivaksi
- Syksyllä 2011 tehtiin ohjelma, jonka avulla voi korjata luentomonisteen rikkinäiset linkit
- KorjaaMoniste.cs - "valmiiksi" korjattu versio
- KorjaaMoniste.cs - luennon jälkeinen tilanne
- Syksyn 2011 luennon koodit versionhallinnassa
- Syksyn 2011 videot: Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- Syksyllä 2019 tehtiin ohjelma, jolla havainnolistetaan ajankäyttöä vs saatuja pisteitä
- Aika.cs - ajankäyttö vs demopisteet, esimerkki, jossa yhdistetään kahden erilaisen tiedoston sisältöä
- Syksyn 2019 videot: Osa 1 MP4 alkuperäinen
- Katsottiin kuvankäsittelyä
- Kuvankasittely
- Konvoluutio kuvan käsittelyyn - lataa ja aja
java -jar konvo.jar
- Kuva.cs - demo9 pohjatiedosto kuvan käsittelylle
- Palapeli.cs - demo9 pohjatiedosto palapelille
- Hirsiauta.cs - apuohjelma hirsipuun pelaamiseksi
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 18. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 17: Pelin tekeminen
- Vuoden 2015 esimerkki: Hirsipuu
- Vuoden 2012 esimerkki: Lumiukot oliolla:
- ks: s2012 luennot
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 17. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 16: Oliot
Muu sisältö: listat, silmukat, muuttujien näkyvyys, hiiren kuuntelu (Jypeli)
- Kuvatiedosto
- Muuttujien näkyvyys
- M: 23. Dynaamiset tietorakenteet
- Hiiren kuuntelu
- Oliot (ei kurssiasiaa, mutta voi auttaa harjoitustyössä selkeyttämään)
- Yksinkertaisesti pikkuluokkia
- Elaimet.cs - pohjaksi Kissa ja Koira-luokka
- ElaimetPerimalla.cs - toteutettu perinnällä sekä lista Elaimista (polymorfismi)
- sama sovellettuna Jypeliin
- Yksinkertaisesti pikkuluokkia
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 16. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
- PP1. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
LUENTO 15: Lista
Muu sisältö: Funktioiden kutsuminen, taulukot
- M: 23. Dynaamiset tietorakenteet
- Käytiin läpi
List<T>
-kokoelman perusteta (List-dokumentaatio MSDN:ssä) - LaskeMatka.cs - luennolla tehdyt muutokset eli pisteet listaksi.
- Listat.cs
- Listat.cs - luennolla taulukoista listoiksi muutettu esimerkki
- Käytiin läpi
- Tekstuuri neliölle (ohje Jypeli-wikissä)
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 15. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 14: Matriisit, taulukko vektoreista, törmäysten käsittely, laskurit
Muu sisältö: moniulotteiset taulukot
- Demopohjan hakeminen
- M: 15.5. Moniulotteiset taulukot.
- M: 16.8.1 break
- Jypeli:
- Jypelin ohjeet
- Jypelin "arkkitehtuurikuva"
- GameObject
- Jypelin suoritus -kaavio miten oma koodi on suhteessa Jypelin-koodiin (Framework)
- Kehitettiin AngryLego-peliä,
- TileMap.cs - katso Insert-metodin toteutusta
- Matriisit.cs - luennolla tehty esimerkki kokonaislukumatriisista
- Pisteitä (
Vector
) listassa: - Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 14. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 13: Merkkijonojen paloittelu, HT:n aloittaminen
- M: 17. Merkkijonojen paloittelu
- Pelikenttä merkkijonosta:
- Matriisit.cs - matriisiesimerkkejä
- KentanMuokkaus - muutetaan taulukko merkkijonoksi, erot luennon 12 versioon
- AngryLego.cs - peli aluille, kenttä merkkijonosta (ks: ruutukenttä)
- Katso myös video GalaxyTripin tekemisestä ja sen lähdekoodi.
- Muita "livenä tehtyjä" harjoitustyön tasoisia "pelejä":
- Tiernapoikapeli yliopiston pikkujouluja varten 2013:
- 2013 esimerkki: AmebaDanceWars refaktorointi, if-lauseiden vähentäminen olioita käyttämällä
- pohjaksi AmebaDanceWars.cs
- koko muutoshistoria
- .cs (diff) - lisätty Ameba-luokka ja omaAmeba osaa tanssia
- .cs (diff) - lisätty !VastusAmeba-luokka, joka osaa arpoa ja tehdä omat liikeensä
- .cs (diff) - lisätty !OmaAmeba-luokka, joka osaa tallettaa omat suoritukset ja periaatteessa laskea pisteet
- .cs (diff) - lisätty !SuoritusValmis-delegaatti -tyyppi, jolla ameba voi ilmoittaa, että pyydetty homma on tehty
- .cs (diff) - vaihdettu luokan nimeksi !TanssiAmeba ja lisätty joukko taustatanssijoita, korjattu myös että arpoo liikkeitä tason mukaan (ennen otti määrän aina Begin-metodin suoritushetkellä).
- muunneltu versio olioilla AmebaDanceWars.cs
- Luennon koodit versionhallinnassa (valmista ohjelmaa varten ota hakemistosta .exe, .dll ja content-kansion kaikki tiedostot).
- luento videona MP4 alkuperäinen, MP4 kännykkäversio
- Kuvaaja.cs - pohja demo 7 tehtäville
- Taulukot.cs - pohja taulukkotehtäville
- AngryLego.cs - luentojen yksinkertaisin versio, muutama seinä, ei vielä liikettä
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 13. luento videona Osa 1 ja2 MP4 alkuperäinen, MP4 kännykkäversio
LUENTO 12: Aliohjelmien kutsuminen, etsiminen taulukosta
- Näytelmä aliohjelmien kutsumisesta
- Näytelmä videona - käynnistä yhtäaikaa katsoessasi luennon videointia.
- Kutsuminen.cs - näytelmässä käytetty koodi
- Kutsuminen.asm - koodi optimoidusti käännettynä konekielelle (näkee kun painaa
Ctrl-Alt-D
debuggauksen aikana)
- Talukoista:
- SuurinJaPienin.cs -taulukon Suurimman ja pienimmän etsiminen
- Matriisit.cs -esimerkki matriiseista
- 1-ulotteiset taulukot
- TIM-lisäsivu 2D-taulukoista
- Kutsuminen.cs - esimerkkejä 1-ulotteisen taulukon käyttämisestä
- SuurinJaPienin.cs -
- suurimman ja pienimmän sekä tietyn luvun etsiminen
- LumiukotTaulukolla.cs - lumiukon pallot taulukkoon
- Tutustu: demo 5 gurutehtävien malliratkaisut.
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 12. luento videona: Osa 1 ja 2 MP4 alkuperäinen
- luentoseinä
V 2021 luento, olisiko tuoreempia saatavilla? Kiitos.
—LUENTO 11: Olioviitteet, 2-ulotteiset taulukot
Muu sisältö: Aliohjelmien tekeminen, taulukot, silmukat, if-lauseet, etsiminen, debuggaus, pelikenttä merkkijonosta
- Alkukysely
- muista animaatiot
- M: 10.3 Debuggaus
- M: 8. Oliotietotyypit, luokat ja oliot
- M: 14. Olioiden ja alkeistietotyyppien ero
- SuurinJaPienin.cs - taulukon Suurimman ja pienimmän etsiminen
- SuurinJaPienin.cs - luennolla tehty versio jossa ei päästy yhtä pitkälle
- TIM-lisäsivut: 2-ulotteiset taulukot
- M: 15.5 Moniulotteiset taulukot
- LumiukotTaulukolla.cs - lumiukon pallot taulukkoon
- Matriisit.cs -esimerkki 2-ulotteisesta taulukosta
- KentanMuokkaus.cs, moniulotteisten taulukkojen hyödyntäminen käytännössä
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 11. luento videona: Osa 1 ja2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 10: Taulukot, silmukat
- TIM lisäsivu taulukoista
- M: 16. Toistorakenteet
while
-silmukka,for
-silmukka,do-while
-silmukka- MontaPalloa.cs
- DoWhile.cs
- M: 15. Taulukot
- TIM-sivu taulukoista
- Pallot.cs - motivointi silmukoihin ja taulukoihin
- Silmukoiden käyttäminen taulukon alkioiden läpikäymiseen (esim. tulostaminen, summaaminen, ...)
- Taulukoita.cs
- Taulukoita.cs- luennolla tehty hieman suppeampi versio
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 10. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 9: Aliohjelmien kutsuminen, String, StringBuilder
Muu sisältö: ehtolauseet, luokan käyttäminen sekä olioviitteet
- Pong-muutokset kurssia varten
- TIM-sivu aliohjelmien kutsumisesta
- AliohjelmienKutsuminen.cs - esimerkkejä aliohjelmien kutsuista
- M: 12.3 Muokattavat merkkijonot: StringBuilder
- StringVsStringBuilder.cs - String vs. StringBuilder nopeus
- IntVsDouble.cs - int vs. double nopeus
- M: 13. Ehtolauseet
- M: 13.6.1 Operaattoreiden totuustaulut
- HUOM! Vertailuoperaattorit == ja != toimivat myös
String
-merkkijonojen ''sisällön'' vertailussa, toisin kuin esimerkiksi Javassa. Mutta eivät toimiStringBuilder
-jonoille! - Totuustaulut
- HUOM! Vertailuoperaattorit == ja != toimivat myös
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 9. luento videona: Osa 1 ja2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 8: Ehtolauseet, String
- Pahasti Pihalla
- M: 13. Ehtolauseet
- Lue demoja varten myös: Aliohjelminen kutsuminen
- Muista aina katsoa välillä C#-pikasyntaksi
- Tee omatoimisesti Pong-tutoriaalin vaiheet 1-3. Demoissa tehdään sitten 4-7.
- Voit tehdä myös Läpsylintu-tutoriaalin
- Voit tehdä myös Läpsylintu-tutoriaalin
- Lukuja.cs - esimerkki funktiosta jossa if-lause
- M: 12. Merkkijonot
- String-luokan MSDN-dokumentaatio
- StringBuilder-luokan MSDN-dokumentaatio
- Merkkijonoja.cs - esimerkkejä merkkijonoista ja kirjaimista sejä merkijonofunktiosta
- Jonoja.cs - esimerkkejä merkkijonofunktioista
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 8. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 7: HT, ehtolauseet
Muu sisältö: Visual Studio, parametrin välitys, muuttujat, funktiot, testaaminen
- Katso animaatio funktion kutsumisesta
- Muistutuksia demotehtävien nimeämisistä
- Ei ääkkösiä eikä välilyöntejä tiedostojen, eikä luokkien nimiin
- Luokan nimi samaksi kuin tiedoston nimi. C#:ssa tämä on suositus, Javassa näin on pakko tehdä. Yhtenäisyyden vuoksi toimimme kuitenkin näin.
- Luokkien ja aliohjelmien nimet alkavat isolla, muuttujien (ja siten myös parametrien) pienellä.
- M: 28. Syntaksin kuvaaminen
- Harjoitustyö:
- M: 10. Visual Studio
- Aliohjelmien kirjoittaminen
- Ohjelman synty ja testaaminen:
- Kolmiota.cs - luennon ohjelma valmiina. Sisältää mm. Kysy-metodin.
- Sisällön tuominen peliin
- KolmionMetsastys.cs - valmis 50% versio
- Kolmion metsästyksen versiot
- ComTest for Windows, ComTest for Mac
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 7. luento videona. Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 6: Aliohjelman paluuarvo, funktio ja parametrin välitys
- Visual Studion käyttö jatkuu...
- M: 26.4 Negatiiviset binääriluvut
- M: 7. Muuttujat
- M: 28. Syntaksin kuvaaminen
- M: 9. Aliohjelman paluuarvo
- Keskiarvon laskeminen, funktioesimerkkejä
- Laskuja.cs - luennon esimerkki, jossa edellisen luennon paperitehtävän funktio toteutettu ja testattu.
- Funktioita.cs
- FunktioitaNC.cs - sama ilman kommentteja, jotta rakenne näkyy paremmin
- Esimerkki syntyneestä dokumentaatiosta, jossa ComTest-esimerkit mukana.
- Käyttäjän vuorovaikutus
- LumiukkoVoima.cs - lumiukko jossa käyttäjä voi vaikuttaa "peliin".
- Katso myös Voimia ja sitominen
- Harjoitustyön suunnitelma
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 6. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 5: Visual Studio, aliohjelmat, muuttujat
- MUISTAKAA TEHDÄ luentovideoista hakemisto
- Ollaan aliohjelmia
- Luentokysymyksiä
- M: 10. Visual Studio
- Aliohjelmat:
- M: 6. Aliohjelmat, metodin kuormittaminen
- Laskuja.cs - yksinkertainen esimerkki funktioaliohjelmasta joka laskee ja PALAUTTAA keskiarvon
- LaskujaTest.cs - ComTestin generoima NUnit-tiedosto
- LumiukkoAli.cs - kuormitettu
PiirraLumiukko
- KaannaTaulukko.cs - taulukon kääntäminen tyhmästi
- KaannaTaulukkoAli.cs - taulukon kääntäminen aliohjelmalla (vielä puuttuu jotakin, mitä???)
- Matka.cs - idean alkua muunnokselle
- Jypelin "arkkitehtuurikuva"
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 5. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
- Itsenäisesti katsottavaksi: tietokoneen toiminnasta:
- Katso myös YouTubesta suurennettu tietokone
LUENTO 4: Aliohjelmat, muuttujat
- M: 26.1 Lukujärjestelmät: 10-järjestelmä ja 2-järjestelmä, lukujen esitys tietokoneessa
- ks esimerkki bitistä TIEP114 -kurssilta
- Khan Academy - esimerkkejä JavaScriptillä (voi tehdä oheisharjoituksina)
- M: 7. Muuttujat
- LumiukkoAli.cs - lumiukko jossa myös pallot piirretään aliohjelmalla
- Muuttujat.cs - esimerkki muuttujista
- Muuttujat.java - sama esimerkki Javalla
- Eri versioiden välinen ero
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 4. luento videona Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 3: Yksinkertainen graafinen C#-ohjelma, aliohjelmat, dokumentointi
- osallistu tekemään luentovideoista hakemisto
- Kurssin postilistat ja niiden arkistot
- Kurssin keskustelualue
- faktaa vai fiktiota?
- M: 6. Aliohjelmat
- Lumiukot tyhmästi
- Lumiukko aliohjelmien avulla ja dokumentoituna.
- Lumiukot-koodin dokumentaatio
- M: 2.4 Kommentointi
- Dokumentaatiokommentit tästä eteenpäin oltava jokaisessa luokassa ja jokaisessa aliohjelmassa.
- Esimerkki doxygenin tuottamasta Jypeli-kirjaston dokumentaatiosta.
- M: 7.5 Muuttujien näkyvyys
- Muuttujat.cs - esimerkki muuttujista
- Muuttujat.java - sama esimerkki Javalla
- Matka.cs
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 3. luento videona Osa 1 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 2: Yksinkertainen graafinen C#-ohjelma
Muu sisältö: Tekstinkäsittely, näppäinoikotiet
- Demotehtävien tarkastelua
- pääteohjauksiin osallistujien määrän laskeminen
- Excelillä
- AWKilla
- HelloWorld muilla kielillä
- M: 2. Ensimmäinen C#-ohjelma - kerrataan syntaksia ja kääntämistä
- M: 3.5 Peräkkäisyys
- M: 4. Yksinkertainen graafinen C#-ohjelma
- Lumiukko.cs
- Jypeli-kirjasto ja sen asennus. Kirjaston dokumentaatio.
- Näppäinoikoteitä näppäimistön käyttöä nopeuttamaan (NPO wikissä)
- Tiedoston sisältö binäärisenä
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 2. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
LUENTO 1: Alkubyrokratia, komentorivi, yksinkertaisin C#-ohjelma
Huom! Luennolla puhutaan paljon aikatauluista, mutta ne on tarkoitettu vain varsinaisen kurssin toteutukselle, eivätkä koske avoimen yliopiston opiskelijoita. Lisää tietoa aikatauluista täältä.
- 3 tärkeää asiaa
- Kurssin kotisivujen ja pelisääntöjen läpikäynti
- Vastaa kurssin esitietokyselyyn
- Mitä ohjelmoinnilla voidaan tehdä
- Työpaikat
- "Tärkeintä on osata kehittää uutta, ettei vain seuraile muita. Tällöin pitää tuntea olemassa olevat rakennuspalikat ja osata rakentaa niistä jotain uutta." Mika Helenius, toiminnanjohtaja, TIVIA ry.
- Esim. GoogleMaps, Oma kartta
- TIM
- Excel, Word, autojen jarrut + kaikki muu kontrolli
- MS Imagine Cup -kilpailut opiskelijoille.
- MS Imagine Cup 2008, lyhyempi tekstitetty versio
- edellisen pidempi versio joka on koostettu Micropsoftin videoista
- Imagine Cup 2013 voittajat
- "3D-kuvaa 2D-kameralla"
- Työpaikat
- Motivaatio peleihin
- KSML artikkeli leikin vaikutuksesta oppimiseen
- Project Natal Ces http://www.youtube.com/watch?v=Ay9mpb0TN3g
- Esimerkkejä siitä, mitä kurssilla ja Jypeli-kirjastolla voidaan tehdä
- GalaxyTrip, AngryLego (arvosteluja) ja Tankkipeli
- Aikaisempia harkkatöitä ja esimerkkipelejä (jos sinulla ei facebook-tiliä, niin katso täältä)
- Syksy 2014
- Kevät 2012 harjoitustöitä
- Koripallopeli
- Fall Down
- Viimeinen Systeemi
- Esimerkkejä NPO-kurssilta
- Jumpy Jumpie
- Rampege
- Hyppijä
- Palikkatesti WMV
- Auto ja pyörivä ukko, R2->R funktio. (Java-kurssin esimerkkejä) (Seuraava ei enää toimi: Kuinka saat Appletit käyttöön)
- Konvoluutio kuvan käsittelyyn (lataa
konvo.jar
ja käynnistä)
- Käsitekartta vastaavan Java-kurssin asioista, pätee suurimmalta osin tälläkin kurssilla
- Komentorivi
- Ohjelman kääntäminen komentoriviltä
- Mahdollisimman paljon koneen käyttöä muuten kuin hiirellä
- Vuoden 2007 materiaali Windowsin komentorivistä
- Vuoden 2007 materiaali Linuxin käytöstä Jyväskylän yliopistossa.
- Komentorivistä muita linkkejä: Työvälinekurssin moniste
- M: 1. Mitä ohjelmointi on? TIM
- M: 2. Ensimmäinen C#-ohjelma TIM
- Mitä kääntäminen tekee
- Julkkiskin haluaa pysyä ajan hermolla
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 1. luento videona: Osa 1 ja 2 MP4 alkuperäinen, MP4 kännykkäversio
- luentoseinä
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.