Hakemistojen sisällöt säilötään linkitetyille listalle.
|
|
- Asta Jokinen
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 Harjoitustyö 1
2 Harjoitustyö Tehtävä: ohjelmoi Java-kielellä komentoikkunaa (komentotulkkia, komentoriviä) simuloiva olioperustainen ohjelma. Hakemistojen sisällöt säilötään linkitetyille listalle. Työ tehdään pääosin itse. Ideoita voi vaihtaa koodia ei. Henkilökohtaista ohjausta mikroluokissa. Ohjaajilta voi kysyä sähköpostilla. Palautus WETO-järjestelmään noin kahden kuukauden kuluttua. Testaus automaattisesti julkisilla ja salaisilla testeillä. Palautustakarajaksi on vahvistunut perjantai Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 2
3 Harjoitustyö Perjantaina on välipalautuspiste, johon mennessä täytyy palauttaa WETOon harjoitustyön Javalla toteutettu luokkahierarkia ja suunnitelma työn rakenteesta (luokat, rajapinnat ja näiden väliset suhteet) UML-luokkakaaviona. WETO auttaa opettajaa tarkistamalla koodia automaattisesti. Tarkka tehtävänanto julki tällä viikolla. Varaa työlle aikaa, aloita ajoissa ja tee työtä säännöllisesti. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 3
4 Komentoikkuna Komentoikkunassa vuorovaikutetaan käyttöjärjestelmän kanssa tekstuaalisesti komentoja kirjoittamalla. Moni komento liittyy tiedostojärjestelmään. Esimerkiksi cd-komennolla voidaan vaihtaa hakemistoa. Tiedostojärjestelmä on organisoitu hakemistopuuksi. Hakemisto (kansio) voi sisältää tiedostoja ja muita hakemistoja. pics cats ceiling_cat.gif dangerous_kitten.jpg / temp memo_backup.txt dogs worlds_ugliest_dog.jpg Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 4
5 Luokista Tiedostojärjestelmän sisältöä mallinnetaan konkreettisilla Tiedosto- ja Hakemisto-luokilla. Tiedostolle on ominaista sen koko tavuina (int, 0). Hakemistolla on lista, josta on viitteet hakemiston sisältämiin tiedostoihin ja muihin hakemistoihin. Lisäksi hakemistosta on viite ylihakemistoon. (Juurihakemiston ylihakemistoviite on null-arvoinen.) Keskinäisillä viitteillä yhdistetyt oliot muodostavat hakemistopuun. Puussa voidaan liikkua ylös ja alas viitteitä seuraamalla. Edellisen kalvon hakemistopuu viitteiden yhdistäminä olioina. Soikot ovat hakemisto-olioita ja suorakaiteet tiedosto-olioita. cats ceiling_cat.gif pics / dogs dangerous_kitten.jpg temp null memo_backup.txt worlds_ugliest_dog.jpg Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 5
6 Luokista Tee Tiedosto- ja Hakemisto-aliluokille abstrakti Tieto-yliluokka, jossa on yhteinen tieto eli nimi (StringBuilder). Kapseloi luokat ja korvaa luokissa tostring-metodi ketjuttaen. Korvaa yliluokassa equals-metodi ja toteuta siinä Comparablerajapinta. Vertailu tapahtuu String-luokan metodeilla. Tee kopiorakentajat Tiedosto- ja Tieto-luokille. Nimi syväkopioidaan. Hakemisto-luokan on toteutettava opettajan antama rajapinta. Sijoita luokkahierarkia tiedot-nimiseen pakkaukseen. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 6
7 Luokista Peri LinkitettyLista-luokasta OmaLista-luokka. Listaan on kirjoitettava ainakin opettajan antamassa rajapinnassa määritellyt uudet listaoperaatiot. Operaatioiden on oltava puhtaita : niissä ei saa esiintyä Tieto-tyyppiä. Esimerkiksi alkion lisäys siten, että alkioiden välille muodostuu kasvava järjestys. Hakemisto-luokalla on OmaLista-tyyppinen attribuutti. Listan viitteet liittävät hakemiston sisällön (tiedostot ja alihakemistot) hakemistoon. Tee omat luokat komentojen tulkille ja käyttöliittymälle ja tee erillinen main-metodin sisältävä ajoluokka. Tulkkiluokka toteuttaa komennot hakemistopuuta käsittelemällä. Luokassa on Hakemisto-tyyppinen attribuutti hakemistopuun juurelle. Kaikki käyttäjän antamat tiedot luetaan käyttöliittymässä. Käyttöliittymässä tehdään valtaosa tulostuksista. Pääsilmukan luonteva paikka on käyttöliittymän luokka. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 7
8 Tulkin komennot md: luo parametrina annetulla nimellä alihakemiston nykyiseen hakemistoon, jos samannimistä alihakemisto ei jo ole. mf: luo annetun nimisen ja kokoisen tiedoston nykyiseen hakemistoon, jos samannimistä tiedostoa ei jo ole. cd: asettaa työhakemistoksi joko yli- tai alihakemiston, jos voidaan siirtyä. Ylihakemistoon viitataan kahdella pisteellä. Ilman parametria palataan juureen. ls: listaa näytölle annetun nimisen tiedoston tai hakemiston tiedot, jos listauksen kohde löytyy nykyisestä hakemistosta. Listaa nykyisen hakemiston sisällön, jos parametria ei anneta. find: listaa hakemiston rekursiivisesti esijärjestyksessä. rm: poistaa varmistamatta tiedoston tai hakemiston, jos sellainen on nykyhakemistossa. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 8
9 Tulkin komennot cp: kopioi tiedoston annetun nimiseksi uudeksi tiedostoksi, jos nimellä löydetään tiedosto nykyhakemistosta ja hakemistossa ei ole vielä uuden nimistä tiedostoa. mv: nimeää tiedoston annetun nimiseksi uudeksi tiedostoksi, jos nimellä löydetään tiedosto nykyhakemistosta ja hakemistossa ei ole vielä uuden nimistä tiedostoa. exit: lopetaa ohjelman. Muuta: Komentokehotteessa näkyy nykyhakemiston polku. Pienet ja isot kirjaimet katsotaan eri merkeiksi. Nimissä sallitaan vain tietyt merkit. Kaikkiin virheisiin reagoidaan tulostamalla merkkijono Error!. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 9
10 Esimerkkiajo Welcome to SOS. />md pics />cd pics /pics/>md cats /pics/>cd cats /pics/cats/>mf ceiling_cat.gif 3677 /pics/cats/>mf dangerous_kiten.jpg /pics/cats/>mv dangerous_kiten.jpg dangerous_kitten.jpg /pics/cats/>ls ceiling_cat.gif 3677 dangerous_kitten.jpg /pics/cats/>cd.. /pics/>md dogs /pics/>cd dogs /pics/dogs/>mf world's_ugliest_dog.jpg Error! /pics/dogs/>mf worlds_ugliest_dog.jpg Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 10
11 Esimerkkiajo /pics/dogs/>cd />ls pics/ 2 />md temp />cd temp /temp/>mf memo.txt 42 /temp/>cp memo.txt memo_backup.txt /temp/>ls memo.txt memo.txt 42 /temp/>ls memo_buk.txt Error! /temp/>ls memo_backup.txt memo_backup.txt 42 /temp/>rm memo.txt /temp/>cd.. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 11
12 Esimerkkiajo />find /pics/ 2 /pics/cats/ 2 /pics/cats/ceiling_cat.gif 3677 /pics/cats/dangerous_kitten.jpg /pics/dogs/ 1 /pics/dogs/worlds_ugliest_dog.jpg /temp/ 1 /temp/memo_backup.txt 42 />exit Shell terminated. Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala 12
Linkitetystä listasta perittyä omaa listaa käytetään muun muassa viestiin liittyvien vastausten säilömiseen.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi Java-kielellä keskustelualuetta simuloiva olioperustainen ohjelma (Simple Oope Board, S.O.B). Linkitetystä listasta perittyä omaa listaa käytetään muun muassa
LisätiedotSokkelon sisältö säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi olioperustainen sokkeloseikkailu peli Javakielellä. Sokkelon sisältö säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen
Lisätiedotdogs worlds_ugliest_dog.jpg
1. Johdanto 1.1. Tehtävä Komentoikkuna [1, 2] on teksuaalinen käyttöliittymä, jonka kautta käyttöjärjestelmää ohjaillaan komentoja kirjoittamalla. Komentoikkuna tunnetaan myös muun muassa komentorivinä
LisätiedotTyö tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva olioperustainen ohjelma Java-kielellä. Lötköt säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti
LisätiedotToinen harjoitustyö. ASCII-grafiikkaa 2017
Toinen harjoitustyö ASCII-grafiikkaa 2017 Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt17-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin
LisätiedotToinen harjoitustyö. ASCII-grafiikkaa
Toinen harjoitustyö ASCII-grafiikkaa Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin itse. Ideoita
LisätiedotLausekielinen ohjelmointi II Ensimmäinen harjoitustyö
Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö Yleistä Tehtävä: Tee Javalla LineBreaker-ohjelma tekstirivin sovittamiseen tekstialueelle riviä katkomalla. Lausekielinen ohjelmointi II -kurssin pakollinen
LisätiedotLausekielinen ohjelmointi II Ensimmäinen harjoitustyö
Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö Yleistä Tehtävä: Tee Javalla StringStats-ohjelma, joka laskee esikäsittelemästään merkkijonosta joitakin tunnuslukuja. Lausekielinen ohjelmointi II
LisätiedotTentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.
Tentti Tentti Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla. Omia koneita ei saa käyttää. Sähköisessä tentissä on paperitentin tapaan osaamisen
LisätiedotTentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.
Tentti Tentti Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla. Omia koneita ei saa käyttää. Sähköisessä tentissä on paperitentin tapaan osaamisen
LisätiedotHarjoitus 5 (viikko 48)
Moni tämän harjoituksen tehtävistä liittyy joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Harjoitustyö edistyy sitä paremmin, mitä enemmän tehtäviä ratkaiset. Mikäli tehtävissä on jotain
LisätiedotHarjoitustyö. 1. Johdanto Tehtävä
1. Johdanto 1.1. Tehtävä Sähköisillä keskustelupalstoilla [1] vaihdetaan viestejä eri aiheisiin liittyen. Ensimmäiset palstat olivat uutisryhmiä ( nyyssit ) ja BBS-järjestelmien ( purkkien ) palstoja.
LisätiedotOhjelmoinnin jatkokurssi, kurssikoe 28.4.2014
Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen päivämäärä, oma nimi ja opiskelijanumero. Vastaa kaikkiin tehtäviin omille konsepteilleen.
LisätiedotMaastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla
Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,
Lisätiedot4. Luokan testaus ja käyttö olion kautta 4.1
4. Luokan testaus ja käyttö olion kautta 4.1 Olion luominen luokasta Java-kielessä olio määritellään joko luokan edustajaksi tai taulukoksi. Olio on joukko keskusmuistissa olevia tietoja. Oliota käsitellään
Lisätiedot5. HelloWorld-ohjelma 5.1
5. HelloWorld-ohjelma 5.1 Sisällys Lähdekoodi. Lähdekoodin (osittainen) analyysi. Lähdekoodi tekstitiedostoon. Lähdekoodin kääntäminen tavukoodiksi. Tavukoodin suorittaminen. Virheiden korjaaminen 5.2
LisätiedotOpintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen
Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen Taulukot: Array Taulukko Javassa pitää aina perustaa (new) Yksinkertaisessa tilanteessa taulukon koko tiedetään etukäteen ja
LisätiedotLuento 3. Timo Savola. 7. huhtikuuta 2006
UNIX-käyttöjärjestelmä Luento 3 Timo Savola 7. huhtikuuta 2006 Osa I Käyttöoikeudet Käyttöoikeudet Monen käyttäjän järjestelmä Prosessit kuuluvat eri käyttäjille Tiedostot kuuluvat
LisätiedotHarjoitus 5 (viikko 41)
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ä, käytä
LisätiedotPakkauksen kokoaminen
13. Pakkaukset 13.1 Sisällys Pakkauksen kokoaminen package-määrettä käyttäen. Pakkaukset ja hakemistorakenne. Pakkauksen luokkien käyttö muissa pakkauksissa importlauseen avulla. Pakkaukset ja näkyvyys.
Lisätiedot14. Poikkeukset 14.1
14. Poikkeukset 14.1 Sisällys Johdanto. Tarkistettavat ja tarkistamattomat poikkeukset. Poikkeusten tunnistaminen ja sieppaaminen try-catchlauseella. Mitä tehdä siepatulla poikkeuksella? Poikkeusten heittäminen.
LisätiedotHarjoitus 2 (viikko 45)
Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista lisätä static-määre operaatioidesi otsikoihin, jotta ohjelmasi kääntyvät. Muista noudattaa hyvän
LisätiedotKomentotulkki. Kysymyksiä
Komentotulkki Komentotulkki ja avustustoiminnot Tux-pingviinin kuva: Larry Ewing, Simon Budig ja Anja Gerwinski Kysymyksiä 1. Miten työskentelen komentotulkilla? 2. Miten komennot annetaan ja käsitellään?
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle
LisätiedotTässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ).
Tehtävä 1: Metodit, listat, alkuluvut (4p) Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ). Alkuluvut ovat lukuja, jotka ovat suurempia kuin yksi ja jotka ovat jaollisia
LisätiedotLuento 4. Timo Savola. 21. huhtikuuta 2006
UNIX-käyttöjärjestelmä Luento 4 Timo Savola 21. huhtikuuta 2006 Osa I Shell Lausekkeet Komentoriville kirjotettu komento on lauseke echo "foo" echo $USER MUUTTUJA=1 ls -l Rivinvaihto
LisätiedotMetropolia Ammattikorkeakoulu
Metropolia Ammattikorkeakoulu UNIX-käyttöjärjestelmä TX00BW20 Sami Sainio sami.sainio@metropolia.fi Kurssin rakenne ja arvostelu 7 x luennot ja laboratorioharjoitukset Pieni projekti? Kurssin lopussa tentti
LisätiedotList-luokan soveltamista. Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen
1 List-luokan soveltamista List-luokan metodeja Listaan lisääminen Listan läpikäynti Listasta etsiminen Listan sisällön muuttaminen Listasta poistaminen Listan kopioiminen 1 List-luokan metodeja List-luokan
Lisätiedot7/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ätiedot7. Oliot ja viitteet 7.1
7. Oliot ja viitteet 7.1 Sisällys Olio Java-kielessä. Olion luominen, elinikä ja tuhoutuminen. Viitteiden sijoitus. Viitteiden vertailu. Varautuminen null-arvoon. Viite metodin paluuarvona. Viite metodin
LisätiedotSisällys. 14. Poikkeukset. Johdanto. Johdanto
Sisällys 14. Poikkeukset Johdanto. Tarkistettavat ja tarkistamattomat poikkeukset. Poikkeusten tunnistaminen ja sieppaaminen try-catchlauseella. Mitä tehdä siepatulla poikkeuksella? Poikkeusten heittäminen.
Lisätiedot815338A 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ätiedotJulkaiseminen verkossa
Julkaiseminen verkossa H9T1: Tiedostojen vienti internetiin Yliopiston www-palvelin, kielo Unix käyttöjärjestelmästä hakemistorakenne etäyhteyden ottaminen unix-koneeseen (pääteyhteys) komentopohjainen
LisätiedotHarjoitus 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ätiedotHarjoitus 4 (viikko 47)
Kaikki tämän harjoituksen tehtävät liittyvät joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Saa hyvän alun harjoitustyön tekoon, kun ratkaiset mahdollisimman monta tehtävää. Mikäli tehtävissä
LisätiedotMikä yhteyssuhde on?
1 Yhteyssuhde Mikä yhteyssuhde on? Yhteyssuhde Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma 1 Mikä yhteyssuhde on? Tili - : String - : double * 1 Asiakas - hetu: String - : String
LisätiedotPakkauksen kokoaminen
13. Pakkaukset 13.1 Sisällys Pakkauksen kokoaminen (package). Pakkaukset ja hakemistorakenne. Pakkauksen luokkien käyttö muissa pakkauksissa (import). Pakkaukset ja näkyvyys. 13.2 Pakkauksen kokoaminen
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 16.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 16.3.2009 1 / 40 Kertausta: tiedostosta lukeminen Aluksi käsiteltävä tiedosto pitää avata: tiedostomuuttuja = open("teksti.txt","r")
LisätiedotOhjelmistojen mallintaminen viikon 4 laskareiden mallivastauksia
Ohjelmistojen mallintaminen viikon 4 laskareiden mallivastauksia Tehtävä 1 Tehtävässä 1 mallinnettiin Monopolipeliä. Alla olevassa esimerkissä peliin liittyy aina 2 noppaa, peliä pelataan pelilaudalla,
LisätiedotHarjoitustyö. 1. Johdanto Tehtävä
1. Johdanto 1.1. Tehtävä Muinaiset muukalaiset ovat jättäneet jälkeensä sokkelon, jossa on salaperäisiä esineitä ja vaarallisia robotteja. Toteuta Java-kielellä peli, jossa mönkijää ohjaavan pelaajan tehtävänä
Lisätiedot20. Javan omat luokat 20.1
20. Javan omat luokat 20.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.2 Java API Java-kielen Application Programming Interface (API)
LisätiedotSisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang
Sisällys 20. Javan omat luokat Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.1 20.2 Java API Java-kielen Application Programming Interface (API)
LisätiedotRajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.
11. Rajapinnat 11.1 Sisällys Johdanto. Abstrakti luokka vai rajapinta? Rajapintojen hyötyjä. Kuinka rajapinnat määritellään ja otetaan käyttöön? Eläin, nisäkäs, kissa ja rajapinta. Moniperiytyminen rajapintojen
LisätiedotHarjoitus 6 (viikko 42)
Nämä ovat kurssin viimeiset harjoitukset. Hyväksytyistä ratkaisuista ja läsnäoloista kerättyjen pisteiden summan tulee olla vähintään 40 % ( pistettä) tehtävien ja läsnäolopisteiden kokonaislukumäärien
LisätiedotJavan 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ätiedotSystem.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ätiedotSisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2
4. Attribuutit 4.1 Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2 Yleistä Luokan lohkossa, mutta metodien ulkopuolella esiteltyjä muuttujia ja vakioita. Esittely
Lisätiedot18. Abstraktit tietotyypit 18.1
18. Abstraktit tietotyypit 18.1 Sisällys Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:
LisätiedotOliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä
Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä Matti Luukkainen 10.12.2009 Tässä esitetty esimerkki on mukaelma ja lyhennelmä Robert Martinin kirjasta Agile and Iterative Development löytyvästä
LisätiedotSisällys. 11. Rajapinnat. Johdanto. Johdanto
Sisällys 11. ajapinnat. bstrakti luokka vai rajapinta? ajapintojen hyötyjä. Kuinka rajapinnat määritellään ja otetaan käyttöön? Eläin, nisäkäs, kissa ja rajapinta. Moniperiytyminen rajapintojen avulla.
LisätiedotOpintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat
Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat Rajapinnat Java-kieli ei tue luokkien moniperintää. Jokaisella luokalla voi olla vain yksi välitön yliluokka. Toisinaan olisi
Lisätiedot17. Javan omat luokat 17.1
17. Javan omat luokat 17.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 17.2 Java API Java-kielen Application Programming Interface (API)
LisätiedotSisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto
Sisällys 18. bstraktit tietotyypit Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.1 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:
LisätiedotTestitapaukset - Siirtoprotokolla
Testitapaukset - Siirtoprotokolla Versio Päiväys Tekijä Kuvaus 0.2 22.03.02 Ville Vaittinen Ajankohtaistettu versio Sisällysluettelo 2. Siirtotiedoston testitapaukset... 3 2.1 Siirtotiedoston luonti...
LisätiedotJava-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ätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 3.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 3.3.2010 1 / 44 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle
LisätiedotOlion elinikä. Olion luominen. Olion tuhoutuminen. Olion tuhoutuminen. Kissa rontti = null; rontti = new Kissa();
Sisällys 7. Oliot ja viitteet Olio Java-kielessä. Olion luominen, elinikä ja tuhoutuminen. Viitteiden käsittelyä: sijoitus, vertailu ja varautuminen null-arvoon. Viite metodin paluuarvona.. 7.1 7.2 Olio
LisätiedotSisällys. Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö. 8.2
8. Periytyminen 8.1 Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö. 8.2 Mitä on periytyminen? Periytyminen (inheritance) tarkoittaa luokan piirteiden
LisätiedotSisällys. 7. Oliot ja viitteet. Olion luominen. Olio Java-kielessä
Sisälls 7. Oliot ja viitteet Olio Java-kielessä. Olion luominen, elinikä ja tuhoutuminen.. Viitteiden vertailu. Varautuminen null-arvoon. Viite metodin paluuarvona.. Muuttumattomat ja muuttuvat merkkijonot.
LisätiedotMitä on periytyminen?
8. Periytyminen 8.1 Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Filosofinen ja käytännönläheinen näkökulma periytymiseen. Periytymisen soveltaminen. 8.2 Mitä
LisätiedotSisällys. JAVA-OHJELMOINTI Osa 6: Periytyminen ja näkyvyys. Luokkahierarkia. Periytyminen (inheritance)
Sisällys JAVA-OHJELMOINTI Osa 6: Periytyminen ja näkyvyys Periytyminen (inheritance) Näkyvyys (visibility) Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 13.10.2000 E. Hyvönen: Java Osa
Lisätiedot12. Näppäimistöltä lukeminen 12.1
12. Näppäimistöltä lukeminen 12.1 Sisällys Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä. In-luokka. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit.
LisätiedotKompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma
1 Kompositio Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma 1 Mikä kompositio on? Tili - : String - : double 1 1 Kayttoraja
LisätiedotLuento 2. Timo Savola. 31. maaliskuuta 2006
UNIX-käyttöjärjestelmä Luento 2 Timo Savola 31. maaliskuuta 2006 Osa I Prosessit Prosessien hierarkia Jokaisella prosessilla on numero (process ID, pid) Jokaisella prosessilla on
Lisätiedot1 Tehtävän kuvaus ja analysointi
Olio-ohjelmoinnin harjoitustyön dokumentti Jyri Lehtonen (72039) Taneli Tuovinen (67160) 1 Tehtävän kuvaus ja analysointi 1.1 Tehtävänanto Tee luokka, jolla mallinnetaan sarjaan kytkettyjä kondensaattoreita.
LisätiedotKooste. Esim. Ympyrän keskipiste voidaan ajatella ympyrän osaksi.
17. Kooste 17.1 Kooste Kooste (aggregation) on luokkien A ja B välinen suhde, joka tarkoittaa A on B:n osa tai A kuuluu B:hen. Koostesuhteessa olevat luokat eivät yleensä ole periytymissuhteessa. Kooste
LisätiedotSisällys. 14. Poikkeukset. Johdanto. Johdanto
Sisällys 14. Poikkeukset Johdanto. Tarkistettavat ja tarkistamattomat poikkeukset. Miten varautua poikkeukseen metodissa? Poikkeusten tunnistaminen ja sieppaaminen try-catchlauseella. Mitä tehdä siepatulla
LisätiedotJava 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ätiedotSisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki
Sisällys JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta Abstrakti luokka ja metodi Rajapintamäärittely (interface) Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 13.10.2000 E.
LisätiedotOperaattoreiden 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ätiedotOlio-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ätiedotHarjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5
Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät tekniset ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida
Lisätiedot14. Poikkeukset 14.1
14. Poikkeukset 14.1 Sisällys Johdanto. Tarkistettavat ja tarkistamattomat poikkeukset. Miten varautua poikkeukseen metodissa? Poikkeusten tunnistaminen ja sieppaaminen try-catchlauseella. Mitä tehdä siepatulla
LisätiedotSisä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ätiedot812341A Olio-ohjelmointi Peruskäsitteet jatkoa
812341A Olio-ohjelmointi 2106 Peruskäsitteet jatkoa Luokkakohtaiset piirteet n Yhteisiä kaikille saman luokan olioille n Liittyvät luokkaan, eivät yksittäiseen olioon n Kaikki ko. luokan oliot voivat käyttää
LisätiedotHarjoitustyö. 1. Johdanto. 1.1. Tehtävä
1. Johdanto 1.1. Tehtävä Kaukana, monen valovuoden päässä täältä, sijaitsee planeetta, jolla on käynnistynyt alkeellinen elämä. Tehtävänäsi on toteuttaa Java-kielellä ohjelma, joka simuloi planeetan alkulimassa
LisätiedotSystem.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ätiedotA) on käytännöllinen ohjelmointitekniikka. = laajennetaan aikaisemmin tehtyjä luokkia (uudelleenkäytettävyys)
1(37) PERIYTYMINEN (inheritance) YLILUOKKA (superclass) ALILUOKKA (subclass) A) on käytännöllinen ohjelmointitekniikka = laajennetaan aikaisemmin tehtyjä luokkia (uudelleenkäytettävyys) B) on käsitteiden
LisätiedotHarjoitus 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ätiedot16. Javan omat luokat 16.1
16. Javan omat luokat 16.1 Sisällys Johdanto. Object-luokka: tostring-, equals-, clone- ja getclass-metodit. Comparable-rajapinta: compareto-metodi. Vector- ja ArrayList-luokat. 16.2 Javan omat luokat
Lisätiedot17. Javan omat luokat 17.1
17. Javan omat luokat 17.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 17.2 Java API Java-kielen Application Programming Interface (API)
LisätiedotHarjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita.
Nämä ovat kurssin viimeiset harjoitukset. Hyväksytyistä ratkaisuista ja läsnäoloista kerättyjen pisteiden summan tulee olla vähintään 40 % ( pistettä) tehtävien ja läsnäolopisteiden kokonaislukumäärien
Lisätiedot9. Periytyminen Javassa 9.1
9. Periytyminen Javassa 9.1 Sisällys Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Metodien korvaaminen ja super-attribuutti. Attribuutin peittäminen periytymisen kautta. Rakentajat
LisätiedotJAVA-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ätiedot15. Ohjelmoinnin tekniikkaa 15.1
15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Geneerinen ohjelmointi. Lueteltu tyyppi enum. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien silmukoimiseen:
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Keskeneräinen luento 3: Listat (mm. SICP 22.2.3) Riku Saikkonen 31. 10. 2011 Sisältö 1 Linkitetyt listat 2 Linkitetyt listat (SICP 2.1.1, 2.2.1) funktionaalinen
LisätiedotVastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet Kevät Olio-ohjelmoinnin perusteet (TIEA2.1)
Kurssiesite Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto Vastuuopettaja Jorma Laurikkala, yliopistonlehtori. Luennot,
LisätiedotKurssiesite Olio-ohjelmoinnin perusteet Kevät Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto
Kurssiesite Olio-ohjelmoinnin perusteet Kevät 2017 Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto Vastuuopettaja Jorma Laurikkala, yliopistonlehtori. Luennot,
LisätiedotSisä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ätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 4.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 4.3.2009 1 / 35 Tiedostot Tiedostojen käsittelyä tarvitaan esimerkiksi seuraavissa tilanteissa: Ohjelman käsittelemiä
LisätiedotVastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet Kevät 2015. Olio-ohjelmoinnin perusteet (5 op) Tavoitteena
Kurssiesite Olio-ohjelmoinnin perusteet Kevät 2015 Jorma Laurikkala Tietojenkäsittelytieteet Informaatiotieteiden yksikkö Tampereen yliopisto Vastuuopettaja Jorma Laurikkala, yliopistonlehtori. Luennot,
LisätiedotAndroid ohjelmointi Tunti 5. SQLite, Cursor, Intent ja ADB
Android ohjelmointi Tunti 5 SQLite, Cursor, Intent ja ADB SQLite Tuetut tietotyypit: NULL INTEGER kokonaisluku REAL Reaaliluku, float, desimaali. Tallennetaan 1-8 tavun tarkkuudella luvun suuruudesta riippien
LisätiedotListarakenne (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ätiedotVastuuopettaja. Kurssiesite Olio-ohjelmoinnin perusteet (TIEA2.1) Kevät Olio-ohjelmoinnin perusteet (eli Oope) Laajuus
Kurssiesite Olio-ohjelmoinnin perusteet (TIEA2.1) Kevät 2018 Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto Vastuuopettaja Jorma Laurikkala, yliopistonlehtori.
LisätiedotKurssiesite Olio-ohjelmoinnin perusteet (TIEA2.1) Kevät 2018
Kurssiesite Olio-ohjelmoinnin perusteet (TIEA2.1) Kevät 2018 Jorma Laurikkala Tietojenkäsittelytieteet Luonnontieteiden tiedekunta Tampereen yliopisto Vastuuopettaja Jorma Laurikkala, yliopistonlehtori.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman
LisätiedotTietorakenteet ja algoritmit syksy Laskuharjoitus 1
Tietorakenteet ja algoritmit syksy 2012 Laskuharjoitus 1 1. Tietojenkäsittelijä voi ajatella logaritmia usein seuraavasti: a-kantainen logaritmi log a n kertoo, kuinka monta kertaa luku n pitää jakaa a:lla,
Lisätiedot[Jnix näyttökoe. o ei ole sallittua käyttää mitään verkkolevyjakoa tai mitään siihen rinnastettavaa järjestelmdä.
v1 081213 DTEK 1043 Opiskelun ja työelämän tietotekniikka [Jnix näyttökoe Tärkeää Naytt«ikokee(ssa/n) o saa hakea ohjeita Internetistä. o ei saa käyttää kurssimateriaaleja. o ei saa käyttää kirjallisia
Lisätiedot// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.
Lue kukin tehtävänanto huolellisesti ja kokonaisuudessaan ennen kuin aloitat vastaamisen. Kustakin tehtävästä voi saada 0 6 pistettä. Tentin läpipääsyraja on 12 / 24 pistettä. Ratkaisut palautetaan WETO-järjestelmään
Lisätiedot