FunktiottMyn1 Funktiot Funktiot voidaan jakaa –Kirjastofunktioihin, jotka ovat valmiina kaikkien käytössä. Erikoisempien kirjastofunktioiden käyttöönotto.

Slides:



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

Tämä on SUUNTA-työkalun käyttöön opastava diaesitys
Olio-ohjelmoinnin perusteet luento 3: Muuttujista ja funktioista Sami Jantunen LTY/Tietotekniikan osasto.
@ Leena Lahtinen Helia TIETO JA TIETOKONEOHJELMA  TIETOKONEOHJELMA KÄSITTELEE TIETOJA  TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA.
© Jukka Harju, Viittausmuuttujat. © Jukka Harju, Viittaukset •Viittausmuuttuja sisältää tiedon siitä missä muistipaikassa olio.
JavaScript (c) Irja & Reino Aarinen, 2007
Tärkeämpää kuin arvaatkaan
Julkaisukielet ja - tekniikat tMyn1 Julkaisukielet ja -tekniikat •Verkko-ohjelmointi voidaan jakaa kahteen osaan: asiakaspuolen ja palvelinpuolen ohjelmointiin.
Rakenteinen ohjelmointi
EXtensible Markup Language
Rakenteinen ohjelmointi
Johdetun luokan määrittely tMyn1 Johdetun luokan määrittely •Kun johdettu luokka periytetään kantaluokasta, saadaan kantaluokan jäsenet enemmän tai vähemmän.
13. Pakkaukset.
Näytölle tulostaminen. 7.2 Sisällys System.out.println - ja System.out.print -operaatiot. Tulostus erikoismerkeillä. Edistyneempää tulosteiden.
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.
Ohjelman jakaminen useampaan tiedostoon Olio-ohjelmointi (C++) KYAMK, Jarkko Ansamäki 2001.
Poikkeuskäsittely- lohkot tMyn1 Poikkeuskäsittelylohkot try-catch Poikkeustilanteiden käsittelymekanismi toteutetaan varatuilla sanoilla try, throw ja.
TyyppimuunnoksettMyn1 Tyyppimuunnokset Joskus kääntäjän on tehtävä itse päätöksiä, jos ohjelmoija ei ole ajatellut yksityiskohtia: int arvo1=10; long arvo2=25;
Poikkeustenkäsittely  Mitä poikkeustenkäsittely tarkoittaa?  Poikkeuksen käsitteleminen  Poikkeusluokkien hierarkia  Poikkeuksen heittäminen 1.
TIETO JA TIETOKONEOHJELMA TIETOKONEOHJELMA KÄSITTELEE TIETOJA TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA MENETELMILLÄ.
 Tärkeämpää kuin arvaatkaan 1. Et ole ehkä koskaan tarvinnut varmistuksia, mutta… …ennemmin tai myöhemmin se tapahtuu sinullekin. 2PowerPoint harjoitus.
