Tik Projektiryhmä: TeamAhma.

Koko: px
Aloita esitys sivulta:

Download "Tik Projektiryhmä: TeamAhma."

Transkriptio

1 Käyttöohje v. 1.0 Päivitetty klo 17:28

2 2 (13) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite Parempi kuin edellinen Kosmeettisia muutoksia ja enimmät kirjoitusvirheet pois Mickey Shroff Alustava versio KÄYTTÖOHJE 2

3 3 (13) Sisällys DOKUMENTIN VERSIOHISTORIA JOHDANTO KÄYTTÄJÄT YHTEENSOPIVUUS KÄYTTÖTARKOITUS YLEISKUVAUS MÄÄRITELMÄ T, TERMIT JA LYHENTEET VIITTEET VIRHERAPORTOINTI ASENNUS JA KÄYTTÖÖNOTTO ASENNUS KÄYTTÖÖNOTTO TOIMINNOT (REFERENCE) KÄYTTÖTARKOITUS TOIMINNOT Turvaamattoman komennon luonti Turvatun komennon luonti Käyttäjien tunnistaminen Käyttäjä oikeuksien hallinta Komentojen suorittaminen VIRHEILMOITUKSET KÄYTTÖOHJE 3

4 4 (13) 1. JOHDANTO Dokumentti on tarkoitettu käyttöohjeeksi asiakkaan asiantuntijoille, jotka tulevat käyttämään sovelluskehikkoa sovellusten kehitystyössä. 1.1 Käyttäjät Käyttäjäluokkia on kaksi. He ovat ns. Java-ohjelmoijia ja ohjelmistosuunnittelijoita. Ohjelmoijilta vaaditaan vankat perustiedot Java-ohjelmoinnista. Ohjelmistosuunnittelijoiden pitäisi olla perillä patternien periaatteista. 1.2 Yhteensopivuus Koska kyseessä on sovelluskehikko, jonka palvelut mukautetaan kehitettävän ohjelmiston tarpeisiin, se ei aiheuta yhteensopivuusongelmia, vaan lähinnä pyrkii välttämään tällaisten tilanteiden syntymistä. Koska sovelluskehikko on toteutettu Javalla, ei laitteiston yhteensopivuudessa pitäisi aiheutua ongelmia. Sovelluskehikko ei itsessään aseta laitteistoon kohdistuvia vaatimuksia. Ohjelmistoa, jota kehitetään sovelluskehikon palveluiden kautta, asettaa omat sovelluskohtaiset tehovaatimukset laitteistolle. Näin ollen ei laitteistolle voida tässä vaiheessa asettaa muita vaatimuksia, kuin että Java-virtuaalikone pyörii kyseisessä. 1.3 Käyttötarkoitus Sovelluskehikkoa käytetään apuna käyttäjien tunnistamiseen ja käyttäjäoikeuksien hallintaan hajautetussa. Sovelluskehikko toteuttaa kehysrakenteen, jonka toiminnoilla voidaan implementoida erilaisia sovelluksia hajautetussa. Esimerkki tällaisesta sovelluksesta voisi olla weppikauppa, jossa käyttäjien tunnistaminen ja käyttäjäoikeuksien hallinta on keskeisessä asemassa. Sovelluskehikon avulla käyttäjätietokantojen sekä muiden sovelluksen tietokantojen hallinta on helppoa ja hauskaa. Tässä dokumentissa pyritään selvittämään, kuinka sovelluksia voidaan toteuttaa käyttäen apuna sovelluskehikon palveluita. Sovelluskehikkoon saadaan sovelluksen tarvitsemaa toiminnallisuutta toteuttamalla komentoja. Käyttäjäoikeuksien hallinta voidaan toteuttaa sovelluskehikon abstrakteja tietolähderajapintoja periyttämällä. KÄYTTÖOHJE 4

5 5 (13) 1.4 Yleiskuvaus Lyhyt dokumentin sisäinen kuvaus. Kappale 1 kokonaisuudessaan pohjustaa lukijan kyseiseen aiheeseen. Kappale 2 antaa ohjeet sovelluskehikon asentamiseksi toimintakuntoon. Kappale 3 esittelee, kuinka sovelluskehikon palveluita voidaan käyttää. Kappale 4 esittää sovelluskehikon poikkeukset. 1.5 Määritelmät, termit ja lyhenteet Sovelluskehikko Projektissa toteutettava lopputuote Sovellus Asiakkaan toteuttama sovelluskehikkoa hyödyntävä ohjelma Sovelluskehikon käyttäjä Asiakkaan ohjelmoija, joka käyttää sovelluksen tekemiseen projektissa valmistunutta sovelluskehikkoa Sovelluksen käyttäjä Asiakkaan sovellusta käyttävä henkilö tai prosessi Komento Komento on esimerkiksi jokin operaatio tai toiminto, jonka sovelluksen käyttäjä voi suorittaa sovelluksessa. Oikeus Sovelluksen käyttäjä tarvitsee komennon suorittamiseen oikeuden, joka tarkastetaan ennen kuin komento suoritetaan. Oikeuteen voi sisältyä lipuke. Kredentiaalit Käyttäjätietojen osa, joka sisältää tarpeelliset tiedot käyttäjän oikeuksien tarkistamiseen sovelluksessa. Kredentiaalit koostuvat esimerkiksi käyttäjän yksilöivästä tunnisteesta ja joukosta oikeuksia. 1.6 Viitteet [1] Sovelluskehikon toiminnallinen määrittely, , versio 1.0 tai uudempi, Mickey Shroff & Timo Lämsä,, [2] Sovelluskehikon tekninen määrittely, , versio 3.1,, [3] Sovelluskehikon API-dokumentointi, javadoc, , versio 1.0, KÄYTTÖOHJE 5

