Dynaamiset www-sivut scripteillä vbscript ja j(ava)script Seppo Räsänen

Koko: px
Aloita esitys sivulta:

Download "Dynaamiset www-sivut scripteillä vbscript ja j(ava)script. 27.8.2004 Seppo Räsänen"

Transkriptio

1 Dynaamiset www-sivut scripteillä vbscript ja j(ava)script Seppo Räsänen

2 Sivu 2 Sisällys 1. Script-kielet Vbscript Vbscript:n lisääminen web-sivulle Muuttujat, vakiot ja ilmaisut Tapahtumat Scriptin kutsunta lomakkeelta Itsenäiset aliohjelmat ja funktioproseduurit Taulukot Ohjausrakenteet Muuttujien näkyvyys Objektimalli ja sen käyttäminen koodissa CSS-tyylien muuttaminen ohjelmallisesti Poikkeustenkäsittely Tiedon sitominen, data binding Visual Basic 6.0 ja DHTML-projekti Visual Basic 6.0 ja ActiveX JavaScript, Jscript J(ava)script:n lisääminen web-sivulle Kommentit ja muuttujat Operaattorit Taulukot Ohjausrakenteet Funktiot Tapahtumat Objektimalli, sen käyttäminen koodissa sekä this-olio...46

3 Sivu 3 1. Script-kielet Web-sivujen ohjelmointiin on olemassa useita välineitä ja menetelmiä. Sivuille voi ohjelmoida esim. applet-sovelluksia JAVA-kielellä. Java on käännetty ohjelmointikieli, mutta kääntäjän tuottama koodi toimii virtuaalikoneella. Virtuaalinen koodi käännetään selaimessa. Tästä syystä Javaappletit toimivat samalla tavalla eri selaimissa ja eri käyttöjärjestelmissä. Java-appletit käännetään class-tiedostoiksi, jota voidaan käyttää siis web-sivulla. Javascript käyttää tekstipohjaisia komentoja, jotka liitetään osaksi HTML-sivua. Java-applet tulostetaan sivulla olevaan ikkunaan, kun taas Javascriptit voidaan liittää ikkunaan mihin kohtaan vaan. Javascript sopii yksikertaisten websovellusten tekoon sekä vuorovaikutteisten ominaisuuksien tekoon web-sivulla. Javalla voi tehdä laajempia ohjelmia, vrt. Corel WordPerfect. Edellisessä kappaleessa verrattiin Javaa ja Javascriptiä. Javascritin on kehittänyt Netscape Communications Corporation. Javascriptille on kilpailijana Microsoftin Jscript ja Vbscript kielet. Jscript kieli on vastaavanlainen kuin Javascriptissä, Vbscript-kieli perustuu Visual Basic ohjelmointikieleen Vbscript Vbscript:n lisääminen web-sivulle Vbscript-koodi lisätään haluttuun paikkaan www-sivua. Koodi kirjoitetaan <SCRIPT>-tagiin, attibuuttia language kertoo käytettävän kielen. HUOM! Vbscript-koodattu script ei toimi kuin Microsoftin IE4 tai uudemmalla selaimella.

4 Sivu 4 Kuva 1. Esimerkki scriptin liittämisestä web-sivulle. Esimerkissä näytetään msgbox-funktion avulla viesti Hello World, kun avataan ko. sivu selaimelle Muuttujat, vakiot ja ilmaisut Vbscript sisältää vain yhden tietotyypin, variant. Tietotyyppi voi sisältää millaista tietoa vain. Muuttjan tietotyyppi määräytyy muuttujan ensimmäisen sijoituksen yhteydessä. Alla luettelo variant-tietotyypin sisällöstä. Alatyyppi Selite Empty muuttujaa ei ole alustettu - sisältää 0 numerona tai null-merkkijonon ("") Null muuttujia ei tarkoituksellisesti sisällä tietoa Boolean muuttujan arvo on joko kyllä tai ei (True tai False) Byte muuttujan arvona on kokonaisluku välillä Integer muuttujan arvona on kokonaisluku välillä -32,768-32,767 Currency muuttujan arvo on välillä -922,337,203,685,477, ,337,203,685,477,5807 Long muuttujan arvona on kokonaisluku välillä -2,147,483,648-2,147,483,647 Single muuttujan arvona on yksinkertainen tarkkuuden liukuluku välillä E E -45 negatiivisille numeroille ja E E 38 positiivisille numeroille. Muuttaja voi myös olla 0. Double muuttujan arvona on kaksoistarkkuuden liukuluku välillä E E -324 negatiivisille numeroille ja 4.941E E 308 positiivisille numeroille. Muuttaja voi myös olla 0. Date (Time) muuttujan arvona on numero, joka kuvaa päivämäärää välillä 1/1/ /31/9999, suljettuna merkeillä #, kuten #12/31/97#. String muuttuja koostuu merkkijonosta - mikä voi olla pituudeltaan niinkin pitkä kuin 2 biljoonaa merkkiä - suljettuna yksin- tai kaksinkertaisilla lainausmerkeillä, kuten 'Hello There' tai "Hello There". Object muuttajan arvona on 'osoitin" objektiin kuten ActiveX-kontrolli tai yksi dynaamisen HTML:n objekti.

5 Sivu 5 Error muuttujan arvona on numero, joka viittaa määrättyyn virheviestiin. Kuva 2. Esimerkki muuttujien käytöstä. Kuvan 10 esimerkissä on kaksi string-tyypissä muuttujaa enimi ja snimi. Ika-muuttuja saa arvokseen byte-tyyppisen tiedon. Tanaan-muuttujassa on date-tyyppinen tieto. Muuttujien tiedot tulostetaan document.write lauseen avulla. Huom! Tutustu selaimella lähdekoodiin, lähdekoodi on scriptijä käytettäessä kuvan mukaista. Vbscript-kieli tuntee tyypilliset operaattorit. Aritmeettiset operaattorit (^, -, *, /, \, Mod, +, &), vertailuoperaattorit (=, <>, <, >, <=, >=, Is) ja loogiset operaattorit (Not, And, Or, Xor, Eqv, Imp).

6 Sivu Tapahtumat Tapahtumilla tarkoitetaan käyt täjän aihauttamia toimia, joka laukaisee ohjelman toiminnan. Esimerkiksi hiiren vieminen kohteen päälle tai kohteeen kaksoisnapauttaminen ovat tapahtumia. Alla luettelo tapahtumista. onafterupdate onbeforeunload onbeforeupdate onblur onbounce onclick ondataavailable ondatasetchanged ondbclick ondragstart onerror onerrorupdate onfinish onfocus onhelp onkeypress onkeyup onload onmousedown onmousemove onmouseover onmouseup onreadystateshange onresize onrowenter onrowexit onscroll onstart onsubmit onunload Kuva 3. Esimerkki tapahtumien kutsumisesta. Tapahtuma voidaan koodata kahdella tavalla. Kuvan 3 esimerkissä ensimmäinen scripti on koodattu normaalisti Sub-lauseen avulla (vrt. Visual Basic). HMTL-koodissa määritetään jollekin

7 Sivu 7 osalle (esimerkissä teksti) ID-määritys. Tämän perusteella voidaan objektille kirjoittaa johonkin tapahtumaan koodia <SCRIPT> </SCRIPT> tagien väliin. Tällä tavoin voi samassa <SCRIPT>tageissa olla useampikin Sub-tapahtuma. Toinen tapa kirjoittaa objektille koodia on käyttää <SCRIPT FOR= objekti EVENT= tapahtuma LANGUAGE= VBScript > syntaksia. Tästä on esimerkki kuvassa 11, jossa alempi scripti on kohdistettu olio2:n kaksoisnapautukselle. Tällä tavoin voidaan kirjoittaa vain yksi tapahtuma <SCRIPT>-tagiin Scriptin kutsunta lomakkeelta Kuva 4. Scriptin kutsunta lomakkeelta, scripti viittaa lomakkeen objektin ominaisuuksiin. Kuva 5. Scriptin kutsunta ilman lomaketta, scripti viittaa objektin ominaisuuteen. Kuvan 4 esimerkissä on rakennettu lomake, jossa on tekstikenttä ja painike. Scriptissä on koodattu painikkeen napsautustapahtuma. Kun lomakkeella olevaan tekstikentän ominaisuuteen viitataan, niin silloin käytetään notaatiota lomake.olio.ominaisuus esim. frmlomake.txtteksti.value. Kuvan

