WWW-ohjelmointi ANTTI SAND TIETA12

Koko: px
Aloita esitys sivulta:

Download "WWW-ohjelmointi ANTTI SAND TIETA12"

Transkriptio

1 WWW-ohjelmointi ANTTI SAND TIETA12

2 Namespaces 2

3 Namespaces 3 No man is an island Haluamme hyödyntää muiden kirjoittamia komponentteja Mutta tähän asti kaikki luokkamme sijaitsevat globaalissa nimiavaruudessa Jos meillä on luokka Request ja haluamme käyttää pakettia, joka myös määrittää luokan Request, seuraa poikkeus Tarvitaan tapa jaotella luokat nimiavaruuksiin Yksinkertaisimmillaan seuraavasti

4 Suositeltuja käytäntöjä 4 Yksi luokka per tiedosto Yksi nimiavaruus per tiedosto Yksi pakettikohtainen päänimiavaruus (tässä geneerinen App) Nimiavaruuksien olisi hyvä vastata hakemistorakennetta App\Core\Bar = App/Core/Bar.php Mutta tähän ei pakoteta Mutta tästä on myöhemmin hyötyä

5 Use namespace 5 Voidaan kirjoittaa luokan täydellinen nimiavaruus Jos ollaan nimiavaruudessa App ja halutaan App\Core\Bar, voidaan kirjoittaa vain Core\Bar Tai jos halutaan Vendor\Bar, kirjoitetaan \Vendor\Bar, jolloin haetaan juuresta Tai voidaan käyttää (use) nimiavaruutta Ja voidaan halutessaan antaa alias (as Bar1) TIETA A.S.

6 Namespace caveats 6 Kielen omat luokat eivät kuulu sovelluksen nimiavaruuteen Esimerkiksi Router palauttaa poikkeuksen (Exception), joka ei kuulu luokan omaan nimiavaruuteen App\Core Jos kutsuja on vain yksi, voidaan kirjoittaa throw new \Exception(.. ); Tai jos kutsuja on useita (kuten QueryBuilderin PDO), voidaan kirjoittaa normaalisti use PDO;

7 Täydellinen nimi vai use? 7 Jos käytät jotain luokkaa vain muutamassa kohdassa, voit kirjoittaa täydellisen nimen $request = new \App\Core\Request(); Mutta jos komponenttia käytetään toistuvasti samassa luokassa, voidaan tuoda se osaksi luokan nimiavaruuksia Use App\Core\Request; $request = new Request(); Jos sinulla on useampia kuin yksi samanniminen luokka, voit käyttää täydellisiä nimiä, käyttää toista nimeä, tai käyttää molempia, mutta lisätä alias $a = new \App\Core\MyClass(); $b = new \Support\Something\MyClass();

8 Namespace caveats 8 Aiemmin käytimme Model luokassa get_called_class() funktiota määrittämään taulun nimen Kun siirrymme käyttämään nimiavaruuksia, tuo funktio palauttaa täydellisen nimen (l. Sisältää nimiavaruuden) Eli jos laitamme luokan Task nimiavaruuteen App\Models, funktio palauttaisi App\Models\Task Muokataan siis Model luokan gettablename metodia palauttamaan vain viimeisen kenoviivan jälkeinen osuus

9 9 PHP-FIG Framework Interop Group -

10 PHP-FIG 10 Ohjelmointikehyksen kehittyivät eristyksissä toisistaan, ne eivät jakaneet toiminnallisuutta, eivätkä noudattaneet samoja käytäntöjä CodeIgniter toteutti toiminnallisuuden X tavalla Y Ja Zend toteutti toiminnallisuuden X tavalla Z Php tek2009 konferenssissa muodostettiin PHP-FIG työryhmä sopimaan yhteisistä käytännöistä Luodaan komponentteja, jotka noudattavat sovittuja käytäntöjä ja koostetaan ohjelmointikehykset näistä komponenteista Kehittäjä voi vaihdella ja yhdistellä käytännön toteutuksia mieleisellään tavalla Komponentit tarjoavat sovitun rajapinnan, mutta itse toteutus vaihtelee

11 11 PHP-FIG antaa suosituksia rakenteelle PSRs = PHP Standards Recommendations PSR1&2 antavat suosituksia merkkaustavoista PSR0&4 määrittävät nimiavaruuksien käytön tiedostojen automaattiseen lataamiseen Ei enää tarvetta require file.php ;

12 Composer 12

13 Composer 13 Composer on paketinhallintatyökalu PHP:lle Voidaan merkata jokin paketti riippuvuudeksi Composer huolehtii sen asentamisesta ja päivittämisestä Vertaa NPM

14 Packagist 14 Packagist on koostesivu PHP komponenteista The League of Extraordinaty Packages Voit etsiä tarpeeseesi sopivan komponentin ja asentaa sen Composerilla Composer require guzzlehttp/guzzle Composer lisää komponentin composer.json tiedostoon projektin riippuvuudeksi Uusi kehittäjä tulee mukaan projektiin, ajaa composer install ja saa projektin riippuvuudet omalle kehityskoneelleen

15 Composer.json 15 NPM Packages.json Composer Composer.json Määrittää JSON -muodossa vaaditut riippuvuudet Lisätään seuraavaksi riippuvuus yksinkertaiselle autoloaderille

