The referenced paragraph does not exist.
The referenced paragraph does not exist.
Luennot
Kaikki luentovideot löydät listana osoitteesta https://kurssit.it.jyu.fi/ITKP102/2024k/luento/
Kevään 2019 luennot
#
luento1
1. luento: Alkubyrokratia, komentorivi, yksinkertaisin C#-ohjelma (Video: HD, SD)
- Kalvot (luento01.pdf)
- Käytiin läpi kurssin kotisivut ja pelisäännöt
- Komentorivi.
- Vastaa kurssin esitietokyselyyn
- Esimerkkejä siitä, mitä kurssilla ja Jypeli-kirjastolla voidaan tehdä
- Aikaisempia harkkatöitä ja esimerkkipelejä 2015 2013, 2012, 2012 (nuorten kesäkurssit)
- Käsitekartta vastaavan Java-kurssin asioista, pätee suurimmalta osin tälläkin kurssilla
- M: 1. Mitä ohjelmointi on?
- M: 2. Ensimmäinen C#-ohjelma
- HelloWorld.cs
- Monisteen täydennys: Mitä ohjelmointi on File
Miten luentojen koodi- ja muut tiedostot ladataan omalle koneelle.
#
luento2
2. luento: Graafinen C#-ohjelma (Video: HD, SD)
- M: 2. Ensimmäinen C#-ohjelma
- M: 4. Yksinkertainen graafinen C#-ohjelma
- Lumiukko.cs copy-pastettamalla palloja
- Tutustuttiin Visual Studioon
- M: 2.4 Kommentointi ja dokumentointi. Dokumentoi kaikki luokat ja aliohjelmat
- Jypeli-kirjasto ja sen asennus. Kirjaston dokumentaatio.
- Näppäinoikoteitä näppäimistön käyttöä nopeuttamaan (NPO wikissä)
#
luento3
3. luento: Lumiukko, aliohjelmat, (Video: HD, SD)
- Katso kysymykset ja vastaukset (päivittyy hiljalleen)
- M: 10. Visual Studio
- Visual Studion asentaminen ja projektin luominen.
- Jos Visual Studio ei laita
public
-sanaa luokan ja aliohjelmien eteen automaattisesti; oletusnäkyvyys aliohjelmille onprivate
. Tällä kurssilla tehdään kuitenkin käytännössä ainapublic
-aliohjelmia, jotenpublic
kirjoitetaan aliohjelmien (ja luokan) eteen aina manuaalisesti. Asiasta lisää Ohjelmointi 2 -kurssilla.
- M: 6. Aliohjelmat, M: 2.4 Kommentointi, erityisesti M: 2.4.1 Dokumentointi
- Dokumentaatiokommentit tästä eteenpäin oltava jokaisessa luokassa ja jokaisessa aliohjelmassa.
- Esimerkki doxygenin tuottamasta Jypeli-kirjaston dokumentaatiosta.
- Lumiukko aliohjelmien avulla ja dokumentoituna.
- Luennon koodit
Kaksi alinta linkkiä ei toimi?
—Korjattu. -AJL
—
#
luento4
4. luento: Visual Studio, aliohjelmat, muuttujat (Video: HD, SD)
- M: 6. Aliohjelmat, M: 6.5 Aliohjelman kuormittaminen
- Lumiukot.cs - Lumiukko, jolle säde ym. parametrina
- M: 7. Muuttujat
- M: 7.5 Muuttujien näkyvyys
- M: 26.3 Binääriluvut: 10-järjestelmä ja 2-järjestelmä, lukujen esitys tietokoneessa
- Lue omatoimisesti ylläoleva monisteen luku
- Esimerkki: binääriluvun muuttaminen 10-järjestelmään ja toisinpäin
- Luennon koodit
#
luento5
5. luento: muuttujat, operaattorit, funktio ja aliohjelman paluuarvo (Video: HD, SD)
- M: 7. Muuttujat ja M: 7.7 Operaattorit
- M: 7.7.4 Aritmeettisten operaatioiden suoritusjärjestys
- Laskutoimituksen lopputulos riippuu tyypeistä, joita operoidaan. Esimerkiksi
4/3
\(\rightarrow\)1
(4
ja3
ovatint
-lukuja \(\rightarrow\) vastaus onint
) mutta(4.0 + 3) / 3
\(\rightarrow\)2.333...
(lausekkeen4.0 + 3
tyyppi ondouble
, jadouble
jaettunaint
-arvolla tuottaadouble
-tyyppisen arvon).
- Laskutoimituksen lopputulos riippuu tyypeistä, joita operoidaan. Esimerkiksi
- Socrative-kysymyksiä.
- M: 9. Aliohjelman paluuarvo, eli funktiot
- Esimerkkejä funktioista: Keskiarvo, Kolmion pinta-ala.
- Luennon koodit
#
luento6
6. luento: Funktio, ehtolause (Video: HD, SD)
- M: 9. Aliohjelman paluuarvo, eli funktiot
- Jatkettiin funktioiden käsittelyä
- Funktioita.cs
- Katso myös viime vuoden vastaava Funktioita.cs
- Vakioistat: Muista, että vakiot merkitään
const
avainsanalla. Vakioiden nimeäminen, esim.const int VARPAITA = 5;
taiconst double OBJEKTIIVIN_POLTTOVALI_MM = 27.2;
- Harjoitustyön aikataulutus.
- Suunnitelma palautettava demo 5 mennessä. Laitan linkin harkkatöiden suunnitelmasivuille lähipäivinä.
- Katso omatoimisesti viime vuoden video: Versionhallinta ja harkkatyön vieminen versionhallintaan
- M: 13. Ehtolauseet
- Luennon koodit
#
luento7
7. luento: Merkkijonot, muuttujat, funktiot (Video: HD, SD)
- Harjoitustyön aikataulutus.
- M: 12. Merkkijonot
NimikirjaimetEsim.cs
- Testaaminen ComTestilla. Muista asentaa ComTest (Windows, Mac, Linux).
- M: 12. Merkkijonot
- Luennon koodit
#
luento8
8. luento: Merkkijonot, ehtolauseet, ComTest (Video: HD, SD)
- M: 13. Ehtolauseet
- M: 16. Toistorakenteet
- Käytiin läpi
while
-toistorakenne. Toistorakenteita kutsutaan myös silmukoiksi. Silmukat.cs
. Kerrotaanluku
-muuttujaa 1.1:llä niin kauan että päästään yli 1000:n.MontaPalloa.cs
- Käytiin läpi
- Katso viime vuoden koodeista
PieninJaSuurin.cs
- esimerkki funktiosta jossaif
-lause.- miten laitetaan lumiukko liikkeelle (mm. kontrollit, ajastin, painovoiman muutos)
LumiukkoRiehuu.cs
- Tutki omatoimisesti miten käytetään Jypelin tasohyppelypeli-projektimallia, sekä miten lisätään kuva projektiin.
- Miten luentojen koodi- ja muut tiedostot ladataan omalle koneelle
- Tämän luennon koodit
#
luento9
9. luento: Taulukot, silmukat (Video: HD, SD)
- M: 16. Toistorakenteet
- Toistorakenteita ovat C#:ssa
while
,for
,do-while
, jaforeach
- Toistorakenteita ovat C#:ssa
- M: 15. Taulukot
- Silmukoita voidaan käyttää taulukon alkioiden läpikäymiseen (esim. tulostaminen, summaaminen, ...)
- Taulukoita.cs
- Vapaaehtoista lisälukemista
- Miten luentojen koodi- ja muut tiedostot ladataan omalle koneelle
- Tämän luennon koodit
#
luento10
10. luento: String, StringBuilder, olioviitteet (Video: HD, SD)
- M: 12.3 Muokattavat merkkijonot: StringBuilder
- Merkkijonoja.cs
- (Lue myös StringBuilder-luokan MSDN-dokumentaatio)
String
- jaStringBuilderin
(tehokkuus-)erot merkkijonojen toistuvassa yhdistelyssä
- M: Oliotietotyypit, olioviitteet, M: Olioviitteiden ja alkeistietotyyppien ero
- muuttujat-muistiinpanot.txt
- Olioviitteet.cs
- Muistathan että vertailuoperaattorit
==
ja!=
toimivat myösString
-merkkijonojen sisällön vertailussa, toisin kuin esimerkiksi Javassa.
- Luennon koodit
#
luento11
11. luento: Johdatus olio-ohjelmointiin (Video: HD, SD)
- Erittäin lyhyt johdatus olio-ohjelmointiin, erityisesti perintään
- Elain-, Koira- ja Kissa-luokat
- Palikat-peli ja Palikka-luokka
- Luennon koodit
#
luento12
12. luento: Olio-ohjelmointi (Video: HD, SD)
- Jatkettiin olio-ohjelmointia
- Luennon koodit
#
luento13
13. luento: Matriisit, Pelottava peli alkuun (Video: HD, SD)
- Moniulotteiset taulukot (erityisesti 2-ulotteiset taulukot eli matriisit)
- M: 15.5 Moniulotteiset taulukot
- Lue myös 2D-taulukot luentomonisteen täydennyksistä
- Matriisit.cs
- PelottavaPeli alkuun
- Luennon koodit
#
luento14
#
luento15
15. luento: Listat (Video: HD, SD)
- Käytiin läpi
List<T>
-kokoelman perusteita (List-dokumentaatio MSDN:ssä) - Aloitettiin Lähin rage hiirestä -peli
- Lue omatoimisesti: Muiden tekemän koodin käyttämisestä omassa koodissa ja yleisesti akateemisesta rehellisyydestä
- Lue omatoimisesti: MjPilkkominen.cs (Kevät 2014)
- Luennon koodit
Luentojen 15 ja 16 koodit eivät jostain syystä näy.
—Hyvä huomio, nyt korjattu.
—
#
luento16
16. luento: Lähin piste hiirestä (Video: HD, SD)
- Kertaus muuttujien näkyvyydestä ja parametrin välityksestä
- Tehtiin Lähin rage hiirestä loppuun
- Luennon koodit
#
luento17
17. luento: Anagrammit, algoritminen ajattelu, Dictionary (Video: HD, SD)
- Tehtiin Anagrammi-tehtävän ratkaisu.
- Dictionary-tietorakenne
- Luennon koodit
#
luento18
18. luento: Palloja karkuun (Video: HD, SD)
- Tehtiin Palloja Karkuun -peli
- Luennon koodit
- Kiinnostuneille: MonoJypelin lähdekoodia pääset tutkimaan täällä. Voit myös ladata lähdekoodin koneellesi samaan tapaan kuin luentojen esimerkit, SVN:n URL on https://svn.cc.jyu.fi/srv/svn/npo/branches/MonoGame/Jypeli
Tulevatko tämän viikon luennot 19. ja 20. tallenteet katseltaviksi?
—
#
luento19
19. luento: Rekursio (Video: HD, SD)
- M: 21. Rekursio
- Rekursiivisen funktion idea
- Rekursioharjoituksia.cs: Kertoma, Fibonaccin luvut, Summa, Minimi
- Sierpinskin kolmio ja muut fraktaalit: esim. Mandelbrotin joukko, Kochin lumihiutale
- SierpinskinMatto.cs
- Wikipedia: Sierpinski triangle, kuva eräästä toteutuksesta
- Lisälukemista. Opiskele omatoimisesti / otetaan seuraavalla luennolla aikataulun mukaan
- SierpinskiKolmio.cs - versio jossa kolmiot piirretään viivoina
Canvas
-oliolle. Tässä versiossa mukana myös liukusäädin jolla kolmiota voi zoomata - SierpinskiAnimaatio.cs - versio missä saa kolmioita piirrettyä yksi kerrallaan. Ohje: Enterillä saat lisää kolmioita, välilyönti puolittaa pienimmän kolmion koon.
- Droste Effect: 1, 2
- M: 26. Poikkeukset
- Idea:
- SierpinskiKolmio.cs - versio jossa kolmiot piirretään viivoina
try { // poikkeusalttiit lauseet }
catch(Poikkeusluokka p) { // lauseet poikkeuksen sattuessa }
finally { // Asiat jotka tehdään huolimatta siitä tapahtuiko poikkeuksia }
- Vesan mallikoodit syksyltä liittyen poikkeuksiin:
- Poikkeus.cs - esimerkkiin lisätty luennon jälkeen vielä !ComTestiin #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.
- Luennon koodit
“Luennon koodit” linkki ei toimi :(
—
#
luento20
20. luento: Palloja karkuun (Video: HD, SD)
- M: 21. Rekursio
- SuurinPolku.cs - Etsitään "puun" paras reitti (tarkemmin sanottuna reitin alkioiden summa). Tämä voidaan tehdä rekursiivisella algoritmilla. Tehtävä on ns. Eulerin ongelma nro 67. Tällä ratkaisulla ei ole kuitenkaan mahdollista ratkaista "isoja" puita (esim. 100 riviä). Tehokkaan algoritmin tekeminen jätetään harjoitustehtäväksi.
- Tutustu omatoimisesti viime vuoden mallikoodeihin:
- PallojaKarkuun.cs
- Hienot räjähdykset käyttäen ExplosionSystem-luokkaa (muita efektejä ovat liekki (Flame), savu (Smoke), valo (Light)
- Luennon koodit
#
luento21
21. luento: Kertausta. (+Merkkijonojen paloittelu.) (Video: HD, SD)
- Kertausta: Siirra.cs - Funktio, joka siirtää vokaalit (tai mitkä tahansa muut merkit) toiseen jonoon.
- HT esittelyt, varaa esitysvuorosi
- HT pitää myös julkisen esittelemisen lisäksi myös virallisesti palauttaa ohjaajalle (ohjauksissa, tai varaa aika), missä katsotaan muodolliset vaatimukset
- Ilmoittaudu tenttiin Korpissa.
- Luennon koodit
- Lue omatoimisesti:
#
luento22
22. luento: Liukulukujen esittäminen tietokoneessa, kertausta (Video: HD, SD)
- Tentistä vielä: Tenttialueena on
- moniste kokonaisuudessaan (''paitsi'' jypeli-spesifiset luvut ja syntaksin kuvaamiseen liittyvä luku), ja lisäksi
- monisteen täydennysten kohdat Muuttujat, Aliohjelmat, Taulukot, Syntaksi
- Aikaisempia tenttejä voi ja kannattaa katsella täältä.
- M: 27. Lukujen esitys tietokoneessa
- Reaalilukujen esittäminen liukulukuina
- intel16.txt - reaaliluvut Intelin prosesorissa
- Tarkkuus.cs - esimerkki miten reaaliluvut eivät ole tarkkoja
- Liukulukujen esityskyvyn rajat
- FloatDouble.cs
- Luentoesimerkit: Lukujen muuttamista lukujärjestelmästä toiseen
- Jypelin rakenne ja missä vaiheessa kutsutaan mitäkin:
- Luennon koodit
⇊ VIIME VUODEN LUENNOT ⇊
Voit tutkia aikaisempaa materiaalia tästä alaspäin. Huomaa että viime kevään luennot ja oppimateriaali voivat poiketa tämän kevään materiaalista.
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.