8 Sivu 8 13 esimerkissä, jossa lomaketta ei ole, viittaaminen perustuu notaatioon olio.ominaisuus esim. txtteksti2.value Itsenäiset aliohjelmat ja funktioproseduurit Vbscript-kieli sisältää reilut 80 funktiota. Funktioiden syntaksi on Funktionimi(argumentit), esim. Ucase( ville ) muuttaa ville-merkkijonon suuriksi kirjaimiksi VILLE. Funktiot ovat tuttuja Visual Basicistä. Kuten Visual Basicissä, niin Vbscript:ssä voi tehdä omia aliohjelmia ja kutsua niitä. Aliohjelma voi olla Sub-tyyppinen lausealiohjelma tai Function-lauseella alkava funktio. Lausealiohjelmalla ja funktiolla on kaksi tyypillistä eroa. Funktio palauttaa nimessään yhden vastauksen, kun lausealiohjelma palauttaa muuttujissaan vastauksen. Jos ollaan tarkkoja, niin funktio palauttaa myös muuttujissaan arvoja, riippuen miten muuttujat ovat määritelty. Toinen ero on funktion ja lausealiohjelman kutsunnassa. Selvinnee pian esimerkeistä ja syntaksiesitelystä. <SCRIPT>-tagi voi sijaita HTML-koodissa missä kohtaa vain. Lausealiohjelman syntaksi on Sub aliohjelma(argum1, argum2,.) Lauseet.. End Sub Lausealiohjelmaa kutsutaan aliohjelma(muuttuja1, muuttuja2,..). Nyt lausealiohjelma on tehnyt toiminnan ja/tai sijoittanut muuttujille arvot, joita voidaan käyttää kutsuvassa aliohjelmassa. Kuva 6. Esimerkki aliohjelmasta ja funktiosta. Script sijaitsee BODY-osassa. Aliohjelma tulostaa MsgBox-funktiolla käyttäjän määrittämän viestin (teksti ja otsake). Funktio laskee kahden annetun päivämäärän erotuksen.

9 Sivu 9 Kuva 7. Esimerkki lausealiohjelman kutsunnasta. Aliohjelman parametrejä ei käytetä kutsuvassa ohjelmassa muuta kuin tiedon välittämiseen aliohjelmalle. Funktion syntaksi on Function fnimi(argum1, argum2,.) Lauseet End Function Funktiota kutsutaan arvo = fnimi(muuttuja1, muuttuja2, ). Arvo on muuttuja, joka saa funktion palauttaman arvon. Kuva 8. Esimerkki funktion kutsunnasta. Funktion määritys on kuvassa 6. Kuva 9. Euromuunnin funktio. Funktiota voidaan kutsua suoraa HTML-koodin avulla tehdystä objektista. Kuvassa 18 on koodiesimerkki, jolla kutsutaan kuvan 17 funktiota. Syntaksi esim. tekstikentästä kutsuttaessa on

10 Sivu 10 <INPUT TYPE= text NAME = objektinimi TAPAHTUMA= toinen_objekti.ominaisuus = funktionimi(argumentit) >. Kuva 10. Funktion kutsunta tekstikentäntästä poistuttaessa tapahtumasta Taulukot Kuva 11. Esimerkki taulukon käytöstä. Vari-nimiseen tauluun sijoitetaan eri värejä (merkkijonoja). Dokumentin väriksi valitaan satunnaisluvun mukaisessa taulukon indeksikohdassa oleva väriarvo. Vbscript-kielessä taulukot määritetään Dim lauseen avulla. Taulun nimen perässä oleva luku kertoo suurimman indeksin, indeksointi alkaa nollasta. Taulukon alkioihin viitataan indeksin avulla. Moniulotteisten taulukoiden määrittelyssä ja viittaamisessa erotetaan ulottuvuudet toisistaan pilkulla, esim. taulu(5,6) on kaksi ulotteinen taulu, jossa alkioiden määrä on 6*7 = 42.

11 Sivu Ohjausrakenteet Ehto-rakenne Vbscript-kielessä ehtorakenteen syntaksi on (Ehtorakenteessa ei tarvitse olla välttämättä ElseIfhaaraa tai Else-haaraa). If ehto1 Then lauseet1 ElseIf ehto2 Then lauseet2 Else lauseet 3 End If Kuva 12. Esimerkki ehtorakenteen käytöstä, jossa arvotaan luku ja määritetään, onko se parillinen vai pariton.

12 Sivu 12 Valinta-rakenne Vbscript-kielessä valintarakenteen syntaksi on Select Case muuttuja Case arvo1 lauseet 1 Case arvo2 lauseet 2.. Case Else lauseet n End Select Kuva 13. Esimerkki valintarakenteen käyttämisestä.

13 Sivu 13 Silmukat Vbscript-kielessä on useita silmukka rakenteita: FOR NEXT, DO WHILE LOOP, WHILE WEND. Do While -silmukkarakenne on myös Do Until rakenteessa, Do Not Until on sama kuin Do While, ja päinvastoin. For silmukan syntaksi on For muuttuja=alkuarvo to loppuarvo Step askellus lauseet Next Kuva 14. Esimerkki For-silmukan käytöstä. Do While silmukan syntaksi on Do While ehto Lauseet Loop Kuva 15. Esimerkki Do While silmukan käytöstä, jossa lajitellaan kymmenalkioinen apuniminen taulukko kuplalajittelulla.

14 Sivu 14 While Wend silmukan syntaksi on While ehto lauseet Wend Kuva 16. Esimerkki While-Wend silmukan käytöstä, jossa kirjoitetaan kymmenen satunnaislukua HTML-tagien avulla taulukkomuotoon web-sivulle Muuttujien näkyvyys Vbscript:ssä muuttujat näkyvät koko dokumentissa tai paikallisesti ko. aliohjelmassa tai funk tiossa. Globaali muuttuja määritellään <SCRIPT> tagiin aliohjelman tai funktion ulkopuolelle. Muuttujan voi määritellä myös toisessa <SCRIPT>-tagissa. Lokaali muuttuja määritellään ja käytetään aliohjelman tai funktion sisällä. Lisäksi muuttujat voidaan määritellä DIM- lauseen lisäksi GLO- BAL- tai PRIVATE-lauseella. Alla olevassa kuvassa on esimerkki lokaalista ja globaalista muuttujista.

15 Sivu 15 Kuva 17. Esimerkki globaalien ja lokaalin muuttujan käytöstä Objektimalli ja sen käyttäminen koodissa Melkein kaikki web-sivuilla ja selaimessa olevat elementit perustuvat objektimalliin olioihin. Objektihierarkian huipulla on window-olio. Window-objektin eräät oliot erottuvat selvästi selaimen näytöltä, osaa objekteista on hankala havaita ilman lähdekoodia. Liitteessä 2 on kuvattu DHTML:n yleisesti käytetyt objektit ja niiden hierarkia. Osa objekteista on kokoelmia (collection), sillä ne sisältävät useita olioita (vrt. Visual Basic). Tällainen kokoelma on esimerkiksi links, joka viittaa kaikkiin web-sivulla oleviin linkki-olioihin. Objektimallin window-oliosta hierarkiassa alapuolella olevat oliot ovat: location-objekti sisältää tietoa nykyisen sivun URL-osoitteesta. Sitä käytetään navigointiin. frames-kokoelma sisältää sivuston kehykset. history-objekti sisältää tiedot, millä sivuilla on viimeksi käyty. navigator-objekti sisältää tiedot käyttäjän selaimesta; selaimen nimi ja versionumero. event-objekti pitää kirjaa tapahtumien tilasta. Tämän avulla määritellään, mikä elementti aiheutti tapahtuman. screen-objekti sisältää tietoja näytön asetuksista.

16 Sivu 16 document-objekti sisältää tiedot sen hetkisen sivun elementeistä. Kuva 18. Esimerkkejä window-objektin olioista (Lähde: Microsoft Internet Explorer Webohjelmointi). Document-objektin olioihin viitataan pistenotaatiolla. Alla olevassa kuvassa on muutama esimerkki, joissa viittaukset ovat kokoelmiin. Kuva 19. Esimerkkejä document-objektin kokoelma-olioista (Lähde: Microsoft Internet Explorer Web-ohjelmointi). Kokoelmassa haluttuun olioon viitataan pistenotaation avulla. Viittaaminen voidaan tehdä indeksien avulla tai jos oliot on nimetty, niin nimien avulla. Kuvassa 28 on esimerkki indeksin