16 Composer.json 16 Luodaan projektin juureen composer.json tiedosto Kirjoitetaan JSON objekti autoload ja määritetään sille classmap taulukko Tässä ladataan koko projektin sisältä kaikki luokat automaattisesti HUOM! PSR-0 autoload standardi on vanhentunut ja korvattu PSR-4 autoload standardilla Harjoituksena muuttaa PSR-0 -> PSR-4

17 Composer install 17 Ajetaan komentorivillä composer install Tämä lukee composer.json tiedoston ja asentaa vendor hakemistoon projektin riippuvuudet. Tässä autoload.php tiedoston Voidaan poistaa require:t kaikilta luokkatiedostoilta ja ladata vain autoload.php Composer rakentaa autoload_classmap.php tiedoston, jossa mapataan nimiavaruudellinen luokka sen toteuttavaan tiedostoon Tämä ei päivity automaattisesti. Jos siirtelet tiedostoja hakemistosta tai nimiavaruudesta toiseen, tai lisäät tiedostoja, sinun tulee uudelleen generoida classmap ajamalla komentorivillä composer dump-autoload

18 Composer.json ja composer.lock 18 Composer.json määrittää paketin projektin riippuvuudeksi Composer.lock sitoo riippuvuuden tiettyyn versioon Kun uusi kehittäjä ajaa composer install, composer.lock varmistaa, että hän saa juuri saman version komponentista, vaikka uudempikin olisi tarjolla Tämä ehkäisee mahdollisia versioyhteensopivuusongelmia Composer update päivittää riippuvuudet uusimpiin versioihin Composer.lock luodaan uudestaan viittaamaan ajohetken uusimpaan versioon Lisää siis molemmat tiedostot versionhallintaan!

19 Autoload 19 käytössä Nyt voidaan poistaa bootstrap.php tiedostosta require:t ja korvata ne vendor/autoload.php:lla Kuvassa luokat jaoteltu nimiavaruuksiin Päänimenä geneerinen App Framework spesifi koodi App\Core -nimiavaruudessa

20 Composer packages & Symfony 20 Vaihdetaan aikaisempi Request luokka paljon kypsempään toteutukseen Symfony on PHP Framework, mutta myös kokoelma tarkkaan valittuja komponentteja, joita monet muut kirjastot hyödyntävät Halutaan lisätä symfonyn http-foundation paketti, joka määrittää Request luokan, joka tarjoaa paremman API:n PHP:n superglobaaleille ($_GET, $_POST, $_SERVER, ) Ajetaan komento composer require symfony/http-foundation Tämä lataa tarvittavat tiedostot vendor hakemistoon ja kirjoittaa composer.json tiedostoon sen projektin riippuvuudeksi Näin varmistetaan, että jokaisella kehittäjällä on samat paketit asennettuna Koska näitä ulkopuolisia paketteja ei kuulu sisällyttää projektin versionhallintaan

21 Vaihdetaan luokan toteutus toiseen 21 Muista composer dumpautoload Käytetään symfonyn Request luokkaa Luodaan $request objekti superglobaaleista (luettavuuden vuoksi. Todellisuudessa inline) Annetaan reitittimelle uuden luokan luoma pyyntö

22 Composer ja versionhallinta 22 Laitetaan versionhallintaan vain projektin oma koodi Ne komponentit, joita hyödynnetään, listataan composer.json tiedostossa Jos uusi kehittäjä liittyy projektiin, hän kloonaa repositoryn ja ajaa composer install saadakseen täsmälleen samat versiot vaadituista riippuvuuksista Riippuvuuskomponenteilla on omat repositorynsä, ne eivät kuulu tämän projektin versionhallintaan Riippuvuuskomponentteihin ei tästä syystä tehdä suoraan muutoksia Koska muuten uudempaan versioon siirtyminen ylikirjoittaisi tekemämme muutokset Muutokset toteutetaan esimerkiksi perimisen kautta

23 Kontrollerien refaktorointi ja reititys 23

24 Halutaan kontrollerit luokiksi 24 Nyt kontrolleri on vain pätkä koodia Halutaan refaktoroida se luokaksi, jolla on metodeja Halutaan reitittää pyyntö tiettyyn kontrolleriin ja tiettyyn metodiin Tiedostetaan, että voidaan tehdä lukupyyntö GET tai kirjoituspyyntö POST Esim. Lomake lähettää tallennettavat tiedot POST /todos Joka johtaa TodosController->save() metodiin Tätä metodia ei tarvitse, eikä saa kutsua luettavaksi, se vastaa vain POST pyyntöön GET /todos johtaa TodosController->index() metodiin RESTful routes

25 25 RESTful routes presentational_state_transfer Erityisen tärkeä toteutettaessa avoimia rajapintoja, koska rajapinnan hyödyntäjä voi olettaa sovitun reititysmallin Mutta luontevaa toteuttaa myös sisäisessä reitityksessä, koska tämä on yleisesti oletettu nimeämiskäytäntö TIETA A.S.

26 Miten monta tasoa on liikaa? 26

27 Reitit täytyy määritellä uudestaan 27 Sovitaan API: REITITIN->[METODIN NIMI]( polku, ); $router->get( /todos, ); $router->post( /todos, ); Muutetaan routes.php käyttämään tätä API:a

28 Reititintä täytyy 28 refaktoroida Jotta voimme ottaa huomioon pyynnön tyypin, muutetaan $routes taulukko assosiatiiviseksi tyypin mukaan $routes[ GET ][ /todos ] = TodosController@index ; Koska routes.php sisältää kutsuja, ladataan tiedosto Router luokan sisällä Router palauttaa luokan, sitä ei enää tarvitse ladata erikseen

