Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto.

Slides:



Advertisements
Samankaltaiset esitykset
Tuloksellinen Java-ohjelmointi Luku 3 Luokkien käyttäminen
Advertisements

15. Loogiset operaatiot.
Olio-ohjelmoinnin perusteet luento 3: Muuttujista ja funktioista Sami Jantunen LTY/Tietotekniikan osasto.
6. Metodit.
© Jukka Harju, Viittausmuuttujat. © Jukka Harju, Viittaukset •Viittausmuuttuja sisältää tiedon siitä missä muistipaikassa olio.
JavaScript (c) Irja & Reino Aarinen, 2007
Ohjelman perusrakenteet
1 Ehtolausekkeet Ehdot, valintalausekkeet Boolean-algebra.
Rakenteinen ohjelmointi
Taulukot: Array Taulukko Javassa pitää aina perustaa (new)
22. Taulukot.
Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto.
Kurssilla käytettävät työkalut
Java-ohjelmointi Opas ammattimaiseen osaamiseen Luku 4 Toistolauseet
OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT. LUOKKA JAVA ohjelma koostuu luokista LUOKKA sisältää metodeja molemmat sisältävät attribuutteja eli muuttujia.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Ehto- ja toistolauseet
Poikkeustenkäsittely  Mitä poikkeustenkäsittely tarkoittaa?  Poikkeuksen käsitteleminen  Poikkeusluokkien hierarkia  Poikkeuksen heittäminen 1.
Toiston tekeminen Javalla  Mikä toistorakenne on?  while toistorakenne  do-while toistorakenne  for toistorakenne 1.
Ohjelmoinnin tekniikkaa Sisällys for -lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely.
TAULUKKO YKSIULOTTEINEN TAULUKKO. TAULUKKO  Taulukon tarkoitus Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia Näitä.
Ohjelman perusrakenteet
13. Hyvä ohjelmointitapa (osa 1)
© Jukka Harju, Jukka Juslin
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
7. Oliot ja viitteet.
ict1td002 - Copyright Raine Kauppinen 1 Alkuarvot ja tyyppimuunnokset (1/5)  Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int.
String-vertailusta ja Scannerin käytöstä (1/2)
Metodit – Arvotyyppi Ellei metodi palauta arvoa, sen arvotyyppi on void Tällöin ”return;”-lauseke ei ole metodissa pakollinen, vaikka sen käyttö on sallittua.
11. Javan toistorakenteet
20. Javan omat luokat.
XNA peliohjelmointi. XNA Perustuu Microsoftin kehittämään.NET- arkkitehtuuriin ja C#-kieleen. XNA:lla tehdyt pelit toimivat Windows ja XBOX360-alustoilla.
5. Kapselointi Yleistä Kapseloinnilla (encapsulation) tarkoitetaan luokan tietojen ja toimintojen pakkaamista yhdeksi suojatuksi kokonaisuudeksi.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Hyvä ohjelmointitapa (osa 2) Yleistä Lisää hyviä ohjelmointikäytäntöjä: − Jaa pitkä koodi osiin. − Käytä attribuutteja säästeliäästi.
22. Taulukot.
Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen
@ Leena Lahtinen TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA:  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ.
RAKENNUSPALIKOITA SEINÄJOEN KANSALAISOPISTO Jussi Rasku Aki Sirviö.
Rinnakkaisuus Järjestelmässä, jossa voi olla useita prosesseja rinnakkain suorituksessa voi tulla tilanteita, joissa prosessien suoritusta täytyy kontrolloida.
Olioiden taulukointi Perustaulukon käyttö Luokan ilmentymät voidaan tallettaa taulukkoon samoin kuin muuttujat Esimerkki talletetaan taulukkoon opintojaksojen.
Kontrollirakenteet laajemmin
Aihe: J2ME Log4J Esittäjä: Lokki-projekti Pvm: Väliesittely.
1 © Jukka Juslin Luokat, attribuutit ja metodit Yleistietoa: seuraavalla koulutusviikolla tarkempi käsittely.
Ohjelmointi 1. toinen luento1 Taulukot n Kiinteät taulukot: alkioiden määrä tiedetään Dim intCount(12) As Integer 0 indeksit saavat arvoja 0-12 (Option.
14. Poikkeukset Sisällys Johdanto poikkeuksiin. Poikkeusten käsittely: − Poikkeusten käsittely paikallisesti. − Poikkeusten heittäminen. Exception.
Ohjausrakenteet Määräävät ohjelmakoodin suoritusjärjestyksen Ehtolause if – else on muotoa if (lauseke) lause1 else lause2 Jos lauseke on tosi, niin suoritetaan.
Ohjelmassa tänään Ohjelmointimallit Pseudokieli Modulaarisuus.
String-vertailusta ja Scannerin käytöstä (1/2)
1. Omat operaatiot.
2. Taulukot.
17. Javan omat luokat.
Scala Collections.
7. Hyvä ohjelmointitapa..
13. Loogiset operaatiot.
Toisto Toistolausekkeet for, while(ehto){…} ja do {…} while(ehto)
10. Javan ohjausrakenteet
16. Ohjelmoinnin tekniikkaa
14. Hyvä ohjelmointitapa.
11. Javan valintarakenteet
12. Javan toistorakenteet
2. Taulukot.
12. Javan toistorakenteet
7. Hyvä ohjelmointitapa..
Kontrollirakenteet laajemmin
13. Loogiset operaatiot.
Ohjelman perusrakenteet
12. Javan toistorakenteet
4. Luokan testaus ja käyttö olion kautta
16. Ohjelmoinnin tekniikkaa
Esityksen transkriptio:

Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto

Aliohjelmat Ohjelman osia Kokoelma koodirivejä Saman tehtävän suoritus useaan kertaan ohjelman ajon aikana Säästää vaivaa kirjoittamiselta Järkevämpää koodaamista

Aliohjelma: esimerkkejä Tykkipelissä nappia painettaessa ammus lähtee Korttipelissä kortti käännetään aina samalla tavalla. Autopelissä auto kääntyy aina samalla tavalla (renkaat kääntyvät, suunta muuttuu jne.)

Esimerkki aliohjelmasta Kaksi palloa

Aliohjelmat koodissa

Aliohjelmat ja suoritusjärjestys ”Pääohjelma” LoadContent kutsuu aliohjelmia Aliohjelmien kirjoitusjärjestyksellä ei ole väliä

Esimerkki aliohjelmasta String yhdista (String jono1, String jono2) { String yhdiste = jono1 + jono2; return yhdiste; } Palautusarvon tyyppi Aliohjelman nimi Parametrit

Esimerkki aliohjelmasta (jatkuu) Aliohjelmaa voidaan kutsua pääohjelmasta protected override void LoadContent() { String jono1 = ”Antti-”; String jono2 = ”Jussi”; Yhdistetty_jono = yhdista(jono1, jono2); } String yhdista (String jono1, String jono2) { String yhdiste = jono1 + jono2; return yhdiste; } Millainen on yhdistetty jono?

Aliohjelmat Aliohjelmalla ei ole pakko olla palautusarvoa void PiirraYmpyra(double sade) { // Luodaan ympyrä ja lisätään se näytölle } Myöskään parametreja ei ole pakko olla, mutta sulut on jätettävä int AnnaSatunnaisluku() { return RandomGen.NextInt(0,100); }

Ohjausrakenteet Ohjausrakenteet ovat lauseita, jotka vertailevat kahta tai useampaa arvoa toisiinsa Voidaan hallita ohjelman kulkua ja ratkaista monimutkaisempia ongelmia

If/else-ehtolause Käytetään tarkistamaan, onko jokin asia totta vai ei Palauttaa totuusarvon (true tai false) int luku = 2; if(luku > 2) { // Suoritetaan jos luku on suurempi kuin 2 } else { // Suoritetaan jos ehto ei ole suurempi kuin 2 }

If/else-ehtolause string nimi = ”Pekka”; if(nimi == ”Antti-Jussi”) { // Ehto on totta } else { // Ehto ei ole totta }

For-silmukka Oletetaan, että haluat luoda kolme palloa pelikentälle Pallo p1 = new Pallo(); Pallo p2 = new Pallo(); Pallo p3 = new Pallo(); Level.Objects.Add(p1); Level.Objects.Add(p2); Level.Objects.Add(p3); Entä jos palloja haluttaisiinkin 100?

For-silmukka (jatkuu) Kun ohjelmassa on toistettavia asioita, käytä for- silmukkaa for (int i = 0; i < 100; i++) { Pallo p = new Pallo(); Level.Objects.Add(p); } for-lause alkaa lauseen alkuarvo ehto, jonka toteutuessa silmukkaa jatketaan Lause, joka suoritetaan jokaisen kierroksen päätteeksi