17 Sivu 17 avulla viittaamisesta, missä ensimmäinen olio saa indeksin 0 ja seuraavat samaan kokoelmaan kuuluvat oliot juoksevan numeron. Kuvassa 21 on esimerkki nimettyihin olioihin viittaamisesta. Kuva 20. Esimerkkejä document.forms-objektikokoelman olioista (Lähde: Microsoft Internet Explorer Web-ohjelmointi). Kuva 21. Esimerkkejä document.forms-objektikokoelman olioista (Lähde: Microsoft Internet Explorer Web-ohjelmointi). Toinen tapa viitata web-sivulla oleviin olioihin on käyttää all-kokoelmaa. All-kokoelmalla voidaan viitata kaikkiin www-sivulla oleviin HTML-elementteihin. All-kokoelmalla voidaan viitata indeksoidusti tai nimetysti. Esimerkki indeksoidusta viittaamisesta on document.all(0) tai

18 Sivu 18 document.all.tags( H1 ).item(0) viittaus, esimerkki nimetystä viittaamisesta on document.all.tags( paaotsikko ). Kuvissa esimerkkejä all-kokoelmaan viittaamisista. Kuva 22. Esimerkkejä document.all-objektikokoelman olioista, indeksoitu viittaaminen (Lähde: Microsoft Internet Explorer Web-ohjelmointi). Kuva 23. Esimerkkejä document.all-objektikokoelman olioista, indeksoitu viittaaminen (Lähde: Microsoft Internet Explorer Web-ohjelmointi).

19 Sivu 19 Kuva 24. Esimerkkejä document.all-objektikokoelman olioista, nimetty viittaaminen (Lähde: Microsoft Internet Explorer Web-ohjelmointi). Objektin ominaisuus on sen jokin yksilöllinen piirre, esim. tekstikehysolion txtteksti ominaisuus on value. Olion ominaisuuteen viitataan pistenotaatiolla olio.ominaisuus eli esim. txtteksti.value. Olion ominaisuus voidaan lukea muuttujaan, toisaalta olion ominaisuuden arvoa voi muuttaa ohjelmallisesti. Poikkeuksena ovat olion ominaisuudet, joilla on vain lukuoikeus (read-only, vrt. Visaul Basic). Monilla web-sivun objekteilla on vbscript:llä ohjattavia metodeja. Metodin avulla olio voi tehdä jotain tai se on käytös, jonka se voi suorittaa itsekseen. Metodin syntaksi on Visual Basicistä tuttu olio.metodi(). Metodista esimerkkinä on document.write(teksti), joka kirjoittaa teksti-muuttujan tiedon web-sivulle. Olion tapahtumista oli kappaleessa CSS-tyylien muuttaminen ohjelmallisesti Kappaleessa 1 käsiteltiin tyylejä. Tyylejä ei muutettu ohjelmallisesti. Vbscriptin avulla voi muuttaa ohjelmallisesti web-sivustolla olevaa tyyliä. Tyylien muuttamisessa on seuraavat syntaksit. 1. olio.ominaisuus = arvo - olion ominaisuuden muuttaminen 2. olio.style.cssominaisuus = arvo - tyylin muuttaminen koodilla 3. olio.luokkanimi = arvo - tyylin muuttaminen tyyliluokan avulla

20 Sivu 20 Kuva 25. Esimerkki upotetusta tyylistä, jossa on myös luokkamääritys. Kuva 26. Otsake, jota muokataan ohjelmallisesti tyylien avulla. Kuva 27. Esimerkki syntaksin 1 mukaisesta tyylin muuttamisesta ohjelmallisesti. Viittaamisessa käytetään document.all objektia. Kuva 28. Esimerkki syntaksin 1 mukaisesta tyylin muuttamisesta ohjelmallisesti. Viittaamisessa käytetään objektin nimeä.

21 Sivu 21 Kuva 29. Esimerkki syntaksin 2 mukaisesta tyylin muuttamisesta ohjelmallisesti. Kuva 30. Esimerkki syntaksin 3 mukaista tyylin muuttamisesta ohjelmallisesti. Tyylimääritys, jota käyteään, on kuvassa 25. Ohjelmallisen tyylien muuttamisen avulla voidaan standardoita sivuston tyylien muuttumista. Tyypillisesti sivustossa voi olla esim. linkkiluetteloita, joita halutaan korostaa hiiren osoittaessa kaikkialla samalla tavalla. Alla on esimerkki standartoimisesta. <html> <head> <title>tyylin muutoksen standartointi</title> <style type="text/css"> LI {font: 14pt/16pt "Times New Roman"} LI.kursiivi {font: 12pt "italic"} LI.sinikelta {background-color: "yellow"; font-color:"blue"} </style> <script language="vbscript"> Sub document_onmouseover() ' apu-muuttujaan hiiren osoittaman linkin tagi apu = window.event.srcelement.tagname ' linkin tutkinta If apu = "A" Then tagi = window.event.srcelement.sourceindex document.all(tagi).classname = "sinikelta" End if End sub Sub document_onmouseout() ' linkin tutkinta If apu = "A" Then tagi = window.event.srcelement.sourceindex

22 Sivu 22 document.all(tagi).classname = "" End if End sub </script> </head> <body> <h1>tyylin muutoksen standartointi</h1><p> Hyperlinkin korostaminen <p> <a href=" kaupunki</a><br> <a href=" <a href=" <a href=" haku</a><br> </body> </html> Poikkeustenkäsittely Poikkeusten käsittelyllä tarkoitetaan tilanteita, joissa ohjelma kaatuu, esim. pyrit jakamaan nollalla. Poikkeusten käsittelyssä käytetään tyypillisesti käyttäjäviestinnässä jotakin vuorovaikutetta, esim. msgbox()-funktio. Vbscript sisältää virheenkäsittelyä varten seuraavat lauseet. On Error käynnistää virheenkäsittelyn. On Error Resume Next -lauseella suoritetaan virheen aiheuttamasta koodirivistä seuraava koodirivi. Err-objektin avulla voi selvittää mm. virhenumeron ja sisällöllisen selityksen. Err.Raise generoi virheilmoituksen.

23 Sivu 23 Kuva 31. Nelilaskin sovelluksen käyttöliittymän HTML-koodi. Laskentatoiminta tehdään laskinfunktion avulla. Kuva 32. Nelilaskin sovelluksen laskin-funktio. Laskin funktio sisältää poikkeuskäsittelyn, toteutus On Error Resume Next lauseella.

24 Sivu Tiedon sitominen, data binding Web-sivuilla on tyypillistä tuoda tietoa jostakin tietolähteestä. Tässä tutustutaan tiedon tuomista yksinkertaisesta tekstitiedostosta. Tiedon tuomiseen tietokannasta tutustutaan kappaleessa 3. Tiedon sitomiseen käytetään ActiveX-komponettia, jonka nimi on Tabular Data. Tabular Data komponentti käsittelee sarakkeista tietoa. Kuva 33. Sarakkeinen tiedosto, joka on talletettu Access-sovelluksen taulusta tekstitiedostoksi. Tiedostossa on Sukunimi, Etunimi, Kaveruus, Puhelin ja sarakkeet (kentät). Tiedostossa on kymmenen henkilön tiedot (tietueet). Tabular Data komponentin avulla voidaan tekstitiedostosta lukea sarakkeinen tieto ja tulostaa se www-sivulle halutulla tavalla. Tiedosta voidaan tulostaa kerralla kaikki vaikkapa taulukkoon tai tulostaa yksittäinen tietue, tietueesta toiseen voidaan liikkua vaikkapa painikkeiden avulla. Tekstitiedostossa olevasta tiedosta voidaan näyttää jonkin kriteerin mukaiset tiedot, esim. kriteerinä voi olla kaveruus (kaikki/työ/koti).

25 Sivu 25 Kuva 34. Tekstitiedoston sisältö web-sivulla, tekniikkana tiedon sitominen. Web-sivu, joka näyttää tiedoston tiedot, sisältää Tabular Data ActiveX-komponentin. Tämä komponentti tulee mm. IE4-version asennuksen yhteydessä. Tämän objektin voi sijoittaa websivulle usealla eri www-sivujen editoriohjelmalla. Web-sivulla objekti näyttää alla olevan kuvan mukaiselta HTML-kieleltä. Kuvassa olevassa objektissa on kaksi parametriä. DataUrl-parametrillä kerrotaan, mistä tiedostosta tiedot noudetaan. Objektin nimi (ID) on potpuri, tätä nimeä käytetään myöhemmin ohjelmakoodissa. Kuva 35. Tabular Data komponentti www-sivulla. Tieto kytketään web-svulle HTML-tagien avulla. DATASRC määrittää tietolähteenä käytettävän objektin nimen, esim. #potpuri. DATAFLD määrittää kentän tietolähteestä, josta tietoa tuodaan. DATAFORMATS määrittää tiedon käsittelyn eli käsitelläänkö tietoa tekstinä vai HTML:nä. DATAPAGESIZE määrittää tietuteiden enimmäismäärän, joka voidaan näyttää ruudulla yhdellä kertaa.