29 Reittien 29 tallentaminen

30 30 Reitittäminen TIETA A.S.

31 31 Metodin kutsuminen Huomaa tuplakenoviiva Koska yksi kenoviiva toimii escape :na varatuille merkeille (\{), laitetaan kaksi \\ => \ Tästä syystä osa käyttää aina kaksinkertaista kenoviivaa, jolloin asiaa ei tarvitse miettiä TIETA A.S.

32 Kontrolleri 32 luokaksi Nyt voidaan jakaa toiminnallisuus kontrolleri-luokille Reititin päättää mitä luokkaa ja luokan metodia kutsutaan pyynnön polun ja tyypin perusteella

33 Reititin käytännössä 33

34 Resurssikontrolleriksi 34

35 Halutaan tallentaa tietoja järjestelmään Siirretään Request luokka DI containeriin App::bind('request', Request::createFromGlobals()); Lisätään POST reitti $router- >post( /todos, ); Lisätään TodosController luokkaan save() metodi Asetetaan lopuksi vastauksen header, joka pakottaa uudelleenohjauksen 35.htaccess:n kanssa voidaan ohjata suoraan /todos

36 Resurssin 36 lisääminen Lomake lähettää tyypillä POST polkuun /todos Päädytään siis tallennusmetodiin Kentän nimi vastaa parametria TIETA A.S.

37 Tietoa muokkaavat reitit ovat POST 37 reittejä HTTP tarjoaa verbit GET, POST, PUT/PATCH, DELETE, Nämä vastaavat hyvin Read, Create, Update ja Delete (CRUD) Mutta selain tällä hetkellä ymmärtää vain GET ja POST kutsuja Voidaan lisätä lomakkeelle piilokenttä method=delete Ohjelma voidaan laittaa reagoimaan samalla tavalla lomakkeen simuloituun DELETE -pyyntöön ja joltain muulta asiakkaalta tulevalle oikealle DELETE pyyntöön Usein kuitenkin toteutetaan myös POST /delete-item, $_POST[ id ] Tietoa muokkaavat reitit määritellään POST reiteiksi XSS haavoittuvuuksien välttämiseksi (tästä lisää seuraavalla luennolla) Nullipotent ja idempotent -toiminnot

38 Kielen ominaisuuksia - traits 38

39 Trait 39 Trait on joukko ominaisuuksia, joita voidaan liittää luokkaan Vertaa mixin Rubyssä Vaihtoehto perinnälle siinä tapauksessa, että luokilla ei ole luontevaa yhteistä yläluokkaa Koska kielessä ei ole tuke moniperinnälle Esimerkiksi kauppa ja auto. Näillä ei ole helppoa yhteistä yläluokkaa, mutta molemmilla on jokin sijainti ja molemmilla voisi olla metodi, joka muuttaa sijainnin katuosoitteeksi $car->getstreedaddrs() ja $shop->getstreetaddrs()

40 Trait -esimerkki 40 Trait tuo ominaisuuksia ja metodeja luokkiin, joihin se liitetään Metodia voidaan kutsua luokan instanssin kautta aivan kuin se olisi luokan oma metodi Trait mahdollistaa toistuvan toiminnallisuuden liittämisen eri luokkiin ilman perintää ja toistamatta samaa koodia useassa kohdassa Huomaa use sanan käyttö. Luokan ulkopuolella se viittaa nimiavaruuteen, luokan sisällä trait:in DRY Don t repeat yourself

41 Traits esimerkki 2 41 Halutaan, että aina kun tietomalliluokan tieto muuttuu, siitä kirjoitetaan muutostieto tietokantaan. Mutta sovitaan, että vain tiettyjen tietomalliluokkien muutokset ovat ilmoittamisen arvoisia, emme halua tietoa kaikista tietomalliluokista. Voidaan lisätä tietomalliluokkaan trait Loggable, joka tarjoaa toiminnallisuuden muutostietojen tallentamiseen. Tai halutaan, että joitain tietomalliluokkia voidaan hakea rajapinnan kautta JSON muodossa. Voidaan lisätä vain haluttuihin tietomalliluokkiin trait JsonSerializable.

42 Kielen ominaisuuksia anon. funktiot 42

43 Anonyymi funktio 43 On yleensä metodin callback funktio Esimerkiksi array_map käy läpi taulukon arvot ja palauttaa kunkin arvon funktion läpi ajettuna

44 Anonyymi funktio 44 Anonyymi funktio ei tiedä ulkopuolisesta maailmasta Tämä koodi ei toimi, koska muuttujaa $multiplier ei tunneta anonyymin funktion sisäisessä maailmassa

45 Jälleen use - avainsana 45 Lisäämällä anonyymiin funktioon use($var), voidaan tuoda sen sisäiseen todellisuuteen ulkopuolisia muuttujia Muuttujan arvo sulkeuman sisällä on pysyvästi se, mikä se oli kutsumisen hetkellä

46 Kielen ominaisuuksia - generaattori 46

47 Generaattorit 47 Normaalisti iteroitava entiteetti, vaikka taulukko, ladataan kokonaan muistiin Esimerkki: luodaan halutun kokoinen taulukko, joka täytetään juoksevilla numeroilla ja tulostetaan sitten jokaisen solun arvo

48 Generaattorit 48 Jos parametrina on 15, ohjelma useimmiten toimii Mutta jos parametrina on tarpeeksi suuri luku, lopulta palvelimen varaama muisti loppuu kesken Jos numeron sijaan käsiteltäisiin tiedoston rivejä, ongelma olisi todennäköisempi (siis jos emme tiedä tiedoston kokoa) Jos suoritukselle on varattu 1gb muistia ja tiedoston koko on 2gb Muistiin ei voida ladata enempää tietoa, kuin mitä sinne mahtuu Generaattori lukee muistiin vain yhden iteraation kerralla Mutta samalla iterointi on vain yhdensuuntainen, eikä iteraatioiden yli voi hyppiä, kuten normaaleilla iteroitavilla

49 yield 49 Yield palauttaa yhden iteraation kerralla, muistia varataan vain yhdelle Iterointia jatketaan viimeiseen yield:n asti tai siihen saakka, kunnes vastaan tulee return

50 Generaattori voidaan myös keskeyttää 50 Kesken iteroinnin voidaan syöttää arvo $generator- >send() ja ottaa se vastaan $injected = yield $i; Voisi olla hyödyllinen isoa CSV tiedostoa parsiessa Jos jokin ehto täyttyy, tiedostoa ei tarvitse käsitellä loppuun

51 Arkkitehtuurista ja riippuvuuksista 51

52 Spaghetti Coupling 52

53 OOP Coupling 53

54 SOLID 54 Purettu riippuvuus konkreettiseen toteutukseen Code to an interface Open to extension / closed for modification Dependency inversion Single responsibility Voidaan yksikkötestata vaihtamalla tietolähde Division of concerns

55 Kysymyksiä? 55

WWW-ohjelmointi ANTTI SAND TIETA12

WWW-ohjelmointi ANTTI SAND TIETA12 WWW-ohjelmointi ANTTI SAND TIETA12 2 MVC Model, View, Controller Model, View, Controller 3 Yleisesti käytetty malli ohjelman rakenteelle Kullakin osalla on melko hyvin rajattu vastuunsa Ohjaa suunnittelua

Lisätiedot

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmistojen mallintaminen. Luento 11, 7.12. Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,

Lisätiedot

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002

JReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002 JReleaser Yksikkötestaus ja JUnit Mikko Mäkelä 6.11.2002 Sisältö Johdanto yksikkötestaukseen JUnit yleisesti JUnit Framework API (TestCase, TestSuite) Testien suorittaminen eri työkaluilla Teknisiä käytäntöjä

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

WWW-ohjelmointi ANTTI SAND TIETA12

WWW-ohjelmointi ANTTI SAND TIETA12 WWW-ohjelmointi ANTTI SAND TIETA12 Funktio ja luokat 2 PHP on sekä funktionaalinen, että OO 3 Funktio debuggaukseen Var_dump() tulostaa muuttujan arvon Die() lopettaa ohjelman suorituksen Die(var_dump($var));

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

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...

Lisätiedot

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito Henri Kinnunen, Seppo Tompuri, Tero Malkki, Matti Heiskanen, Tommi Rönkönharju, Tuomas Valkeapää Sisällysluettelo 1. Alkusanat.2 2. Asennusohje..2 3.

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

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

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

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

Kanta PHR:n CapabilityStatement ja REST-API. Eeva Turkka

Kanta PHR:n CapabilityStatement ja REST-API. Eeva Turkka Kanta PHR:n CapabilityStatement ja REST-API Eeva Turkka PHR:n kaksi osaa: tietosisältö ja käyttöluvat Resurssipalvelin FHIR REST-rajapinnat CapabilityStatement kuvaa toiminnot Resurssisäilö Auktorisointipalvelin

Lisätiedot

Arkkitehtuuri. Ylätason sovellusarkkitehtuuri

Arkkitehtuuri. Ylätason sovellusarkkitehtuuri Arkkitehtuuri Termieditorin käyttö vaatii kirjautumisen. Peruskäyttäjälle myönnetään erikseen aineistokohtaisia luku- ja muokkausoikeuksia. Järjestelmän ylläpitäjä (admin) saa ylläpitää kaikkia aineistoja.

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

Nebula pilvi 9.0 saatavuusalueiden välinen verkkoliikenne

Nebula pilvi 9.0 saatavuusalueiden välinen verkkoliikenne Nebula pilvi 9.0 saatavuusalueiden välinen verkkoliikenne Sivu 2/9 1. Sisällysluettelo 2. Esipuhe 3 2.1. Saatavuusalueet 3 2.1.1. Taustaverkko missä instanssit ovat suoraan fyysisellä liitännällä kiinni

Lisätiedot

Kanta PHR:n CapabilityStatement ja REST-API. Eeva Turkka

Kanta PHR:n CapabilityStatement ja REST-API. Eeva Turkka Kanta PHR:n CapabilityStatement ja REST-API Eeva Turkka Omatietovaranto, pääelementit Sovellukset sosiaali- ja terveydenhuollon ammattilaisille Sovellukset kansalaisille FHIR rajapinnat Omatietovarannossa

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

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

Yksikkötestaus. import org.junit.test; public class LaskinTest public void testlaskimenluonti() { Laskin laskin = new Laskin(); } }