6 6 (13), [4] Apachen Jakarta-projektin alla, Log4J-komponentti Virheraportointi Ongelma tilanteissa yhteyshenkilö Tomas Björnfot vastaa kysymyksiin. Kysymykset voidaan lähettää osoitteeseen 2. ASENNUS JA KÄYTTÖÖNOTTO 2.1 Asennus Sovelluskehikko toimitetaan jar-paketissa: AHMA.jar. Sovelluskehikon konfigurointi tapahtuu erilaisten tiedostojen avulla, jotka löytyvät config-hakemiston alta. Sovelluskehikon toimivuus voidaan tarkistaa toteuttamalla seuraavat kaksi askelta. 1. Kun testisovellusta halutaan ajaa, täytyy se tehdä siitä hakemistosta, josta config-alihak emisto löytyy. Sovelluskehikon testisovelluksen pitäisi toimia myös silloin, jos config-hakemiston sisältävä hakemisto lisätään luokkapolkuun (ks. toiminallinen määritttely kappale 6.5 Operointi). Sovelluskehikko vie levytilaa n. 2Mb. Kehitysympäristönä käy mikä tahansa Javaa tukeva ympäristö. Sovelluskehikon testaus on suoritettu Windows NT-, Windows ja Linux-ympäristöissä. Sovelluskehikon käyttö omissa sovelluksissa vaatii oman sovelluksen Javalähdekoodien kääntämisen. Siksi sovelluskehikon käyttöön tarvitaan Javaohjelmointiympäristö. Sovelluskehikko toimii jdk versioista ylöspäin. Asennus vaatii aikaa minuuttia riippuen siitä onko sovelluskehikon käyttäjällä Java-ohjelmointiympäristö asennettuna. Asennuksen yhteydessä täytyy mahdollisesti konfiguroida myös tietokanta tms., joka vievät enemmän aikaa. 2. Asennus voidaan tarkistaa onnistuneeksi ajamalla TestClass-sovellus. Jos tämän suoritus menee läpi ilman virheilmoituksia, voidaan sovelluskehikon asennus todentaa onnistuneeksi. TestClass-luokka ja siihen liittymät muut luokat toimitetaan sovelluskehikon mukana. 2.2 Käyttöönotto Ennen sovelluskehikon käyttöönottoa ja esimerkkisovelluksen ajamista, tulisi tämä käyttöohje lukea huolellisesti läpi, turhien ongelmia välttämiseksi. Kappaleessa 2.1 käsitellään sovelluskehikon asennusta. Lisäksi ennen käyttöönottoa ja kehitystyöhön KÄYTTÖOHJE 6

7 7 (13) ryhtymistä olisi erittäin hyödyllistä lukea sovelluskehikon muuta dokumentaatiota, erityisesti tekninen määrittely [2]. KÄYTTÖOHJE 7

8 8 (13) 3. TOIMINNOT (REFERENCE) 3.1 Käyttötarkoitus Sovelluskehikko tarjoaa kolmenlaisia palveluita: komentojen luonnin, käyttäjän tunnistamisen ja käyttäjien oikeuksien hallinnan. Komentojen luonti -palvelulla tarkoitetaan toiminnallisuuden lisäämistä sovelluskehikkoon. Tämä tarkoittaa sitä, että komentoja käyttämällä voidaan luoda oman sovelluksen toiminnallisuus. Komennot voivat olla joko turvattuja tai turvaamattomia. Turvaamattomia komentoja voivat suorittaa kaikki käyttäjät, turvattuja komentoja voivat suorittaa vain sellaiset käyttäjät, joilla on tähän oikeudet. Komennon luonti koostuu kolmesta vaiheesta: komentoluokan, komentokohteen ja komentovasteen koodaamisesta. Komentoluokan välityksellä annetaan komennon mahdolliset välitettävät parametrit. Komentokohteessa suoritetaan varsinaiset toimenpiteet, jotka komennolla halutaan saavuttaa. Kun komento suoritetaan, palauttaa se komentovasteen. Komentovasteella voidaan saada mahdolliset palautteet komennon suorittamisesta. Käyttäjien tunnistaminen -palvelu antaa mahdollisuuden tunnistaa sovelluskohtaiset käyttäjät halutulla tavalla. Käyttäjät voidaan tunnistaa lukuisilla tavoilla, kuten sormenjäljistä, verkkokalvosta tai perinteisellä salasana- ja käyttäjätunnus - sanaparilla. Sovelluskehikko antaa siis mahdollisuuden toteuttaa erilaisia käyttäjän tunnistamispalveluita. Käyttäjien oikeuksien hallinta -palvelu mahdollistaa erilaisten käyttäjätasojen määrittelyn. Käyttäjätasoja voi olla esimerkiksi administrator, normal user tai advanced user. Käyttäjien oikeuksia käsitteleviä palveluita voidaan kehittää lisää sovelluskehikon palveluita käyttämällä. 3.2 Toiminnot Kaikista toiminnoista tulee esimerkkikoodit toimitettavan paketin mukana Turvaamattoman komennon luonti Tällaisen komennon suorittaminen ei vaadi minkäänlaisia oikeuksia komennon suorittajalta, käyttäjältä. Tämän kaltaisilla komennoilla on siis mahdollista toteuttaa sovellukseen toimintoja, jotka ovat kaikkien käyttäjien käytettävissä (ks. teknillinen määrittely [2]). Seuraavaksi käydään komennon luonti esimerkinomaisesti läpi. KÄYTTÖOHJE 8