26 Sivu 26 Seuraavat HTML tagit tukevat DATASRC attribuuttia: <A>, <APPLET>, <BUTTON>, <DIV>, <FRAME>, <IFRAME>, <IMG>, <LABEL>, <MARQUEE>, <OBJECT>, <PARAM>, <SELECT>, <SPAN>, <TABLE> ja <TEXTAREA>. Seuraavat HTML tagit tukevat DATAFLD attribuuttia: <A>, <APPLET>, <BUTTON>, <DIV>, <FRAME>, <IFRAME>, <IMG>, <LABEL>, <MARQUEE>, <OBJECT>, <PARAM>, <SELECT>, <SPAN> ja <TEXTAREA>. Seuraavat HTML tagit tukevat DATAFORMATAS attribuuttia: <BUTTON>, <DIV>, <LABEL>, <MARQUEE>, <PARAM> ja <SPAN>. Vain <TABLE>-tagi tukee DATAPAGESIZE attribuuttia. Kuva 36. Esimerkki taulukkorakenteesta, jossa hyödynnetään tekstitiedostossa olevia tietoja. Kuvasta huomataan <table> -tagissa datasrc-attribuutin käyttäminen sekä <td>-tagin sisälle tuodaan tieto datafld-attribuutin avulla. Kuvassa 36 on myös kuvattuna hakukriteerin tekeminen ja lajittelun tekeminen. Hakukriteeri määritetään <select name="suodin">-tagin avulla ja lajittelussa käytetään painikkeita <input type="button" value="nimijärjestys" onclick="ali_nimi()"> ja

27 Sivu 27 <input type="button" value="kaveruusjärjestys" onclick="ali_kaveruus()">. Hakukriteerin ja lajittelun toimiminen vaatii vbscriptejä. Lajittelu tehdään SortColumnominaisuuden avulla, jossa määritetään merkkijonona kentän, joiden perusteella lajitellaan. Esimerkiksi kaveruuden mukainen lajittelu tapahtuu lauseella potpuri.sortcolumn="kaveruus; Sukunimi; Etunimi". Tämän lauseen jälkeen pitää lukea tiedot www-sivulle uudestaa Reset()- metodin avulla. Hakukriteerissä, suodattamisessa käyttäjä valitsee avautuvasta luettelosta haluamansa kriteerin. Tämä valinta luetaan alla olevassa kuvassa valinta-muuttujalle koodilla valinta=suodin.options(suodin.selectedindex).text. Kun valinta muuttuu, niin silloin suoritetaan suodin_onchange tapahtuma. Tapahtumassa määritetään potpuri.filtercolumn="kaveruus" lauseella, minkä kentän mukaan suodatus tehdään. Lauseella potpuri.filtercriterion="=" määritetään, millainen on suodatuksen operaattori. potpuri.filtervalue=valinta lause määrittää suodatuskentässä olevan tiedon ja potpuri.reset() lause päivittää tiedon näytölle. Kuva 37. Lajittelussa ja hakukriteerissä käytettävät vbscript-koodit.

28 Sivu 28 Jos halutaan näyttää tiedostosta yksi tietue kerrallaan, niin ohjelmakoodi muuttu hiukan. Kuvassa 38 kuvataan käyttöliitymän tekeminen. Käyttöliittymässä käytetään <table>-tagia, mutta siihen ei laiteta datasrc-attribuuttia. Datasrc-attribuutti tuo kaikki tiedot taulukkoon, tässä tehtävässä on tarkoituksen tuoda vain yksi tieto. Datasrc-määritys viedäänkin nyt <td>-tagien sisälle. Ohjelmakoodissa koodataan painikkeiden toiminta vbscript:n avulla. Kuvassa 47 on kuvatt koodit. objekti.recordset.absoluteposition palauttaa sen hetkisen sijainnin tietolähteessä, 1 tarkoittaa ensimmäistä tietuetta objekti.recordset.recordcount palauttaa tietolähteen tietueiden määrän objekti.recordset.movefirst() metodilla siirrytään tietolähteessä ensimmäiseen tietueeseen objekti.recordset.movenext() metodilla siirrytään tietolähteessä seuraavaan tietueeseen objekti.recordset.movelast() metodilla siirrytään tietolähteessä viimeiseen tietueeseen objekti.recordset.moveprevious() metodilla siirrytään tietolähteessä edelliseen tietueeseen Kuva 38. Käyttöliittymäkoodi sovellukseen, joka näyttää sarkaintiedostosta yhden tietueen kerrallaan. Käyttöliittymässä on neljä painiketta, jotka kutsuvat aliohjelmia.

29 Sivu 29 Kuva 39. Yhden tietueen näyttämiseen liittyvät koodit Visual Basic 6.0 ja DHTML-projekti Microsoft Visual Basic 6.0 Pro versiolla voi tehdä DHTML-projektin (DHTML Application). Tällä DHTML-projektin avulla voidaan rakentaa webissä toimiva sovellus. Selainvaatimuksena on Microsoftin selain. Ohjelmointi on normaalin sovelluksen tekemisen kaltaista, sovelluksen tekemisen käyttöliittymä on hiukan toisenlainen. VB:ssä sovellus käännetään dll-tiedostoksi. Dll- tiedosto rekisteröityy käännöksen yhteydessä Windows:n rekisteriin (saa classid- identifikaatin). Jos samaa sovellusta halutaan käyttää jollakin toisella koneella, esim. palvelimella, tarvitaan tehdä sovelluksesta asennuspaketti. Tämän asennuspaketin avulla voidaan dll-tiedosto asentaa palvelimelle ja samalle se identifioituu. Identifioitu dll-tiedosto voidaan liittää web-sivulle.

30 Sivu 30 Kuva 40. BMI-painoindeksin laskeva sovellus. Toteutettu Visaul Basicin DHTML-projektina. Kuva 41. Kuvan 40 sovellus Visual Basicin kehitysympäristössä. Private Function Laske_onclick() As Boolean BMI.Value = Format(CDbl(paino.Value) / (CDbl(pituus.Value) * CDbl(pituus.Value)), "0.00") End Function Yllä olevalla ohjelmakoodilla lasketaan painoindeksi. Laske BMI painikeelle on määritetty IDominaisuuteen Laske-arvo (vertaa olion nimi VB:ssä). Vastaavalla tavalla on nimetty BMI, paino ja pituus kentät. Painikkeen tapahtumat ovat funktioita, kun normaalissa VB-projektissa ne ovat Private Sub lausealiohjelmia.

31 Sivu Visual Basic 6.0 ja ActiveX Visaul Basicillä rakentaa ActiveX-komponetteja ja liittää niitä web-sovellukseen. Kappaleessa oli esimerkki Tabular Data komponentin käytöstä. Tabular Data on yksi esimerkki ActiveX-komponentista. ActiveX lähti kehittymään OLE-tekniikasta (Object Linking and Embedding). OLE tekniikan avulla voidaan käyttää sovelluksesta toista sovellusta, avaamatta sitä (OLE 2-version tekniikka). OLE tekniikan jälkeen Microsoft kehitti COM-tekniikan (Component Object Model). Internetohjelmoinnin kehittämisen myötä Microsoft julkaisi ActiveX tekniikan. ActiveX viittaa joukkoon COM-perusteisia tekniikoita hajautetulle tietojenkäsittelylle. ActiveX:n avulla helpotetaan ja joustavoitetaan web-sovelluste tekoa. ActiveX komponenttejä voi käyttää monenlaisessa ohjelmiostoprojektissa. Tällä tavoin ohjelmakoodin siirrettävyys projektista toiseen helpottuu. ActiveX-komponentin käyttö selaimessa sisältää seuraavat vaiheet: 1. Ladataan versionumero ja lyhyt kuvaus komponentista 2. Selain tarkistaa, onko komponetti ja asennettu 3. Jos ei ole asennettu tai versio on vanhempi, niin komponentti ladataan, asennetaan ja ajetaan 4. Jos komponentti on asennettu, se suoritetaan eli komponentti ladataan vain kerran. ActiveX-tekniikkaan liittyy tietoturvariski. Komponentti latautuu työasemalle, joten sen voi ohjemoida tekemään vaikkapa tuhojaan.!!!! ActiveX-tekniikkaa tukee vain Microsoftin selaimet. Netscape-selaimeen on saatavissa plug- in sovelluslaajennus, jolla voidaan ajaa ActiveXkomponentteja. Lisäksi komponentit vaativat kovalevyltä tilaa.!!! Visual Basicillä voi tehdä useanlaisia ActiveX-projekteja. ActiveX EXE on ohjelma, joka laajentaa yhden tai useamman ActiveX-komponentin. Tämä komponentti viittaa vain koodiin, se ei vaikuta liittymään ActiveX DLL laajentaa yhden tai useamman komponentin toiminnallisuutta ActiveX Document Exe sovellus voidaan asentaa web-sivustolle toimivaksi ActiveX Document Dll sisältää edellistä tukevaa ohjelmakoodia ActiveX Control on itsenäinen yksikkö, joka sisältää koodin ja käyttöliittumän. Tällöin syntyy OCX-tiedosto/komponentti.