Yksikkötestaus. import org.junit.test; public class LaskinTest public void testlaskimenluonti() { Laskin laskin = new Laskin(); } } Yksikkötestauksella tarkoitetaan lähdekoodiin kuuluvien yksittäisten osien testaamista. Termi yksikkö viittaa ohjelman pienimpiin mahdollisiin testattaviin toiminnallisuuksiin, kuten olion tarjoamiin metodeihin.

Lisätiedot

Transkribuksen pikaopas

Transkribuksen pikaopas Transkribuksen pikaopas Transkribus on alusta, jolla voi puhtaaksikirjoittaa haluamaansa aineistoa ja automaattisesti tunnistaa käsinkirjoitettua tekstiä. Sitä käyttääkseen täytyy rekisteröityä. Tässä

Lisätiedot

Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita.

Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita. 1 2 Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita. 3 4 Region vastaa palvelun fyysistä sijaintipaikkaa (AWS

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat

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

Luento 5. Timo Savola. 28. huhtikuuta 2006

Luento 5. Timo Savola. 28. huhtikuuta 2006 UNIX-käyttöjärjestelmä Luento 5 Timo Savola 28. huhtikuuta 2006 Osa I Shell-ohjelmointi Ehtolause Lausekkeet suoritetaan jos ehtolausekkeen paluuarvo on 0 if ehtolauseke then lauseke

Lisätiedot

JWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari

JWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari JWT 2016 luento 11 to 21.4.2016 klo 14-15 Aulikki Hyrskykari PinniB 1097 1 Viime luennolla o AJAX ja JSON, harjoitustyön tehtävänanto, vierailuluento avoimesta datasta Tänään o APIt rajapinnoista yleisesti

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

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

edocker PUBLISH! -paketinhallinnan käyttöohje 9/2015

edocker PUBLISH! -paketinhallinnan käyttöohje 9/2015 edocker PUBLISH! -paketinhallinnan käyttöohje 9/2015 Uusien EDTPLIB- ja PDF -pakettien vienti ohjatulla toiminnolla...3 Tiedoston tarkistus...3 Kohdejulkaisun valinta... 4 Numeron tiedot... 5 Yhteenveto...6

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

Written by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36

Written by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36 !!!!! Relaatiotietokannat ovat vallanneet markkinat tietokantojen osalta. Flat file on jäänyt siinä kehityksessä jalkoihin. Mutta sillä on kuitenkin tiettyjä etuja, joten ei se ole täysin kuollut. Flat

Lisätiedot

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2 TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos TKT-3200 Tietokonetekniikka I Harjoitustyö 4: Cache, osa 2.. 2010 Ryhmä Nimi Op.num. 1 Valmistautuminen Cache-työn toisessa osassa

Lisätiedot

Pätevyyttä haettava oikeustulkkirekisterilautakunnalta. Edellytyksenä (lakiesityksestä lainaus):

Pätevyyttä haettava oikeustulkkirekisterilautakunnalta. Edellytyksenä (lakiesityksestä lainaus): Oikeustulkkirekisterin karkea speksi: Rekisteriin merkittävät tiedot: tulkin nimi henkilötunnus osoite Osoitetietojen lisäksi oikeustulkkirekisteriin voidaan tulkin pyynnöstä merkitä sähköpostiosoite,

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

Esimerkkiprojekti. Mallivastauksen löydät Wroxin www-sivuilta. Kenttä Tyyppi Max.pituus Rajoitukset/Kommentit

Esimerkkiprojekti. Mallivastauksen löydät Wroxin www-sivuilta. Kenttä Tyyppi Max.pituus Rajoitukset/Kommentit Liite E - Esimerkkiprojekti E Esimerkkiprojekti Olet lukenut koko kirjan. Olet sulattanut kaiken tekstin, Nyt on aika soveltaa oppimiasi uusia asioita pienen, mutta täydellisesti muotoiltuun, projektiin.

Lisätiedot

Versionhallintaa. Versionhallinnan käyttöönotto SAS ympäristössä

Versionhallintaa. Versionhallinnan käyttöönotto SAS ympäristössä Versionhallintaa Versionhallinnan käyttöönotto SAS ympäristössä Sisältö Mitä on versionhallinta Rakenteet ja niiden oikeudet Repository Browserin käyttäminen Hakemistorakenteen luominen Metadatan tallettaminen

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 6 Vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 6 Vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 6 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/

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

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

Ohjelmoinnin perusteet Y Python

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

Mainosankkuri.fi-palvelun käyttöohjeita

Mainosankkuri.fi-palvelun käyttöohjeita Mainosankkuri.fi-palvelun käyttöohjeita Sisällys 1. Johdanto... 1 2. Sisäänkirjautuminen... 1 3. Palvelussa navigointi... 2 4. Laitteet... 2 5. Sisällönhallinta... 4 6. Soittolistat... 7 7. Aikataulut...

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

Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola

Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola 26.8.2016 SISÄLLYSLUETTELO 1. Omat asetukset kuntoon (kaikkien tehtävä aluksi) sivut 3-5 2. Tärkeiden sivujen tilaaminen omiin linkkeihin sivut

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

Office 2013 - ohjelmiston asennusohje

Office 2013 - ohjelmiston asennusohje Office 2013 - ohjelmiston asennusohje Tämän ohjeen kuvakaappaukset on otettu asentaessa ohjelmistoa Windows 7 käyttöjärjestelmää käyttävään koneeseen. Näkymät voivat hieman poiketa, jos sinulla on Windows

Lisätiedot

Ohjelmoinnin perusteet Y Python

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

add_action( wordcamp_jkl, johdatus_filttereihin );

add_action( wordcamp_jkl, johdatus_filttereihin ); add_action( wordcamp_jkl, johdatus_filttereihin ); WordCamp JKL 9.2.2018 Mikko Saari Painava sana oy mikko@mikkosaari.fi @msaari Mitä filterit ja actionit ovat? Filter ja action ovat melkein samoja asioita:

Lisätiedot

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b Pythonin Kertaus Cse-a1130 Tietotekniikka Sovelluksissa Versio 0.01b Listat 1/2 esimerkkejä listan peruskäytöstä. > lista=['kala','kukko','kissa','koira'] ['kala','kukko','kissa','koira'] >lista.append('kana')

Lisätiedot

Sukupuu -ohjelma. Ossi Väre (013759021) Joni Virtanen (013760641)

Sukupuu -ohjelma. Ossi Väre (013759021) Joni Virtanen (013760641) Sukupuu -ohjelma Ossi Väre (013759021) Joni Virtanen (013760641) 7.11.2011 1 Johdanto Toteutimme C -kielellä sukupuuohjelman, johon käyttäjä voi lisätä ja poistaa henkilöitä ja määrittää henkilöiden välisiä

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

Tiedonsiirto- ja rajapintastandardit

Tiedonsiirto- ja rajapintastandardit Tiedonsiirto- ja rajapintastandardit Viitekehys Julkishallinnon perustietovarantojen rajapinnat (PERA) työryhmän tulokset valmiit syksyllä 2011 Määrittelee teknisen arkkitehtuuriratkaisun tietovarantojen

Lisätiedot

Pakkauksen kokoaminen

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

Käyttöohje HERE Maps. 1.0. painos FI

Käyttöohje HERE Maps. 1.0. painos FI Käyttöohje HERE Maps 1.0. painos FI HERE Maps HERE Maps näyttää lähellä olevat kohteet ja opastaa sinut perille. Voit etsiä kaupunkeja, katuja ja palveluja löytää perille tarkkojen reittiohjeiden avulla

Lisätiedot

HAME PostGIS-tietokanta

HAME PostGIS-tietokanta HAME PostGIS-tietokanta Harmonisoidut maakuntakaavat e-palveluiksi (HAME) VSL 10.12.2019 HAME-hankkeelle maakuntakaavoja varten rakennettu PostGIS-serveri sijaitsee Lounaistiedon AWS (Amazon Web Service)

Lisätiedot

KIITOS RICA OPTIMOINTIOHJELMAN VALITSEMISESTA

KIITOS RICA OPTIMOINTIOHJELMAN VALITSEMISESTA KIITOS RICA OPTIMOINTIOHJELMAN VALITSEMISESTA Asennusohjeiden sisältö 1. RICA optimointiohjelmoinnin periaate isoftloaderilla... 2 2. RICA isoftloader toimituspaketin sisältö... 3 3. isoftloader Sync-ohjelmiston

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702)

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri (TK081702) yleistyvät verkkopalveluissa Youtube Google... Avaavat pääsyn verkkopalvelun sisältöön. Rajapintojen tarjoamia tietolähteitä yhdistelemällä luodaan uusia palveluja,