Sami Jantunen LTY/Tietotekniikan osasto
Olioon kohdistuvia perustoimintoja tMyn1 Olioon kohdistuvia perustoimintoja Kopiointimuodostin (copy constructor) alustaa olion tietojäsenet saman luokan.
13. Hyvä ohjelmointitapa (osa 1)
Virtuaaliset jäsenfunktiot tMyn1 Virtuaaliset jäsenfunktiot Virtuaalinen jäsenfunktio on esiteltävä monimuotoisessa kantaluokassa. Virtuaalisen jäsenfunktion.
© Jukka Harju, Jukka Juslin
Funktion esittely eli prototyyppi tMyn1 Funktion esittely eli prototyyppi Funktion esittely (function declaration) kertoo funktion nimen, parametrien tyypit.
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
7. Oliot ja viitteet.
Luokan määrittely class-määreellä tMyn1 Luokan määrittely class-määreellä Luokan määrittely tarkoittaa luokan tietojäsenten esittelyä ja jäsenfunktioiden.
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)
Kuinka tehdä blogi o365:ssä
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.
19. Olio-ohjelmointia Javalla
Lueteltu tyyppitMyn1 Lueteltu tyyppi Lueteltu tyyppi on tietotyyppi, jonka arvot luetellaan erikseen tyypin määrittelyn yhteydessä. Lueteltua tietotyyppiä.
Muuttujat ja vakiottMyn1 Muuttujat ja vakiot PHP-kielen syntaksi on lainattu suurimmaksi osaksi C- kielestä. PHP on erityisesti HTML-dokumenttien sisään.
4. Attribuutit 4.1. Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2.
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.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
Poikkeukset Yleistä Virheeseen varautuminen tarkoittaa sitä, että ohjelmoija huomioi koodia kirjoittaessaan ajonaikaisen virheen mahdollisuuden.
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
@ Leena Lahtinen Toistorakenne Ohjelmassa toistetaan tiettyjä toimenpiteitä monta kertaa peräkkäin Toisto noudattaa sille kuuluvia tarkkoja standardoituja.
Testaus Testaus Testauksella pyritään löytämään virheitä, jotka sitten korjataan. Yksittäinen testi on yleensä ohjelman suoritus (tietyillä.
Lyhyt johdanto CVS:ään (ict1td002 - Ohjelmointitaito)
© 2010 IBM Corporation1 Palautesivun esittely  Palautesivua käytetään pääasiassa palautteen lähettämiseen virastoihin. Palautesivun pitäisi löytyä jokaisesta.
© Jukka Juslin1 Osio2 Olio-ohjelmointi: Merkkijonot eli Stringit Jukka Juslin.
Rinnakkaisuus Järjestelmässä, jossa voi olla useita prosesseja rinnakkain suorituksessa voi tulla tilanteita, joissa prosessien suoritusta täytyy kontrolloida.
Johdetun luokan olion esittely... tMyn1 Johdetun luokan olion esittely ja määrittely Esittelyluokka tarkoittaa olion tunnuksen luokkaa. Määrittelyluokka.
Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto.
Kontrollirakenteet laajemmin
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
1 © Jukka Juslin Luokat, attribuutit ja metodit Yleistietoa: seuraavalla koulutusviikolla tarkempi käsittely.
Ohjausrakenteet Määräävät ohjelmakoodin suoritusjärjestyksen Ehtolause if – else on muotoa if (lauseke) lause1 else lause2 Jos lauseke on tosi, niin suoritetaan.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
String-vertailusta ja Scannerin käytöstä (1/2)
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
5. Kapselointi.
1. Omat operaatiot.
7. Hyvä ohjelmointitapa..
3. Luokat, oliot ja metodit Java-kielessä (Lausekielinen ohjelmointi I ja II –kursseilla opitun kertausta.)
14. Hyvä ohjelmointitapa.
7. Näytölle tulostaminen
13. Loogiset operaatiot.
3. Attribuutit.
4. Luokan testaus ja käyttö olion kautta
Esityksen transkriptio:

FunktiottMyn1 Funktiot Funktiot voidaan jakaa –Kirjastofunktioihin, jotka ovat valmiina kaikkien käytössä. Erikoisempien kirjastofunktioiden käyttöönotto voi vaatia PHP:n asennusvaiheessa joitakin toimenpiteitä, vaikkapa tuki MySQL- tietokantapalvelinta varten. Tällöin ohjelmoija voi käyttää kyseistä tietokantaa tietyllä kokoelmalla kirjastofunktioita. –Käyttäjän määrittelemiin funktioihin, joita jokainen ohjelmoija voi kirjoittaa omaan käyttöönsä.

FunktiottMyn2 Funktion nimitys tulee siitä, että se palauttaa aina jonkin arvon. PHP:ssä arvo palautetaan return-lauseella, joka ei ole pakollinen. Jos return-lausetta ei käytetä, funktio palauttaa arvon NULL.

FunktiottMyn3 Funktio esitellään seuraavan syntaksin mukaan: function funktionNimi($muodollinenParametri1, muodollinenParametri2, …) { echo ”Esimerkki funktiosta ”; return $paluuarvo; }

FunktiottMyn4 Funktion tyyppi määräytyy automaattisesti paluuarvon tyypin mukaan. Funktio saa syötteensä parametrien (kutsutaan myös argumenteiksi kutsun yhteydessä) välityksellä. Jos parametreja ei ole, merkitään pelkät sulkeet. Määriteltyä funktiota kutsutaan (käytetään) funktion nimellä välitettävine parametreineen: … funktionNimi($todellinenParametri1, $todellinenParametri2, …); …

FunktiottMyn5 Funktion kutsussa käytettäviä parametreja kutsutaan todellisiksi parametreiksi ja esittelyssä käytettäviä muodollisiksi parametreiksi. Kutsun yhteydessä todellisten parametrien arvot kopioidaan muodollisille parametreille. Funktion sisällä muutetut arvot eivät siis välity kutsuvaan ohjelmanosaan.

FunktiottMyn6

FunktiottMyn7

FunktiottMyn8

FunktiottMyn9

FunktiottMyn10

FunktiottMyn11

FunktiottMyn12 PHP:ssä on kaksi miltei identtistä funktiota, joilla voidaan sisällyttää osa koodia toisen ohjelman osaksi, funktiot require() ja include(). Olkoot tiedostot uudelleenMukaan.php ja isoKokonaisuus.php (samassa projektissa):

FunktiottMyn13

FunktiottMyn14

FunktiottMyn15

FunktiottMyn16 Parametrin välittäminen viittauksena Funktion todellisten parametrien viittaukset voidaan välittää muodollisille parametreille. Tällöin funktion sisällä käsitellään olennaisesti samojen muistipaikkojen sisältöä, mihin todellisetkin parametrit viittaavat. Näin tehdyt muutokset näkyvät kutsuvassa ohjelmalohkossa. Parametri määritellään viittaukseksi funktion esittelyssä. Merkintä tapahtuu lisäämällä &-merkki muuttujan nimen eteen.

FunktiottMyn17

FunktiottMyn18

FunktiottMyn19

FunktiottMyn20

FunktiottMyn21 Parametrien oletusarvot Funktion esittelyssä parametreille on mahdollista välittää myös oletusarvot. Mikäli kaikille muodollisille parametreille ei anneta oletusarvoja, niin silloin oletusarvojen antaminen on aloitettava oikeasta kulmasta, eikä parametreja saa jättää ”väliin”. Oletusarvon on oltava vakiolauseke.

FunktiottMyn22

FunktiottMyn23

FunktiottMyn24 Staattiset muuttujat Staattiset muuttujat ovat funktioiden sisällä määriteltyjä lokaaleja muuttujia, jotka säilyttävät arvonsa koko ohjelman suorituksen ajan. Näin määriteltyjen muuttujien arvot säilyvät funktion kutsukerrasta toiseen. Staattinen muuttuja määritellään static-avainsanalla, ja samalla muuttujalle voidaan sijoittaa arvo. Tämä sijoitus suoritetaan ainoastaan ensimmäisellä kutsukerralla: static $laskuri=0;

FunktiottMyn25 Seuraavassa esimerkissä nähdään, kuinka funktiossa huonoLaskuri() käytetty tavallinen lokaali muuttuja $eiToimi ei säilytä arvoaan kutsukerrasta toiseen. Funktiossa hyvaLaskuri() määritelty staattinen muuttuja static $toimii säilyttää arvonsa. Funktio isset() palauttaa TRUE, jos parametrina annettu muuttuja on asetettu, eli sille on jo annettu jokin kelvollinen alustusarvo – ei kuitenkaan käytetä sitä nyt seuraavassa esimerkissä:

FunktiottMyn26

FunktiottMyn27

FunktiottMyn28 Funktion paluuarvon käyttäminen Useassa tapauksessa kutsutun funktion halutaan palauttavan jonkin hyödyllisen arvon kutsuvaan osaan. Hyödyllisyys tarkoittaa sitä, että kutsuva osa käyttää paluuarvoa johonkin ”jatkojalostukseen”. Siis pelkästään paluuarvon kaiuttaminen näytölle kutsuvasta osasta ei taida olla riittävä syy palauttaa arvo pääohjelmaan!! Palauttaminen tapahtuu return-komennolla joka siis samalla päättää funktion ja palauttaa ohjauksen kutsuvaan osaan.

FunktiottMyn29 Tässä ei vielä palauteta mitään kutsuvaan ohjelmanosaan:

FunktiottMyn30

FunktiottMyn31 Seuraavassa esimerkissä funktio palauttaa jonkin arvon kutsuvaan osaan, vaikka ei sitä palautettua arvoa sitten käytetä mihinkään sen järkevämpään:

FunktiottMyn32

FunktiottMyn33

FunktiottMyn34 Riittävä syy palauttaa jotakin funktiosta kutsuvaan osaan on paluuarvon käyttäminen johonkin ”jatkojalostukseen”, siis vaikkapa:

FunktiottMyn35

FunktiottMyn36

FunktiottMyn37