32 Sivu 32 Kuva 42. Esimekki ActiveX-projektista Visual Basic 6.0:ssa. Kuvan 50 ActiveX-komponentti sisältää Laske-painikkeessa koodin. Private Sub Laske_Click() BMI.Text = Format(CDbl(Paino.Text) / (CDbl(Pituus.Text) * CDbl(Pituus.Text)), "0.00") End Sub Kun komponentti on tehty, se käännetään OCX-tiedostoksi. Tätä komponenttia voi käyttää Win32 sovelluksessa tai Web-sovelluksessa. Jos jollakin toisella koneella aiotaan käyttää ko. komponettia, siitä pitää tehdä asennuspaketti vaikkapa Visual Basicin omilla työkaluilla ja asentaa käytettävään koneeseen JavaScript, Jscript Tässä kappeleessa tutustutaan J(ava)script:iin. Tutustuminen ei ole niin laajaa kuin vbscript:ssä, sillä ohjelmoinnin idea on sama (ohjausrakenteisen lauseet erilaisia, vain muutama ero kielessä, oliomalli on melkein sama, jne ). J(ava)script-ohjelmat toimivat sekä Microsoftin kuin Netscapen selaimissa. Vbscript toimi vain Microsoftin selaimessa J(ava)script:n lisääminen web-sivulle Javascript-kielinen koodi kirjoitetaan www-sivulla <SCRIPT> </SCRIPT> -tagien väliin, kuten vbscript-koodi. Koodi voi olla myös erillisessä tiedostossa. Javascript-koodi on C++ kielen kaltaista. Jos selain ei tue Javascript-koodia, niin silloin käytetään koodia, jota selain ei lue. <SCRIPT LANGUAGE="JavaScript"> <! koodia //-->

33 Sivu 33 </SCRIPT> Kuva 43. Esimerkki Javascript-koodista, jossa koodi script-tagien sisällä. Kuva 44. Esimerkki Javascript-koodista, jossa koodi on ulkoisessa tiedostossa (erill.js). Kuva 45. Erillisen tiedoston koodi.

34 Sivu Kommentit ja muuttujat JavaScriptissä voidaan kommentit merkitä kahdella tapaa. Molempia tapoja voidaan käyttää rinnakkain samassa lähdekoodissa. // Tämä on kommentti yhdelle riville /* Tässä on toinen kommentti, joka voi olla usean rivin mittainen */ Javascript-kielessä muuttujat käsitellään vastaavalla tavalla kuin vbscript:ssä. Muuttujan nimi voi olla mikä tahansa, kunhan se ei ole varattu sana. JavaScript tunnistaa isot ja pienet kirjaimet eri merkeiksi, joten tämä poikkeaa vbscript:stä. Nimet eivät saa alkaa numerolla eivätkä ne saa sisältää skandinaavisia kirjaimia. Javascript:ssä muuttujien tietotyypit ovat kokonaisluku, liukuluku, boolean, merkkijono tai objekti. JavaScript käyttää 32-bittisiä kokonaislukuja. Kokonaislukuliteraalit voidaan antaa joko kymmenjärjestelmämuodossa (esim. 123), heksadesimaali muodossa 0x tai 0X -etuliitteen avulla (esim. 0xFA1) tai oktaalimuodossa 0-etuliittellä (esim. 0240). Liukulukuvakiot voivat olla joko tutun muotoisia (1234.0), desimaalipisteellä tai ilman, tai sitten ne voivat olla ns. tieteellisessä notaatiossa kuten 1.2e-10. Boolean-arvot ovat totuusarvoja joko arvoltaan true tai false. Merkkijonot ovat hipsujen ' tai kaksoishipsujen " väliin kirjoitettuja merkkijoukkoja. Merkkijonot voivat sisältää tavallisten merkkien lisäksi escape-merkkejä kuten "\n", joka tarkoittaa rivinvaihtoa sekä "\t", joka tarkoittaa tabulaattorimerkkiä. Objektit konvertoidaan automaattisesti merkkijonoiksi merkkijonojen yhdistelyoperaattoria (+) käytettäessä tostring()-metodin avulla.

Luento 3. Jouni Ikonen - Jouni.Ikonen lut.fi

Luento 3. Jouni Ikonen - Jouni.Ikonen lut.fi CT30A3200 - WWW-sovellukset Luento 3 Jouni Ikonen - Jouni.Ikonen lut.fi Kalvot Arto Hämäläisen kalvojen pohjalta 1 Jouni Ikonen HTML-lomakkeet HTML-lomakkeiden avulla voidaan WWW-sovelluksessa hakea käyttäjän

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, literaalivakio, nimetty vakio Tiedon merkkipohjainen tulostaminen 1 Tunnus Java tunnus Java-kirjain Java-numero

Lisätiedot

Javascript 2: Ohjelmointikielen ominaisuudet. Jaana Holvikivi Metropolia

Javascript 2: Ohjelmointikielen ominaisuudet. Jaana Holvikivi Metropolia Javascript 2: Ohjelmointikielen ominaisuudet Jaana Holvikivi Metropolia HTML - sivun rakenne ja osiot HTML HEAD STYLE SCRIPT STYLEsheet Javascript file BODY Javascript

Lisätiedot

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus) VISUAL BASIC OHJEITA Kutsuttava ohjelma alkaa kometoparilla Sub... End Sub Sub ohjelmanimi()...koodia... End Sub Muuttujat Muuttujan esittely Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency,

Lisätiedot

Taulukot. Jukka Harju, Jukka Juslin 2006 1

Taulukot. Jukka Harju, Jukka Juslin 2006 1 Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, Vakio Tiedon merkkipohjainen tulostaminen Ohjelmointi (ict1tx006) Tunnus (5.3) Javan tunnus Java-kirjain Java-numero

Lisätiedot

MITÄ JAVASCRIPT ON?...3

MITÄ JAVASCRIPT ON?...3 JavaScript MITÄ JAVASCRIPT ON?...3 YLEISTÄ JAVASCRIPTIN SYNTAKSISTA...3 KÄSKYSANAT JA MUUT VARATUT SANAT...3 MUUTTUJIEN, FUNKTIOIDEN JA LUOKKIEN NIMISSÄ...3 HTML-TAGEIHIN VIITTAAVISSA METODINIMISSÄ...3

Lisätiedot

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin Ohjausjärjestelmien jatkokurssi Visual Basic vinkkejä ohjelmointiin http://www.techsoft.fi/oskillaattoripiirit.htm http://www.mol.fi/paikat/job.do?lang=fi&jobid=7852109&index=240&anchor=7852109 Yksiköt

Lisätiedot

13. Loogiset operaatiot 13.1

13. Loogiset operaatiot 13.1 13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.

Lisätiedot

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin. 2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet

Lisätiedot

CSS - tyylit. 13.11.2000 Seppo Räsänen

CSS - tyylit. 13.11.2000 Seppo Räsänen CSS - tyylit 13.11.2000 Seppo Räsänen Sivu 2 1 CSS-tyylit Dynaaminen HTML tai DHTML on standardi, joiden käyttöä tukevat uusimmat Netscapen ja Microsoftin selaimet. DHTML:n ominaisuuksia ovat tyylitiedostot

Lisätiedot

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5) Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,

Lisätiedot

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++? JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: http://java.sun.com/docs/books/tutorial/index.html Vesterholm, Kyppö: Java-ohjelmointi,