Lisätiedot

Tekninen suunnitelma - StatbeatMOBILE

Tekninen suunnitelma - StatbeatMOBILE Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in

Lisätiedot

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14 Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2

Lisätiedot

Visma Liikkuvan työn ratkaisut

Visma Liikkuvan työn ratkaisut Visma Liikkuvan työn ratkaisut Päivitysohje Pääkäyttäjän opas Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin tässä oppaassa ja/tai ohjelmassa ilman eri ilmoitusta.

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

Ohje kehitysympäristöstä. Dokumentti: Ohje kehitysympäristöstä.doc Päiväys: 15.03.2005 Projekti : AgileElephant

Ohje kehitysympäristöstä. Dokumentti: Ohje kehitysympäristöstä.doc Päiväys: 15.03.2005 Projekti : AgileElephant AgilElephant Tekijä: Petri Kalsi Omistaja: ElectricSeven Dokumentti:.doc Päiväys: 15.03.2005 Aihe: Sivu 1 of 6 Dokumenttihistoria Muutoshistoria Revision Revision Yhteenveto muutoksista Revision tekijä

Lisätiedot

815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset

815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset 815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/

Lisätiedot

Adobe Digital Editions -ohjeet

Adobe Digital Editions -ohjeet Adobe Digital Editions -ohjeet Adobe Digital Editions on Adoben e-kirjojen lukemiseen tarkoitettu kevyt erillinen lukuohjelma, joka on ollut käytössä Adobe Reader -ohjelman 8-versiosta alkaen. Ohjelman

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