9 9 (13) Komentoluokka Toteutetaan sovelluskehikon tarjoama Command-rajapinta: public class NotSecuredExampleCommand implements Command Tässä toteutettavan komennon luokkanimi on tummennetulla, joka voidaan vapaa valintaisesti valita. Jokaisella komennolla pitää olla ID, jonka avulla sovelluskehikko reitittää komennot komentokohteelle. Tämä ID-string voidaan valita siten, että muilla komennoilla ei ole samaa ID:tä. private final String commandid = "NOT_SECURED_EXAMPLE_COMMAND"; Lisäksi juuri luodun NotSecuredExampleCommand-luokan täytyy toteuttaa getcommandid-metodi, jota sovelluskehikko käyttää tunnistaakseen komennon. public String getcommandid( ) { } return commandid; Ohjelmoija voi lisätä myös omia metodejaan komentoluokkaan. Näitä voidaan käyttää esim. parametrien välittämiseen komentokohteelle Komentovaste Toteutetaan sovelluskehikon tarjoama Response-rajapinta: public class NotSecuredExampleResponse implements Response Response voi sisältää mitä tahansa tai olla myös tyhjä luokka Komentokohde Periytetään CommandTarget: public class NotSecuredExampleTarget extends CommandTarget { CommandTarget luokan abstrakti getinstance-metodi täytyy ylikirjoittaa periytetyssä luokassa. Tämän metodin avulla on mahdollista tehdä komentokohteesta singleton. KÄYTTÖOHJE 9

10 10 (13) public static CommandTarget getinstance() { } throw new UnsupportedOperationException(); execute-metodiin laitetaan kaikki koodi siitä, mitä komennolla halutaan tehdä. Argumentti command sisältää luodun komento-instanssin, jolta voidaan suorittaa omia komentometodeja, jotka sisältävät jonkinlaista tietoa parametreistä. public abstract Response execute(command command); Execute-metodin sisällä myös luodaan instanssi komentovasteesta, joka palautetaan komentoa kutsuvalle oliolle. NotSecuredExampleResponse resp = new etmessage()); NotSecuredExampleResponse(((NotSecuredExampleCommand)command).g Sovelluskehikon konfigurointi Jotta komento voitaisiin käyttöönottaa, täytyy sovelluskehikko konfiguroida huomioimaan juuri luotu komento. Tiedostoon commandfactory.properties täytyy lisätä juuri luodun komennon Id ja sen luokka. Tiedostossa avaimeksi annetaan komennon ID ja arvoksi komentoluokka: NOT_SECURED_EXAMPLE_COMMAND=fi.aware.AHMA.test.NotSecuredExampleC ommand Näin sovelluskehikko saa tiedon siitä mikä ID kuuluu millekin komennolle. Seuraavaksi täytyy huolehtia siitä, että komento menee oikealle komentokohteelle. Tiedosto commandmap.properties on luotu tätä tarkoitusta varten. Tiedostossa avaimeksi annetaan komennon ID ja arvoksi komentokohdeluokka: NOT_SECURED_EXAMPLE_COMMAND=fi.aware.AHMA.test.NotSecuredExampleT arget KÄYTTÖOHJE 10

11 11 (13) Turvatun komennon luonti Turvattuja komentoja voidaan käyttää tilanteissa, joissa vain tietyt käyttäjät/käyttäjäryhmät voivat suorittaa vain tiettyjä komentoja (ks. teknillinen määrittely [2]) Komentoluokka Turvattu komento periytetään SecuredCommand-luokasta. Turvatun komennon konstruktorissa pitäisi asettaa komennolle oikeudet lähettämällä sovelluskehykselle komennon ID seuraavasti: Konstruktori() { Permission perm = new Permission(commandId); setpermission(perm); } Komentovaste Tehdään samoin kuin turvaamattomassa komennossa, ks. kappale Komentokohde Tehdään samoin kuin turvaamattomassa komennossa, ks. kappale Sovelluskehikon konfigurointi Komennon ID ja komentokohteen kirjaaminen käy samoin kuin turvaamattomassa komennossa, kunhan ID ja luokkien nimet vaihdetaan oikeiksi Käyttäjien tunnistaminen Käyttäjien tunnistaminen käyttäen metodirajapintaa Sovelluskehikossa on jo valmiiksi toteutettu käyttäjätunnus/salasana autentikointi tapa. Sovelluskehikkoon voidaan liittää helposti myös muita, erilaisia autentikointitapoja. Ohje keskittyy kuitenkin vain käyttäjätunnus/salasanaautentikointiin. Käyttäjien tunnistaminen tapahtuu metodirajapintaa käyttäen seuraavasti: KÄYTTÖOHJE 11

12 12 (13) UseridPasswordAuthentication passwordauth = (UseridPasswordAuthentication)authInst.getInstance(authType); Principal p = passwordauth.authenticate(userid, password); Näin saatua principal-oliota voidaan käyttää turvattujen komentojen suorittamiseen. Principal voidaan hakea erilaisista tietokannoista. Sovelluskehikko on konfiguroitu käyttämään SQL-kantaa (SQLUserDatasource.java) käyttäjätietojen hakemiseen. Käyttäjätietolähdekannassa tulisi aina olla käyttäjätunnus- ja salasanasarake. SQL-käyttäjätietolähteen kentät pitäisi olla varchar-tyyppiä. Jos käyttäjien tunnistamiseen käytetään LPAD:ia, täytyy salanasana-kenttä olla oktetstringtyyppinen. Principal-luokasta periytetty TestPrincipal toimii tällä hetkellä käyttäjätietolähteen pohjana. Tämä kertoo, mitä käyttäjätietoja haetaan kannasta käyttäjän Principalinstanssiin. TestPrincipal-luokan attribuutit, kuten address, password, jne, haetaan automaattisesti käyttäjätietolähdekannasta. Myös atribuutteja vastaavat setteri ja getteri -metodit täytyy toteuttaa. Tämä tapahtuu tutkimalla TestPrincipal-luokan juuri mainittuja attribuutteja. Käyttäjätietolähdekannassa pitäisi myös olla vastaavat sarakkeet samoin nimettynä kuin principal:n attribuutit Sovelluskehikon konfigurointi Konfigurointitiedostossa AHMA.properties voidaan kyseinen principal vaihtaa omaan principaliin. Alla on TestPrincipal-luokka asetettu Principal-luokaksi. PrincipalClass =TestPrincipal Samassa tiedossa voidaan valita aktiivinen käyttäjätietolähde. Alla olevista riveistä ylemmästä pitäisi ottaa kommentti pois, jos SQL-käyttäjätietolähdettä halutaan käyttää ja LDAP:n vastaava kommentoida. #UserDatasourceConfigFile UserDatasourceConfigFile =config\\sqluserdatasource.properties =config\\ldapuserdatasource.properties Tiedosto SQLUserDatasource.properties sisältää SQL-kannan asetukset, jotka pitäisi vaihtaa omaa SQL-kantaa vastaaviksi. KÄYTTÖOHJE 12

13 13 (13) Käyttäjä oikeuksien hallinta Tietokanta Kun halutaan suorittaa turvattu komento, sovelluskehikko hoitaa oikeuksien tarkistamisen. Oikeudet haetaan ns. credentials-tietolähteestä, joka voi olla jokin tietokanta. Tällä hetkellä credentials-tietolähteenä toimii SQL-tietokanta. Credentialstietolähteen kentät pitäisi olla varchar-tyyppiä. Credentials-tietokannassa tulisi aina olla seuraavat sarakkeet: käyttäjätunnus, komennon ID, sekä action string. Turvattujen komentojen oikeuksien tarkistaminen suoritetaan käyttäjätunnuksen ja komennon ID:n perusteella Sovelluskehikon konfigurointi Tiedostosta AHMA.properties tulisi varmistaa, että rivi CredDatasourceConfigFile =config\\sqlcredentialsdatasource.properties ei ole kommentoituna, jos halutaan käyttää SQL-tietokantaa käyttäjienkredentiaalitietojenlähteenä. SQLCredentialsDatasource.properties tiedostoon voidaan vaihtaa käyttäjätunnus, komennon ID ja action string kentät omaa kantaa vastaaviksi Komentojen suorittaminen Sovelluskehikon alustaminen Ennen sovelluskehikon palveluiden ohjelmallista käyttämistä täytyy sovelluskehikko alustaa. Alustaminen tapahtuu seuraavalla staattisella metodikutsulla: CommandManager.init() Turvaamattoman komennon suorittaminen Turvaamaton komento ei tarvi käyttäjän tunnistamispalveluita, vaan komento voidaan suorittaa sinällään näin: NotSecuredExampleCommand cmd = (NotSecuredExampleCommand)CommandFactory.createCommand("NOT_SECURED _EXAMPLE_COMMAND ) Turvatun komennon suorittaminen Koska turvatun komennon suorittaminen vaati oikeuksien tarkistamisen, täytyy käyttäjä autentikoida ennen komennon suorittamista: KÄYTTÖOHJE 13

14 14 (13) UseridPasswordAuthentication passwordauth = (UseridPasswordAuthentication)authInst.getInstance(authType); Principal p = passwordauth.authenticate(userid, password); Autentikoinnin seurauksena saadaan käyttöön käyttäjän principal, jonka avulla sovelluskehikko voi päätellä, onko kyseisellä käyttäjällä oikeuksia komennon suorittamiseen. TestCommand testcmd = (TestCommand)CommandManager.getInstance("TEST_COMMAND"); testcmd.setprincipal(p); TestResponse testresp = (TestResponse)CommandManager.execute(testCmd); 4. VIRHEILMOITUKSET Sovelluskehikon omia poikkeuksia ovat (ks. Teknisen määrittelyn luku 8): AuthenticationException, tilanne jolloin käyttäjän tunnistaminen ei onnistu. NoPermissionException, tilanne jolloin käyttäjän oikeudet eivät riitä komennon suorittamiseen. TargetNotFoundException, tilanne joka syntyy, kun komennon kohdetta ei löydy. CommandNotFoundException, tilanne joka syntyy, kun komento luokkaa ei löydy tai sitä ei ole konfiguroitu käytettäväksi sovellukseen. Sovelluskehikko käyttää virheiden ilmoittamiseen ja tallentamiseen Log4Jkomponenttia. Konfigurointitiedossa AHMALog.properties voidaan vaihdella kyseisen komponentin kirjaamistasoja. Apachen weppi-sivuilla [4] on tarkemmat tiedot komponentin toiminnasta ja konfiguroinnista. KÄYTTÖOHJE 14

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Käyttöohje v. 0.8 Päivitetty 19.3.2001 klo 21:59 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 0.8 19.3.2001 Janne Kosmeettisia muutoksia

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä Toiminnallinen määrittely v. 1.0 Päivitetty 6.11.2000 klo 20:07 Janne Kankaanpää 2 (2) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 1.0 6.11.2000 Janne Kankaanpää, Tomas

Lisätiedot

Valppaan asennus- ja käyttöohje

Valppaan asennus- ja käyttöohje Versio Päiväys Muokkaaja Kuvaus 0.9 16.2.2006 Tuukka Laakso Korjattu versio 0.1 Antti Kettunen Alustava versio Sisällysluettelo 1 Johdanto...2 2 Valppaan asennus...3 2.1 Valppaan kääntäminen...3 2.2 Valmiiksi

Lisätiedot

Sisä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. 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ä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

Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä

Oliosuunnitteluesimerkki: 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ätiedot

Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014

Ohjelmoinnin 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ätiedot

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2

Sisä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ätiedot

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2 4. Attribuutit 4.1 Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2 Yleistä Luokan lohkossa, mutta metodien ulkopuolella esiteltyjä

Lisätiedot

812341A Olio-ohjelmointi Peruskäsitteet jatkoa

812341A 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ä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

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin. TIETOKANTA MERIKOTKIEN SEURANTAAN Käyttöohje Versiohistoria: Versio Päivämäärä Kuvaus Tekijä 1.0 11.12.2007 Ensimmäinen luonnos Janne Piippo 2.0 13.12.2007 Virallinen verio Janne Piippo HELSINGIN YLIOPISTO

Lisätiedot

Aalto Yliopisto T-106.2001 Informaatioverkostot: Studio 1. Oliot ja luokat Javaohjelmoinnissa

Aalto Yliopisto T-106.2001 Informaatioverkostot: Studio 1. Oliot ja luokat Javaohjelmoinnissa Aalto Yliopisto T-106.2001 Informaatioverkostot: Studio 1 Oliot ja luokat Javaohjelmoinnissa Vesa Laakso 22.9.2012 Sisällysluettelo Sisällysluettelo... 1 Johdanto... 2 1. Luokka... 2 2. Olio... 2 3. Luokan

Lisätiedot

4. Luokan testaus ja käyttö olion kautta 4.1

4. 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ätiedot

5. HelloWorld-ohjelma 5.1

5. 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ätiedot

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki Tehtävä 1 Koherentti selitys Koherentti esimerkki ½p ½p Tehtävä 2 Täysiin pisteisiin edellytetään pelaajien tulostamista esimerkin järjestyksessä. Jos ohjelmasi tulostaa pelaajat jossain muussa järjestyksessä,

Lisätiedot

Mikä yhteyssuhde on?

Mikä 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ätiedot

Olion elinikä. Olion luominen. Olion tuhoutuminen. Olion tuhoutuminen. Kissa rontti = null; rontti = new Kissa();

Olion 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ätiedot

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.

Rajapinnasta 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ätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Opintojakso TT00AA11 Ohjelmoinnin jatko (Java) Tavoite Opiskelija ymmärtää olio-ohjelmoinnin problematiikan. Opiskelija osaa määritellä ja käyttää itse

Lisätiedot

9. Periytyminen Javassa 9.1

9. Periytyminen Javassa 9.1 9. Periytyminen Javassa 9.1 Sisällys Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Ilmentymämetodien korvaaminen. Luokkametodien peittäminen. Super-attribuutti. Override-annotaatio.

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Tekninen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Sisällysluettelo 1. Johdanto...4 1.1. Tarkoitus ja kattavuus...4 1.2. Tuote ja ympäristö...4 1.3. Määritelmät,

Lisätiedot

Lohtu-projekti. Testaussuunnitelma

Lohtu-projekti. Testaussuunnitelma Lohtu-projekti Testaussuunnitelma Versiohistoria: 1.0 19.2.2003 1. versio Mari 1.1 20.2.2003 Muutoksia Mari 1.2 25.2.2003 Katselmoinnissa esiin tulleet Mari muutokset 1.3 17.3.2003 2. syklissä tehtävät

Lisätiedot

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy Kehitysohje ETL-työkalu Versio Pvm Tekijä Kuvaus 0.1 15.1.2005 Timo Sallinen Ensimmäinen versio 0.2 26.1.2005 Timo Sallinen Täydenetty pohjaa 0.3 06.02.2005 Mika Suvanto Pieniä täydennyksiä ja oikolukua

Lisätiedot

Rajapinta (interface)

Rajapinta (interface) 1 Rajapinta (interface) Mikä rajapinta on? Rajapinta ja siitä toteutettu luokka Monimuotoisuus ja dynaaminen sidonta Rajapinta vs periytyminen 1 Mikä rajapinta on? Rajapintoja käytetään, kun halutaan määritellä

Lisätiedot

Olio-ohjelmointi Virhetilanteiden käsittely

Olio-ohjelmointi Virhetilanteiden käsittely Olio-ohjelmointi 2016 Virhetilanteiden käsittely Poikkeustilanteet n Java-järjestelmässä voidaan ottaa kiinni ohjelman suoritusaikana tapahtuvia virhetilanteita, joita ei saada kiinni tavanomaisilla ohjausrakenteilla

Lisätiedot

5. HelloWorld-ohjelma 5.1

5. 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ätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: Linux-harjoitus 6 Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,

Lisätiedot

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus: Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus

Lisätiedot

Sisällys. 11. Rajapinnat. Johdanto. Johdanto

Sisä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ätiedot

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Maastotietokannan 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ätiedot

Sisällys. Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2

Sisällys. Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2 6. Metodit 6.1 Sisällys Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2 Oliot viestivät metodeja kutsuen Olio-ohjelmoinnissa ohjelma

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

Tikon ostolaskujen käsittely

Tikon ostolaskujen käsittely Toukokuu 2014 1 (8) Toukokuu 2014 2 (8) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen aktivointi... 5 6. Eräajot

Lisätiedot

UCOT-Sovellusprojekti. Asennusohje

UCOT-Sovellusprojekti. Asennusohje UCOT-Sovellusprojekti Asennusohje Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 1.00 Julkinen 15. joulukuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä Demosovelluksen toiminnallinen määrittely v. 1.1 Päivitetty 11.12.2000 klo 20:16 Timo Lämsä 2 (13) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite Timo Lämsä Pieniä korjauksia.

Lisätiedot

Tik Projektiryhmä: TeamAhma. Projektin HAYABUSA opponointi. Opponointisuunnitelma

Tik Projektiryhmä: TeamAhma.  Projektin HAYABUSA opponointi. Opponointisuunnitelma TeamAhma Projektin HAYABUSA opponointi Opponointisuunnitelma Päivitetty 25.3.2001 klo 12:08 Projektin HAYABUSA opponointi Mikko Viljainen 2 (5) Sisällys 1. JOHDANTO...3 2. YMPÄRISTÖ...3 3. HENKILÖSTÖ...4

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

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0 Toukokuu 2014 1 (11) Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0 Päivitysohje Toukokuu 2014 2 (11) Sisällysluettelo 1. Tehtävät ennen versiopäivitystä... 3 1.1. Ohjelmistomuutosten luku...

Lisätiedot

Java-API, rajapinnat, poikkeukset, UML,...

Java-API, rajapinnat, poikkeukset, UML,... Java-API, rajapinnat, r poikkeukset, UML,... Janne Käki 12.10.2006 Keskeisimmät Java-API:n pakkaukset API = Application Programming Interface eli sovellusohjelmointirajapinta (!) pakkaus (engl. package)

Lisätiedot

Uutta Remote Support Platform 3.1 -versiossa

Uutta Remote Support Platform 3.1 -versiossa What's New Asiakirjaversio: 1.0 2014-05-09 Asiakirjaversiot Seuraavassa taulukossa esitellään asiakirjan tärkeimmät muutokset. Versio Pvm Kuvaus 1.0 2014-05-09 Ensimmäinen versio 2 All rights reserved.

Lisätiedot

Luokat ja oliot. Ville Sundberg

Luokat ja oliot. Ville Sundberg Luokat ja oliot Ville Sundberg 12.9.2007 Maailma on täynnä olioita Myös tietokoneohjelmat koostuvat olioista Σ Ο ω Μ ς υ φ Ϊ Φ Θ ψ Љ Є Ύ χ Й Mikä on olio? Tietokoneohjelman rakennuspalikka Oliolla on kaksi

Lisätiedot

1 Tehtävän kuvaus ja analysointi

1 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ä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

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty

Lisätiedot

Kompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma

Kompositio. 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ätiedot

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ aaro.leikari@hotmail.com TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ 25.01.2016 SISÄLLYS 1. Käyttöjärjestelmän asentaminen... 1 1.1 Windowsin asettamia laitteistovaatimuksia... 1 1.2 Windowsin asentaminen...

Lisätiedot

Tikon ostolaskujen käsittely

Tikon ostolaskujen käsittely Toukokuu 2013 1 (7) 6.3.0 Copyright Aditro 2013 Toukokuu 2013 2 (7) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen

Lisätiedot

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja

Lisätiedot

Sisällys. 6. Metodit. Oliot viestivät metodeja kutsuen. Oliot viestivät metodeja kutsuen

Sisällys. 6. Metodit. Oliot viestivät metodeja kutsuen. Oliot viestivät metodeja kutsuen Sisällys 6. Metodit Oliot viestivät metodeja kutsuen. Kuormittaminen. Luokkametodit (ja -attribuutit).. Metodien ja muun luokan sisällön järjestäminen. 6.1 6.2 Oliot viestivät metodeja kutsuen Oliot viestivät

Lisätiedot

13/20: Kierrätys kannattaa koodaamisessakin

13/20: Kierrätys kannattaa koodaamisessakin Ohjelmointi 1 / syksy 2007 13/20: Kierrätys kannattaa koodaamisessakin Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy

Lisätiedot

Ohjelmointi 2 / 2010 Välikoe / 26.3

Ohjelmointi 2 / 2010 Välikoe / 26.3 Ohjelmointi 2 / 2010 Välikoe / 26.3 Välikoe / 26.3 Vastaa neljään (4) tehtävään ja halutessa bonustehtäviin B1 ja/tai B2, (tuovat lisäpisteitä). Bonustehtävät saa tehdä vaikkei olisi tehnyt siihen tehtävään

Lisätiedot

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA: REFAKTOROINTI 2 (9) SEPA: REFAKTOROINTI 3 (9) VERSIOHISTORIA Version Date Author Description 0.1 2.12.2005 Erik Hakala Ensimmäinen

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Pakkaukset ja määreet

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Pakkaukset ja määreet Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Pakkaukset ja määreet Pakkaukset ja määreet Toisiinsa liittyvät luokkatiedostot voidaan koota pakkauksiksi. Luo hierarkiaa ja järjestystä ohjelmistotuotteeseen.

Lisätiedot

JOVISION IP-KAMERA Käyttöohje

JOVISION IP-KAMERA Käyttöohje JOVISION IP-KAMERA Käyttöohje 1 Yleistä... 2 2 Kameran kytkeminen verkkoon... 2 2.1 Tietokoneella... 2 2.2 Älypuhelimella / tabletilla... 5 3 Salasanan vaihtaminen... 8 3.1 Salasanan vaihtaminen Windows

Lisätiedot

7. Oliot ja viitteet 7.1

7. 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ätiedot

4. Olio-ohjelmoinista lyhyesti 4.1

4. Olio-ohjelmoinista lyhyesti 4.1 4. Olio-ohjelmoinista lyhyesti 4.1 Sisällys Yleistä. Oliot ja luokat. Attribuutit. Olioiden esittely ja alustus. Rakentajat. Olion operaation kutsuminen. 4.2 Yleistä Olio-ohjelmointia käsitellään hyvin

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Testauksen loppuraportti v. 1.0 Päivitetty 23.4.2001 klo 19:05 Mikko Viljainen 2 (14) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 1.0

Lisätiedot

EMVHost Online SUBJECT: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT COMPANY: EMVHost Online Client sovelluksen käyttöohje AUTHOR: DATE: 15.03.

EMVHost Online SUBJECT: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT COMPANY: EMVHost Online Client sovelluksen käyttöohje AUTHOR: DATE: 15.03. EMVHost Online SUBJECT: COMPANY: COMMENTS: AUTHOR: EMVHOST ONLINE CLIENT - AUTOMAATTISIIRROT NETS OY EMVHost Online Client sovelluksen käyttöohje NETS OY DATE: 15.03.2011 VERSION: 1.0 1 SISÄLLYS SISÄLLYS...

Lisätiedot

Visma Avendon asennusohje

Visma Avendon asennusohje Visma Avendon asennusohje 1 Versio 5.21 On tärkeää, että käytössäsi on aina uusin toimittamamme versio ohjelmistosta. Asentamalla viimeisimmän version saat käyttöösi ohjelman tuoreimmat ominaisuudet ja

Lisätiedot

2. Olio-ohjelmoinista lyhyesti 2.1

2. Olio-ohjelmoinista lyhyesti 2.1 2. Olio-ohjelmoinista lyhyesti 2.1 Sisällys Yleistä. Oliot ja luokat. Attribuutit. Olioiden esittely ja alustus. Rakentajat. Olion operaation kutsuminen. 2.2 Yleistä Olio-ohjelmointia käsitellään hyvin

Lisätiedot

Maventa Connector Käyttöohje

Maventa Connector Käyttöohje Maventa Connector Käyttöohje 17.4.2015 Sisällys 1. Esittely... 2 1.1. Käytön edellytykset... 2 1.2. Tuetut aineistomuodot... 2 2. Asennustiedosto... 3 2.1. Sisäänkirjautuminen... 7 3. Asetuksien määrittäminen...

Lisätiedot

Sisällys. 7. Oliot ja viitteet. Olion luominen. Olio Java-kielessä

Sisä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ätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä Edistymisraportti v. T4 (Toteutus 4) Päivitetty 15.3.2001 klo 18:13 2 (8) Sisällys 1 PROJEKTIN TILA...3 2 SUORITETUT TEHTÄVÄT...6 3 KÄYTETYT MENETELMÄT...7 4 ONGELMAT...8 EDISTYMISRAPORTTI 2 3 (8) 1. Projektin

Lisätiedot

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Ylläpitodokumentti Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Helsinki 16.7.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS TYÖASEMALLE

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS TYÖASEMALLE NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS TYÖASEMALLE 1) Navita Budjettijärjestelmä asennetaan palvelimelle asennetusta Navita\NavitaSetup kansiosta Setup komennolla tämä mahdollistaa Navita-työasemien automaattisen

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

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen

Opintojakso 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ätiedot

CLOUDBACKUP TSM varmistusohjelmiston asennus

CLOUDBACKUP TSM varmistusohjelmiston asennus Luottamuksellinen JAVERDEL OY CLOUDBACKUP TSM varmistusohjelmiston asennus Copyright 2 (9) SISÄLLYSLUETTELO 1 ASENNUSOHJE WINDOWS KÄYTTÖJÄRJESTELMÄLLÄ VARUSTETTUIHIN LAITTEISIIN... 3 1.1 Yleistä... 3 1.2

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

SilvaToiminta Versio 1.0. SilvaToiminta. Pikaohje Versio Oy Silvadata Ab Pikaohje 1

SilvaToiminta Versio 1.0. SilvaToiminta. Pikaohje Versio Oy Silvadata Ab Pikaohje 1 SilvaToiminta Pikaohje Versio 1.0 12.12.2014 Oy Silvadata Ab 10.12.2014 Pikaohje 1 SISÄLLYS 1 SILVATOIMINTA... 3 2 OHJELMISTON KÄYTTÖTARKOITUS... 4 2.1 Osiot... 4 2.1.1 Asiakkaat... 4 2.1.2 Viestit...

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

Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC)

Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC) HAAGA-HELIA ICT1TA006: Ohjelmointi 1 /5 Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC) (Lähteet: Oracle java jdbc Tutorial, Arvo Lipitsäinen: Tietokannan käsittely JDBC:n

Lisätiedot

Tietokannat II -kurssin harjoitustyö

Tietokannat II -kurssin harjoitustyö Tietokannat II -kurssin harjoitustyö Jyri Lehtonen (72039), jkoleh@utu.fi Azad Hajipour (72187), azhaji@utu.fi 10.6.2007 Sisältö 1. Tietokannan kuvaus... 1 1.1 Tietokannan rakenne... 1 1.2 Relaatiokaava

Lisätiedot

Visma Business AddOn Tositteiden tuonti. Käsikirja

Visma Business AddOn Tositteiden tuonti. Käsikirja Visma Business AddOn Tositteiden tuonti Käsikirja Oppaan päiväys: 10.2.2012. Asiakaspalvelu: Helpdesk: www.visma.fi Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin

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

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

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

Ohjelmointi 2 / 2008 Välikoe / Pöytätestaa seuraava ohjelma.

Ohjelmointi 2 / 2008 Välikoe / Pöytätestaa seuraava ohjelma. Välikoe / 20.3 Vastaa neljään (4) tehtävään. Jos vastaat 5:een, 4 huonointa arvostellaan. Kunkin tehtävän vastaus eri konseptille. 1. Pöytätesti Pöytätestaa seuraava ohjelma. Tutki ohjelman toimintaa pöytätestillä

Lisätiedot

SQL Server 2008 asennus

SQL Server 2008 asennus SQL Server 2008 asennus 1. Yleistä... 3 2. Edellytykset... 3 3. SQL Server 2008 Express asennus... 4 4. Yhteystiedot... 6 2/6 1. YLEISTÄ Tässä ohjeessa käydään vaiheittain Microsoft SQL Server 2008 tietokantaohjelmiston

Lisätiedot

LINUX-HARJOITUS, MYSQL

LINUX-HARJOITUS, MYSQL LINUX-HARJOITUS, MYSQL Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,

Lisätiedot

Sisällys. 9. Periytyminen Javassa. Periytymismekanismi Java-kielessä. Periytymismekanismi Java-kielessä

Sisällys. 9. Periytyminen Javassa. Periytymismekanismi Java-kielessä. Periytymismekanismi Java-kielessä Sisällys 9. Periytyminen Javassa Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Metodien korvaaminen ja super-attribuutti. Attribuutin peittäminen periytymisen kautta. Rakentajat

Lisätiedot

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Asennusohje Sahara-ryhmä Helsinki 24.8.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Sanna Keskioja Sampo

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

Käyttöohje. Ticket Inspector. Versio 1.0. Sportum Oy

Käyttöohje. Ticket Inspector. Versio 1.0. Sportum Oy Käyttöohje Ticket Inspector Versio 1.0 Sportum Oy 10.5.2017 Sivu 1 Sisällysluettelo 1. Yleistä... 2 2. Kirjautuminen ensimmäisellä kerralla / PIN-koodin unohtuessa... 3 3. Tunnistautuminen... 4 4. Päänäkymä...

Lisätiedot

JUnit ja EasyMock (TilaustenKäsittely)

JUnit ja EasyMock (TilaustenKäsittely) OHJELMISTOJEN TESTAUS JA HALLINTA Syksy 2015 / Auvo Häkkinen JUnit ja EasyMock (TilaustenKäsittely) Tehtävässä tarvittava koodi löytyy osoitteella http://users.metropolia.fi/~hakka/oth/mockesimerkki.zip

Lisätiedot

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE Ennen palvelinohjelman asennusta perustetaan tarvittavat kansiot. Oikeustasoista share- tai security-tason oikeudet riittävät; molempien oikeustasojen

Lisätiedot

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32 HSMT Tietokannoista Ville Leppänen HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)