Lisätiedot

Ohjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia.

Ohjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia. Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen raine.kauppinen@haaga-helia.fi 1. Java-ohjelmoinnin alkeita Tietokoneohjelma Java-kieli ja Eclipse-ympäristö Java-ohjelma ja ohjelmaluokka

Lisätiedot

Java-kielen perusteita

Java-kielen perusteita Java-kielen perusteita valintalauseet 1 Johdantoa kontrollirakenteisiin Tähän saakka ohjelmissa on ollut vain peräkkäisyyttä eli lauseet on suoritettu peräkkäin yksi kerrallaan Tarvitsemme myös valintaa

Lisätiedot

ITKP102 Ohjelmointi 1 (6 op)

ITKP102 Ohjelmointi 1 (6 op) ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat

Lisätiedot

13. Loogiset operaatiot 13.1

13. Loogiset operaatiot 13.1 13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.

Lisätiedot

Python-ohjelmointi Harjoitus 2

Python-ohjelmointi Harjoitus 2 Python-ohjelmointi Harjoitus 2 TAVOITTEET Kerrataan tulostuskomento ja lukumuotoisen muuttujan muuttaminen merkkijonoksi. Opitaan jakojäännös eli modulus, vertailuoperaattorit, ehtorakenne jos, input-komento

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

Olio-ohjelmointi Javalla

Olio-ohjelmointi Javalla 1 Olio-ohjelmointi Javalla Olio-ohjelmointi Luokka Attribuutit Konstruktori Olion luominen Metodit Olion kopiointi Staattinen attribuutti ja metodi Yksinkertainen ohjelmaluokka Ohjelmaluokka 1 Olio-ohjelmointi

Lisätiedot

Osoitin ja viittaus C++:ssa

Osoitin ja viittaus C++:ssa Osoitin ja viittaus C++:ssa Osoitin yksinkertaiseen tietotyyppiin Osoitin on muuttuja, joka sisältää jonkin toisen samantyyppisen muuttujan osoitteen. Ohessa on esimerkkiohjelma, jossa määritellään kokonaislukumuuttuja

Lisätiedot

Sisältö. 2. Taulukot. Yleistä. Yleistä

Sisältö. 2. Taulukot. Yleistä. Yleistä Sisältö 2. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.1 2.2 Yleistä

Lisätiedot

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti: 1 (7) Tiedon lukeminen näppäimistöltä Scanner-luokan avulla Miten ohjelma saa käyttöönsä käyttäjän kirjoittamaa tekstiä? Järjestelmässä on olemassa ns. syöttöpuskuri näppäimistöä varten. Syöttöpuskuri

Lisätiedot

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma. 2. Taulukot 2.1 Sisältö Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.2 Yleistä

Lisätiedot

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista Sisällys 1. Omat operaatiot Yleistä operaatioista. Mihin operaatioita tarvitaan? Oman operaation määrittely. Yleisesti, nimeäminen ja hyvä ohjelmointitapa, määreet, parametrit ja näkyvyys. HelloWorld-ohjelma

Lisätiedot

JavaScript alkeet Esimerkkikoodeja moniste 2 (05.10.11 Metropolia)