Visma Liikkuvan työn ratkaisut Päivitysohje. Pääkäyttäjän opas

Visma Liikkuvan työn ratkaisut Päivitysohje. Pääkäyttäjän opas Visma Liikkuvan työn ratkaisut Pääkäyttäjän opas Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai muutoksiin tässä oppaassa ja/tai ohjelmassa ilman eri ilmoitusta. Oppaan

Lisätiedot

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena Ohjelmointikielet ja -paradigmat 5op Markus Norrena Ko#tehtävä 4 Viimeistele "alkeellinen kuvagalleria". Käytännössä kaksi sivua Yksi jolla voi ladata kuvia palvelimelle (file upload) Toinen jolla ladattuja

Lisätiedot

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö Tekijät: Eemeli Honkonen Joni Metsälä Työ palautettu: SISÄLLYSLUETTELO: 1 SEMINAARITYÖN KUVAUS... 3 2 TIETOKANTA... 3 2.1 MITÄ TIETOKANNAT SITTEN OVAT?... 3

Lisätiedot

Bitnami WordPress - Asenna WordPress koneellesi. Jari Sarja

Bitnami WordPress - Asenna WordPress koneellesi. Jari Sarja WordPress - Asenna WordPress koneellesi Jari Sarja jari.sarja @otavanopisto.fi 2018 SISÄLLYSLUETTELO 1 Johdanto... 3 1.1 n Wordpress... 3 1.2 Edut ja haitat... 3 2 WordPressin Asennus bitnamilla...4 2.1