Lisätiedot

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi)

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Tietokannan hallinta-opintojakson selvitysraportti Huhtikuu 2010 Mediatekniikka ICT/Teknologia Tämän teosteoksen käyttöoikeutta koskee Creative

Lisätiedot

Visma Business AddOn Installer. Käsikirja

Visma Business AddOn Installer. Käsikirja Visma Business AddOn Installer Käsikirja Oppaan päiväys: 4.3.2015. Asiakaspalvelu: Helpdesk: www.visma.fi Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin tässä

Lisätiedot

P e d a c o d e ohjelmointikoulutus verkossa

P e d a c o d e ohjelmointikoulutus verkossa P e d a c o d e ohjelmointikoulutus verkossa Java-kielen perusteet Teoria ja ohjelmointitehtävät Java-kielen perusteet 3 YLEISKATSAUS KURSSIN SISÄLTÖIHIN 10 JAVA-KIELEN PERUSTEET 10 OPISKELUN ALOITTAMINEN

Lisätiedot

MPCC-työkalua voidaan käyttää yhden laitteen valvontaan ja yhden tai useamman laitteen konfigurointiin (Modbus broadcast, osoite 0).

MPCC-työkalua voidaan käyttää yhden laitteen valvontaan ja yhden tai useamman laitteen konfigurointiin (Modbus broadcast, osoite 0). V1.0.0 (14.10.2015) 1 (7) KYTKENTÄ HUOM: toimii Modbus-masterina. Tämän vuoksi toinen mahdollinen Modbus-master on irrotettava verkosta, kun kytketään valmiiseen Modbus-verkkoon. Produalin Modbus-laitteiden

Lisätiedot

15. Ohjelmoinnin tekniikkaa 15.1

15. 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ätiedot

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Liite 1: skenaariot ja PoC tulokset 1. Palvelun kehittäjän näkökulma Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Palvelun uusi versio on Palveluiden kehittäminen voitava asentaa tuotantoon vaikeutuu

Lisätiedot

Web Services tietokantaohjelmoinnin perusteet

Web Services tietokantaohjelmoinnin perusteet ASP.NET Web Services Web Services tietokantaohjelmoinnin 2 (22) Sisällys Harjoitus 1: Tietokannat ja Web Services... 3 Harjoitus 2: Windows Client... 10 Harjoitus 3: Datan päivitys TableAdapterin avulla...

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

LoCCaM. LoCCaM Cam laitteiston ohjaaminen. Dimag Ky dimag.fi

LoCCaM. LoCCaM Cam laitteiston ohjaaminen. Dimag Ky dimag.fi LoCCaM LoCCaM Cam laitteiston ohjaaminen Dimag Ky janne.koski @ dimag.fi +358505907788 Laitteen lisääminen sovellukseen Sovelluksen pääsivulta valitaan oikeasta yläkulman valikosta Aloita uusi (1) Aukeavaan

Lisätiedot