JavaScript alkeet Esimerkkikoodeja moniste 2 (05.10.11 Metropolia) JavaScript alkeet Esimerkkikoodeja moniste 2 (05.10.11 Metropolia) Esim 5.1 laskujärjestys operaattorit var tulos = 5 + 4 * 12 / 4; document.write("5 + 4 * 12 / 4 laskutoimituksen tulos

Lisätiedot

Flash ActionScript osa 4

Flash ActionScript osa 4 Flash ActionScript osa 4 Tekstikentät Flash:ssa tekstikenttä voi olla tyypiltään joko TLF Text tai Classic Text. TLF Text on uusi Flash CS5 tullut tyyppi. Sen animointi ja muotoilu ominaisuudet ovat monipuolisemmat

Lisätiedot

Sisältö. 22. Taulukot. Yleistä. Yleistä

Sisältö. 22. Taulukot. Yleistä. Yleistä Sisältö 22. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko metodin parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 22.1 22.2 Yleistä

Lisätiedot

HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli.

HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli. HTML & CSS Antti Koivisto HTML (HyperText Markup Language)! HTML on sivujen kuvauskieli.! Se ei ole ohjelmointikieli.! HTML on merkintäkieli, joka koostuu monista merkintä tägeistä ().! Voidaan

Lisätiedot

1. Omat operaatiot 1.1

1. Omat operaatiot 1.1 1. Omat operaatiot 1.1 Sisällys Yleistä operaatioista. Mihin operaatioita tarvitaan? Oman operaation määrittely. Yleisesti, nimeäminen ja hyvä ohjelmointitapa, määreet, parametrit ja näkyvyys. HelloWorld-ohjelma

Lisätiedot

Java kahdessa tunnissa. Jyry Suvilehto

Java kahdessa tunnissa. Jyry Suvilehto Java kahdessa tunnissa Jyry Suvilehto Ohjelma Ohjelmointiasioita alkeista nippelitietoon n. 45 min Tauko 10 min Oliot, luokat ja muut kummajaiset n. 45 min Kysykää Sisältöä ei oikeasti ole 2x45 min täytteeksi,

Lisätiedot

Ohjelmointiharjoituksia Arduino-ympäristössä

Ohjelmointiharjoituksia Arduino-ympäristössä Ohjelmointiharjoituksia Arduino-ympäristössä Yleistä Arduino-sovelluksen rakenne Syntaksi ja käytännöt Esimerkki ohjelman rakenteesta Muuttujat ja tietotyypit Tietotyypit Esimerkkejä tietotyypeistä Ehtolauseet

Lisätiedot

- Komposiittityypit - Object (Mukaanlukien funktiot) - Array. - Erikoisdatatyypit - null - undefined

- Komposiittityypit - Object (Mukaanlukien funktiot) - Array. - Erikoisdatatyypit - null - undefined Ohjelmointitekniikka Tyyppiturvallisuuden tavoittelua Javascriptissa muuttujat ovat tyypittömiä, mutta arvoilla on tyyppi. Muuttuja esitellään var -avainsanalla ja muuttujan tyypin arvoa ei erikseen määritellä.

Lisätiedot

Tietueet. Tietueiden määrittely

Tietueet. Tietueiden määrittely Tietueet Tietueiden määrittely Tietue on tietorakenne, joka kokoaa yhteen eri tyyppistä tietoa yhdeksi asiakokonaisuudeksi. Tähän kokonaisuuteen voidaan viitata yhteisellä nimellä. Auttaa ohjelmoijaa järjestelemään

Lisätiedot

Kielioppia: toisin kuin Javassa

Kielioppia: toisin kuin Javassa Object Pascal Pascal kielen oliolaajennus (Inprise/Borland:n oma) luokat Voit uudelleenkäyttää luomiasi objekteja esim. komponentteja Periytyminen Kielioppia: toisin kuin Javassa Ei eroa isojen ja pienien

Lisätiedot

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit IDL - proseduurit 25. huhtikuuta 2017 Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,

Lisätiedot

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006 TURUN YLIOPISTO DEMO III Informaatioteknologian laitos tehtävät Olio-ohjelmoinnin perusteet / Salo 15.2.2006 1. Tässä tehtävässä tarkastellaan erääntyviä laskuja. Lasku muodostaa oman luokkansa. Laskussa

Lisätiedot

Harjoitus 7. 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

Harjoitus 7. 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti: Harjoitus 7 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti: class Lintu //Kentät private int _siivenpituus; protected double _aivojenkoko; private bool _osaakolentaa; //Ominaisuudet public int

Lisätiedot

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014 18. syyskuuta 2014 IDL - proseduurit Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,

Lisätiedot

Operaattoreiden ylikuormitus. Operaattoreiden kuormitus. Operaattoreiden kuormitus. Operaattoreista. Kuormituksesta

Operaattoreiden ylikuormitus. Operaattoreiden kuormitus. Operaattoreiden kuormitus. Operaattoreista. Kuormituksesta C++ - perusteet Java-osaajille luento 5/7: operaattoreiden ylikuormitus, oliotaulukko, parametrien oletusarvot, komentoriviparametrit, constant, inline, Operaattoreiden ylikuormitus Operaattoreiden kuormitus

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 21.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 21.1.2009 1 / 32 Tyypeistä Monissa muissa ohjelmointikielissä (esim. Java ja C) muuttujat on määriteltävä ennen

Lisätiedot

5/20: Algoritmirakenteita III

5/20: Algoritmirakenteita III Ohjelmointi 1 / syksy 2007 5/20: Algoritmirakenteita III Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/17 Tämän

Lisätiedot

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100 Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 20.1.2010 T-106.1208 Ohjelmoinnin perusteet Y 20.1.2010 1 / 40 Arvon pyytäminen käyttäjältä Käyttäjän antaman arvon voi lukea raw_input-käskyllä. Käskyn sulkujen

Lisätiedot

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokista Javan alkeistietotyypit ja vastaavat kääreluokat Autoboxing Integer-luokka Double-luokka Kääreluokista Alkeistietotyyppiset muuttujat (esimerkiksi

Lisätiedot

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen Metodit Metodien määrittely Metodin parametrit ja paluuarvo Metodien suorittaminen eli kutsuminen Metodien kuormittaminen 1 Mikä on metodi? Metodi on luokan sisällä oleva yhteenkuuluvien toimintojen kokonaisuus

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 2 vastaukset Harjoituksen aiheena on BNF-merkinnän käyttö ja yhteys rekursiivisesti etenevään jäsentäjään. Tehtävä 1. Mitkä ilmaukset seuraava

Lisätiedot

12.10.2011. Erittäin nopea tapa saada kehitysympäristö php:lle pystyyn Voidaan asentaa muistitikulle

12.10.2011. Erittäin nopea tapa saada kehitysympäristö php:lle pystyyn Voidaan asentaa muistitikulle (Ei yhtään videota tällä kertaa.) X niin kuin Cross-Platform, Apache, MySql, PHP, Perl Kehitysympäristö EI tuotantokäyttöön Monet tärkeät tietoturva-asetukset ovat oletuksena pois päältä Erittäin nopea

Lisätiedot

12 Mallit (Templates)

12 Mallit (Templates) 12 Mallit (Templates) Malli on määrittely, jota käyttämällä voidaan luoda samankaltaisten aliohjelmien ja luokkien perheitä. Malli on ohje kääntäjälle luoda geneerisestä tyyppiriippumattomasta ohjelmakoodista

Lisätiedot

1 PHP-sovelluksen toiminta

1 PHP-sovelluksen toiminta AMVA48-49 HTML ja PHP-ohjelmointi, 2 ov Yleistä kurssista HTMLperusteita PHP-kielen perusrakenteet HTMLlomakkeen käsittely Tiedoston käsittely Evästeiden käyttö Istunnon hallinta Oppimistehtävät PHP-KIELEN

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 1.4.2009 T-106.1208 Ohjelmoinnin perusteet Y 1.4.2009 1 / 56 Tentti Ensimmäinen tenttimahdollisuus on pe 8.5. klo 13:00 17:00 päärakennuksessa. Tämän jälkeen

Lisätiedot

on ohjelmoijan itse tekemä tietotyyppi, joka kuvaa käsitettä

on ohjelmoijan itse tekemä tietotyyppi, joka kuvaa käsitettä LUOKAN MÄÄRITTELY Luokka, mitä se sisältää Luokan määrittely Olion ominaisuudet eli attribuutit Olion metodit Olion muodostimet ja luonti Olion tuhoutuminen Metodin kutsu luokan ulkopuolelta Olion kopioiminen

Lisätiedot

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

System.out.printf(%d / %d = %.2f%n, ekaluku, tokaluku, osamaara); Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja

Lisätiedot

Ehto- ja toistolauseet

Ehto- ja toistolauseet Ehto- ja toistolauseet 1 Ehto- ja toistolauseet Uutena asiana opetellaan ohjelmointilauseet / rakenteet, jotka mahdollistavat: Päätösten tekemisen ohjelman suorituksen aikana (esim. kyllä/ei) Samoja lauseiden

Lisätiedot

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. X Poikkeusten käsittelystä

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. X Poikkeusten käsittelystä 812347A Olio-ohjelmointi, 2015 syksy 2. vsk X Poikkeusten käsittelystä Sisältö 1. Yleistä poikkeusten käsittelystä 2. Poikkeuskäsittelyn perusteita C++:ssa 3. Standardissa määritellyt poikkeukset 4. Poikkeusvarmuus

Lisätiedot

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen Ohjelmointitaito (ict1td002, 12 op) Kevät 2009 Raine Kauppinen raine.kauppinen@haaga-helia.fi 1. Java-ohjelmoinnin alkeita Tietokoneohjelma Java-kieli ja Eclipse-kehitysympäristö Java-ohjelma ja luokka

Lisätiedot

Chapel. TIE Ryhmä 91. Joonas Eloranta Lari Valtonen

Chapel. TIE Ryhmä 91. Joonas Eloranta Lari Valtonen Chapel TIE-20306 Ryhmä 91 Joonas Eloranta Lari Valtonen Johdanto Chapel on Amerikkalaisen Cray Inc. yrityksen kehittämä avoimen lähdekoodin ohjelmointikieli. Chapel on rinnakkainen ohjelmointikieli, joka

Lisätiedot

Metodien tekeminen Javalla

Metodien tekeminen Javalla 1 Metodien tekeminen Javalla Mikä metodi on? Metodin syntaksi Metodi ja sen kutsuminen Parametreista Merkkijonot ja metodi Taulukot ja metodi 1 Mikä metodi on? Metodilla toteutetaan luokkaan toiminnallisuutta.

Lisätiedot

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu Taulukot Taulukon määrittely ja käyttö Taulukko metodin parametrina Taulukon sisällön kopiointi toiseen taulukkoon Taulukon lajittelu esimerkki 2-ulottoisesta taulukosta 1 Mikä on taulukko? Taulukko on

Lisätiedot

Digitaalisen median tekniikat JavaScript

Digitaalisen median tekniikat JavaScript Digitaalisen median tekniikat JavaScript 5.4.2004 Harri Laine 1 JavaScript ent. LiveScript (Netscape), muunnelma JScript (Microsoft) yhteensopivat yksinkertaisissa asioissa, aiemmin yhteensopimattomat

Lisätiedot

Digitaalisen median tekniikat JavaScript Harri Laine 1

Digitaalisen median tekniikat JavaScript Harri Laine 1 Digitaalisen median tekniikat JavaScript 5.4.2004 Harri Laine 1 JavaScript ent. LiveScript (Netscape), muunnelma JScript (Microsoft) yhteensopivat yksinkertaisissa asioissa, aiemmin yhteensopimattomat

Lisätiedot

Javan perusteita. Janne Käki

Javan perusteita. Janne Käki Javan perusteita Janne Käki 20.9.2006 Muutama perusasia Tietokone tekee juuri (ja vain) sen, mitä käsketään. Tietokone ymmärtää vain syntaksia (sanojen kirjoitusasua), ei semantiikkaa (sanojen merkitystä).

Lisätiedot

TIE PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli

TIE PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli TIE-20306 PRINCIPLES OF PROGRAMMING LANGUAGES Eiffel-ohjelmointikieli Seminaariesitelmä ryhmä 24 Markku Ahokas Jani Kuitti i SISÄLLYSLUETTELO 1. YLEISTÄ EIFFELISTÄ... 1 1.1 Historia ja tausta... 1 1.2

Lisätiedot

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta. Tehtävä 63. Kirjoita oma versio funktiosta strcmp(),joka saa parametrinaan kaksi merkkiosoitinta. Tee ohjelma, jossa luetaan kaksi merkkijonoa, joita sitten verrataan ko. funktiolla. Tehtävä 64. Kirjoita

Lisätiedot

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

System.out.printf(%d / %d = %.2f%n, ekaluku, tokaluku, osamaara); Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Ohjelmointitehtävien osalta palautetaan

Lisätiedot

7. Näytölle tulostaminen 7.1

7. Näytölle tulostaminen 7.1 7. Näytölle tulostaminen 7.1 Sisällys System.out.println- ja System.out.print-operaatiot. Tulostus erikoismerkeillä. Edistyneempää tulosteiden muotoilua. 7.2 Tulostusoperaatiot System.out.println-operaatio

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 7.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 7.2.2011 1 / 39 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

7/20: Paketti kasassa ensimmäistä kertaa

7/20: Paketti kasassa ensimmäistä kertaa Ohjelmointi 1 / syksy 2007 7/20: Paketti kasassa ensimmäistä kertaa Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007

Lisätiedot

05/04/2004. Digitaalisen median tekniikat, k2004 HY/TKTL, javascript_1. Harri Laine 1. JavaScript

05/04/2004. Digitaalisen median tekniikat, k2004 HY/TKTL, javascript_1. Harri Laine 1. JavaScript Digitaalisen median tekniikat ent. LiveScript (Netscape), muunnelma JScript (Microsoft) yhteensopivat yksinkertaisissa asioissa, aiemmin yhteensopimattomat hiemankin edistyneemmissä nyk. ECMAScript (standardi)

Lisätiedot

Digitaalisen median tekniikat. Luento 4: JavaScript

Digitaalisen median tekniikat. Luento 4: JavaScript Digitaalisen median tekniikat Luento 4: JavaScript Luennot 1. Intro 2. XHTML 3. CSS 4. JavaScript Historia Syntaksi Dom Esimerkki: kuvagalleria 5. JavaScript-kirjastot & AJAX 6. Käytettävyys & saavutettavuus

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1 Ohjelmoinnin peruskurssi Y1 CSE-A1111 30.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 30.9.2015 1 / 27 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.

Lisätiedot

Listarakenne (ArrayList-luokka)

Listarakenne (ArrayList-luokka) Listarakenne (ArrayList-luokka) Mikä on lista? Listan määrittely ArrayList-luokan metodeita Listan läpikäynti Listan läpikäynti indeksin avulla Listan läpikäynti iteraattorin avulla Listaan lisääminen

Lisätiedot

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010 Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat

Lisätiedot

Tutoriaaliläsnäoloista

Tutoriaaliläsnäoloista Tutoriaaliläsnäoloista Tutoriaaliläsnäolokierroksella voi nyt täyttää anomuksen läsnäolon merkitsemisestä Esim. tagi ei toiminut, korvavaltimon leikkaus, yms. Hyväksyn näitä omaa harkintaa käyttäen Tarkoitus

Lisätiedot

3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä.

3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä. PHP-kielen perusteet Käytä lähteenä PHP:n virallista manuaalia http://www.php.net/docs.php tai http://www.hudzilla.org/php (siirry Paul Hudsonin verkkokirjaan). Lisää materiaalia suomeksi esimerkiksi ohjelmointiputkan

Lisätiedot

ELM GROUP 04. Teemu Laakso Henrik Talarmo

ELM GROUP 04. Teemu Laakso Henrik Talarmo ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................

Lisätiedot

Verkkosivut perinteisesti. Tanja Välisalo 11.2.2009

Verkkosivut perinteisesti. Tanja Välisalo 11.2.2009 Verkkosivut perinteisesti Tanja Välisalo 11.2.2009 WWW-sivujen vieminen omaan kotisivutilaan yliopiston mikroverkossa https://salasana.jyu.fi Klikkaa painiketta Activate WWW Klikkaa painiketta Activate

Lisätiedot

Harjoitus 3 (viikko 39)

Harjoitus 3 (viikko 39) Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Vältä liian pitkiä rivejä. Ohjelmointitehtävien

Lisätiedot

Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004

Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004 Vertailulauseet Ehtolausekkeet Ehdot, valintalausekkeet Boolean-algebra == yhtäsuuruus!= erisuuruus < pienempi suurempi >= suurempi tai yhtäsuuri Esimerkkejä: int i=7; int j=10;

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 9.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 9.2.2009 1 / 35 Listat Esimerkki: halutaan kirjoittaa ohjelma, joka lukee käyttäjältä 30 lämpötilaa. Kun lämpötilat

Lisätiedot

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML AJAX-konsepti AJAX Asynchronous JavaScript And XML Viimeisin muoti-ilmiö web-ohjelmoinissa, termi Ajax tuli käyttöön vuoden 2005 aikana Joukko teknologioita, joiden avulla voidaan toteuttaa uudenlaisen

Lisätiedot

11. Javan valintarakenteet 11.1

11. Javan valintarakenteet 11.1 11. Javan valintarakenteet 11.1 Sisällys If- ja if-else-lauseet. Orpo else. Valintaa toisin: switch-lause. 11.2 If-lause Merkitään varatulla sanalla if. Kuvaa yksisuuntaisen päätöksen: rakenteen lauseet

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet String-merkkijonoluokka 1 Ohjelmointikielten merkkijonot Merkkijonot ja niiden käsittely on välttämätöntä ohjelmoinnissa Valitettavasti ohjelmointikielten tekijät eivät tätä ole ottaneet

Lisätiedot

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti C! Perusteet 19.1.2017 Palautteesta (1. kierros toistaiseksi) Toistaiseksi helppoa Miksi vain puolet pisteistä? Vaikeinta oli ohjelmointiympäristön asennus ja käyttö Vaikeaa eroavuudet Pythonin ja C:n

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,

Lisätiedot

Internet-pohjaisen oppimisympäristön laadinta. Luento 3

Internet-pohjaisen oppimisympäristön laadinta. Luento 3 Internet-pohjaisen oppimisympäristön laadinta Luento 3 Aiheena tänään Toteutustekniikoista yleisesti Selainriippumattomuudesta Hot Potatoes -ohjelmasta JavaScriptin perusteista 29.01.2015 IPOPPLA 2 Toteutustekniikoista

Lisätiedot

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle ELEC-A4010 Sähköpaja Arduinon ohjelmointi Jukka Helle Arduino UNO R3 6-20VDC 5VDC muunnin 16 MHz kideoskillaattori USB-sarjamuunnin (ATmega16U2) ATmega328 -mikro-ohjain 14 digitaalista I/O väylää 6 kpl

Lisätiedot

Luokan muodostimet (Constructors)

Luokan muodostimet (Constructors) Mikä on muodostin? Luokan muodostimet (Constructors) Millaisia muodostimia on? Oletusmuodostin (Default Constructor) Parametrillinen muodostin Kopiointimuodostin (Copy Constructor) this-muuttuja Miten

Lisätiedot

Luokka Murtoluku uudelleen. Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista.

Luokka Murtoluku uudelleen. Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista. 1 Luokka Murtoluku uudelleen Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista. Sievennettäessä tarvitaan osoittajan ja nimittäjän suurin yhteinen tekijä (syt).

Lisätiedot

JavaScript alkeet Esimerkkikoodeja moniste 2

JavaScript alkeet Esimerkkikoodeja moniste 2 JavaScript alkeet Esimerkkikoodeja moniste 2 Esim 5.1 laskujärjestys operaattorit var tulos = 5 + 4 * 12 / 4; document.write("5 + 4 * 12 / 4 laskutoimituksen tulos on " + tulos,"");

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 19.1.2011 T-106.1208 Ohjelmoinnin perusteet Y 19.1.2011 1 / 39 Haluatko antaa palautetta luennoista? Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti Vast

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print

Lisätiedot

ICT1TN004. Lomakkeet. Heikki Hietala

ICT1TN004. Lomakkeet. Heikki Hietala Lomakkeet Heikki Hietala Lomakkeet Lomakkeita käytetään keräämään tietoa käyttäjältä ja siirtämään se palvelimelle Lomakkeen luominen ei yksin riitä, vaan pitää luoda myös lomakkeenkäsittelijä Lomakkeen

Lisätiedot

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukot C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukon muuttujilla (muistipaikoilla) on yhteinen nimi. Jokaiseen yksittäiseen

Lisätiedot

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset Harjoituksen aiheena ovat aliohjelmat ja abstraktit tietotyypit sekä olio-ohjelmointi. Tehtävät tehdään C-, C++- ja Java-kielillä.

Lisätiedot

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi 1 Javan perusteet Ohjelmointi IPO-malli Java lähdekoodista suoritettavaksi ohjelmaksi Vakio Muuttuja Miten Javalla näytetään tietoa käyttäjälle, miten Javalla luetaan käyttäjän antama syöte Miten Javalla

Lisätiedot

Apuja ohjelmointiin» Yleisiä virheitä

Apuja ohjelmointiin» Yleisiä virheitä Apuja ohjelmointiin» Yleisiä virheitä Ohjelmaa kirjoittaessasi saattaa Visual Studio ilmoittaa monenlaisista virheistä "punakynällä". Usein tämä johtuu vain siitä, että virheitä näytetään vaikket olisi

Lisätiedot

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4 Sisällys 12. Näppäimistöltä lukeminen Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä.. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit. Scanner-luokka.

Lisätiedot

15. Ohjelmoinnin tekniikkaa 15.1

15. Ohjelmoinnin tekniikkaa 15.1 15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Lueteltu tyyppi enum. Override-annotaatio. Geneerinen ohjelmointi. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien

Lisätiedot

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin

Lisätiedot