Lisätiedot

Ohjelmistojen testaus ja hallinta. Gradle

Ohjelmistojen testaus ja hallinta. Gradle Ohjelmistojen testaus ja hallinta Gradle Perinteiset koontityökalut Ant Maven 2 Maven XML-pohjaiset koontitiedostot (pom.xml) Pohjautuu käytäntöihin (vain poikkeukset käytännöistä kirjoitetaan koontitiedostoon)

Lisätiedot

erasmartcardkortinlukijaohjelmiston

erasmartcardkortinlukijaohjelmiston erasmartcardkortinlukijaohjelmiston asennusohje Sisällysluettelo 1. erasmartcard... 2 2. erasmartcard-ohjelmiston normaali asennus... 3 2.1. Ennen asennusta... 3 2.2. Asennus... 3 3. Muut asennustavat...

Lisätiedot

Mikäli olet saanut e-kirjan latauslinkin sähköpostilla, seuraa näitä ohjeita e-kirjan lataamisessa.

Mikäli olet saanut e-kirjan latauslinkin sähköpostilla, seuraa näitä ohjeita e-kirjan lataamisessa. E-kirjan latausohje Mikäli olet saanut e-kirjan latauslinkin sähköpostilla, seuraa näitä ohjeita e-kirjan lataamisessa. Pikaohjeet 1. Varmista että tietokoneellesi on asennettu Adobe Digital Editions ohjelma.

Lisätiedot

Johdatus ohjelmointiin

Johdatus ohjelmointiin Johdatus ohjelmointiin EXAM tentin liitetiedostojen lataaminen, käyttäminen ja palauttaminen Kerro mahdolliset puutteet tai parannusehdotukset: pietari.heino@tut.fi Tällä sivulla on selitetty lyhyesti

Lisätiedot

812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä

812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä 2016 IX Olioiden välisistä yhteyksistä Sisältö 1. Johdanto 2. Kytkentä 3. Koheesio 4. Näkyvyydestä 2 Johdanto n Ohjelmassa syntyy kytkentöjä olioiden välille Toivottuja ja epätoivottuja n Näkyvyys vaikuttaa

Lisätiedot

Tekninen suunnitelma - StatbeatMOBILE

Tekninen suunnitelma - StatbeatMOBILE Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in

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

Harjoitustyö 3 - Millosemeni

Harjoitustyö 3 - Millosemeni Harjoitustyö 3 - Millosemeni Tampereen kaupunki tarjoaa avoin data -sivuillaan Tampereen joukkoliikenteen aikataulut, reitit sekä rajapinnan joukkoliikenteen reaaliaikaiseen seurantaan. Näinpä erilaisille

Lisätiedot

C++11 Syntaksi. Jari-Pekka Voutilainen Jari-Pekka Voutilainen: C++11 Syntaksi

C++11 Syntaksi. Jari-Pekka Voutilainen Jari-Pekka Voutilainen: C++11 Syntaksi 1 C++11 Syntaksi Jari-Pekka Voutilainen 13.4.2012 2 Range-for Iteroi säiliön kaikki alkiot for-silmukassa. Säiliöltä vaaditaan begin- ja end-iteraattorit. Pätee kaikille C++11 STL-säiliöille, taulukoille,

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

WWW-ohjelmointi ANTTI SAND TIETA12

WWW-ohjelmointi ANTTI SAND TIETA12 WWW-ohjelmointi ANTTI SAND TIETA12 Palvelinohjelmoinnin perusteet 2 HTTP -protokolla 3 Asiakas lähettää pyynnön Palvelin lähettää vastauksen Request Response protocol Yksi transaktio = yksi pyyntö + yksi

Lisätiedot

MY STANDARD -OHJE. mystandard.hansaworld.com. Standard ERP Pilvipalvelu Sivu 1/6

MY STANDARD -OHJE. mystandard.hansaworld.com. Standard ERP Pilvipalvelu Sivu 1/6 MY STANDARD -OHJE mystandard.hansaworld.com Standard ERP Pilvipalvelu Sivu 1/6 KÄYTTÖÖNOTTO Mikäli Standard ERP -ohjelmistonne on HansaWorldin pilvipalvelimella (hostingissa), teidän on mahdollista hallinnoida

Lisätiedot

Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen

Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen Vaatimusluettelo versio 0.17 Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen Yleiset vaatimukset 1 Koodistopalvelujärjestelmä on selainkäyttöinen 2 Käyttöliittymän tulee

Lisätiedot

Digikoulu Pilviteknologiat - Tunti 1001: Tiedon varastointi Amazon Simple Storage Service (Amazon S3) palveluun

Digikoulu Pilviteknologiat - Tunti 1001: Tiedon varastointi Amazon Simple Storage Service (Amazon S3) palveluun Digikoulu Pilviteknologiat - Tunti 1001: Tiedon varastointi Amazon Simple Storage Service (Amazon S3) palveluun Omistaja: DigiCenterNS Versio: 1.0 Versiopvm: 30.07.2019 Kurssinimi: Tiedon varastointi Amazon

Lisätiedot

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY 1 WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY 10.4.2015 Lounea Oy Tehdaskatu 6, 24100 Salo Puh. 029 707 00 Y-tunnus 0139471-8 www.lounea.fi Asiakaspalvelu 0800 303 00 Yrityspalvelu 0800 303 01 Myymälät 0800 303

Lisätiedot

Gree Smart -sovelluksen (WiFi) asennus- ja käyttöohje: Hansol-sarjan ilmalämpöpumput WiFi-ominaisuuksilla

Gree Smart -sovelluksen (WiFi) asennus- ja käyttöohje: Hansol-sarjan ilmalämpöpumput WiFi-ominaisuuksilla 02/2016, ed. 5 KÄYTTÖOHJE Gree Smart -sovelluksen (WiFi) asennus- ja käyttöohje: Hansol-sarjan ilmalämpöpumput WiFi-ominaisuuksilla Maahantuoja: Tiilenlyöjänkuja 9 A 01720 Vantaa www.scanvarm.fi Kiitos

Lisätiedot

F-Secure KEY salasanojenhallintaohjelman käyttöönotto PC -laitteella

F-Secure KEY salasanojenhallintaohjelman käyttöönotto PC -laitteella F-Secure KEY salasanojenhallintaohjelman käyttöönotto PC -laitteella 1 F-Secure KEY F-Secure KEY on palvelu, joka tallentaa turvallisesti kaikki henkilökohtaiset tunnistetiedot, kuten salasanat ja maksukorttitiedot,

Lisätiedot

erasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi)

erasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi) erasmartcard-kortinlukijaohjelmiston asennusohje (mpollux jää toiseksi kortinlukijaohjelmistoksi) Sisällysluettelo 1 erasmartcard 3 2 erasmartcard-ohjelmiston normaali asennus 4 2.1 Ennen asennusta 4 2.2

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

INTINU13A6 Java sovellukset

INTINU13A6 Java sovellukset Johdanto Kurssin tavoitteena oli luoda tietokantaa käyttävä websovellus Java EE ohjelmointikielellä, sekä hyödyntää muun muassa servlettejä sekä JSP sivuja ja muita tekniikoita monipuolisesti. Webserverinä

Lisätiedot

SQL Buddy JAMK Labranet Wiki

SQL Buddy JAMK Labranet Wiki Page 1 of 9 SQL Buddy JAMK Labranet Wiki Sisällysluettelo Yleistä SQL Buddy:sta kotisivu :http://sqlbuddy.com/ SQL Buddy on kevyt hallintatyökalu MySQL-tietokannalle. Järjestelmävaatimukset Serverin vaatimukset

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

Projektityö: Mobiiliajopäiväkirja. Mikko Suomalainen

Projektityö: Mobiiliajopäiväkirja. Mikko Suomalainen Projektityö: Mobiiliajopäiväkirja Mikko Suomalainen 1. Määritelmä Mobiiliajopäiväkirja on kännyköille suunnattu ajopäiväkirja-sovellus. Sovelluksen pääperiaate on toimia automaattisena ajopäiväkirjana.

Lisätiedot

582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus 582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus Sisältö Mikä on web-sovellus? Selaimen rooli web-sovelluksessa Palvelimen rooli web-sovelluksessa Aineistopyynnöt Tiedon välittäminen

Lisätiedot

Testidatan generointi

Testidatan generointi Testidatan generointi Anu Ahonen Kevät 2008 Tämä työ on tehty Creative Commons -lisenssin alla Työn tarkasti 9.4.2008 Jouni Huotari (JAMK/IT) 1 SISÄLTÖ 1 TYÖN LÄHTÖKOHDAT JA TOTEUTUS...2 2 TESTIDATAN GENEROINTI

Lisätiedot

Pakkauksen kokoaminen

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

Ohjelmistotuotanto. Luento 9 23.4.2012

Ohjelmistotuotanto. Luento 9 23.4.2012 Ohjelmistotuotanto Luento 9 23.4.2012 Lisää suunnittelumalleja Olion rikastaminen dekoraattorilla Joskus eteen tulee tarve lisätä olioon jotain ekstraominaisuuksia, pitäen kuitenkin olio sellaisena että

Lisätiedot

Olio-ohjelmointi: Luokkien toteuttaminen. Jukka Juslin

Olio-ohjelmointi: Luokkien toteuttaminen. Jukka Juslin Olio-ohjelmointi: Luokkien toteuttaminen Jukka Juslin Luokkien kirjoittaminen Tähän mennessä on käytetty valmiiksi määritettyjä luokkia. Nyt opimme kirjoittamaan omia luokkia olioiden kuvaamiseksi Seuraavaksi

Lisätiedot

Ohjelmoinnin perusteet Y Python

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

Solteq Tekso v Versiopäivitysohje.

Solteq Tekso v Versiopäivitysohje. Solteq Tekso v. 5.0 Versiopäivitysohje www.solteq.com Sisällysluettelo TEKSON VERSIOPÄIVITYS v.5.0... 3 1.1 Ennen päivityksen ajoa 3 1.2 Käytössä olevan Tekson version tarkastaminen 3 1.3 Päivityksen lataus

Lisätiedot

Käyttäjähallintapalvelun REST-rajapinnat

Käyttäjähallintapalvelun REST-rajapinnat Käyttäjähallintapalvelun REST-rajapinnat Käyttäjähallintapalvelun REST-rajapinnat Käyttäjähallintapalvelun REST-rajapinnat Yleiset tiedot Resurssit GET /omattiedot GET /omattiedot/organisaatiohenkilo GET

Lisätiedot